summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrion Vibber <brion@status.net>2010-08-10 15:01:29 -0700
committerBrion Vibber <brion@status.net>2010-08-10 15:01:29 -0700
commit819d33210d298de74b64dc7ead79e9d9b223b12e (patch)
tree902d42087e633b96e12bef699f6c80e7342c9312
parent8f071b2818e8321ea910df612016175f65093402 (diff)
parent08fc6053ec55e911b842fd05dafc5e0c99c4e992 (diff)
Merge branch '0.9.x' into tinymce
-rw-r--r--EVENTS.txt229
-rw-r--r--README112
-rw-r--r--actions/all.php22
-rw-r--r--actions/allrss.php2
-rw-r--r--actions/apiaccountratelimitstatus.php2
-rw-r--r--actions/apiaccountupdatedeliverydevice.php3
-rw-r--r--actions/apiaccountupdateprofilecolors.php6
-rw-r--r--actions/apiaccountverifycredentials.php2
-rw-r--r--actions/apiblockcreate.php4
-rw-r--r--actions/apiblockdestroy.php4
-rw-r--r--actions/apidirectmessage.php3
-rw-r--r--actions/apidirectmessagenew.php8
-rw-r--r--actions/apifavoritecreate.php3
-rw-r--r--actions/apifavoritedestroy.php1
-rw-r--r--actions/apifriendshipscreate.php6
-rw-r--r--actions/apifriendshipsdestroy.php7
-rw-r--r--actions/apifriendshipsexists.php19
-rw-r--r--actions/apigroupcreate.php3
-rw-r--r--actions/apigroupismember.php3
-rw-r--r--actions/apigroupjoin.php3
-rw-r--r--actions/apigroupleave.php3
-rw-r--r--actions/apigrouplist.php23
-rw-r--r--actions/apigrouplistall.php13
-rw-r--r--actions/apigroupmembership.php3
-rw-r--r--actions/apigroupshow.php3
-rw-r--r--actions/apimediaupload.php6
-rw-r--r--actions/apisearchatom.php (renamed from actions/twitapisearchatom.php)32
-rw-r--r--actions/apisearchjson.php (renamed from actions/twitapisearchjson.php)7
-rw-r--r--actions/apistatusesdestroy.php69
-rw-r--r--actions/apistatusesretweet.php2
-rw-r--r--actions/apistatusesshow.php1
-rw-r--r--actions/apistatusesupdate.php123
-rw-r--r--actions/apistatusnetconfig.php4
-rw-r--r--actions/apisubscriptions.php3
-rw-r--r--actions/apitimelinefavorites.php13
-rw-r--r--actions/apitimelinefriends.php101
-rw-r--r--actions/apitimelinegroup.php11
-rw-r--r--actions/apitimelinehome.php4
-rw-r--r--actions/apitimelinementions.php3
-rw-r--r--actions/apitimelinepublic.php92
-rw-r--r--actions/apitimelineretweetedbyme.php2
-rw-r--r--actions/apitimelineretweetsofme.php2
-rw-r--r--actions/apitimelinetag.php3
-rw-r--r--actions/apitimelineuser.php3
-rw-r--r--actions/apitrends.php (renamed from actions/twitapitrends.php)8
-rw-r--r--actions/apiusershow.php2
-rw-r--r--actions/avatarsettings.php4
-rw-r--r--actions/block.php71
-rw-r--r--actions/bookmarklet.php3
-rw-r--r--actions/confirmaddress.php4
-rw-r--r--actions/deleteapplication.php10
-rw-r--r--actions/deletenotice.php16
-rw-r--r--actions/deleteuser.php24
-rw-r--r--actions/designadminpanel.php111
-rw-r--r--actions/disfavor.php2
-rw-r--r--actions/emailsettings.php75
-rw-r--r--actions/favor.php4
-rw-r--r--actions/favoritesrss.php2
-rw-r--r--actions/finishremotesubscribe.php4
-rw-r--r--actions/foaf.php104
-rw-r--r--actions/foafgroup.php5
-rw-r--r--actions/geocode.php1
-rw-r--r--actions/grantrole.php8
-rw-r--r--actions/groupblock.php56
-rw-r--r--actions/groupmembers.php45
-rw-r--r--actions/grouprss.php2
-rw-r--r--actions/imsettings.php61
-rw-r--r--actions/invite.php4
-rw-r--r--actions/login.php32
-rw-r--r--actions/makeadmin.php29
-rw-r--r--actions/microsummary.php2
-rw-r--r--actions/newnotice.php24
-rw-r--r--actions/nudge.php2
-rw-r--r--actions/oauthconnectionssettings.php4
-rw-r--r--actions/oembed.php17
-rw-r--r--actions/pathsadminpanel.php10
-rw-r--r--actions/peopletag.php42
-rw-r--r--actions/postnotice.php2
-rw-r--r--actions/public.php4
-rw-r--r--actions/publicxrds.php3
-rw-r--r--actions/register.php57
-rw-r--r--actions/remotesubscribe.php2
-rw-r--r--actions/repeat.php10
-rw-r--r--actions/replies.php8
-rw-r--r--actions/revokerole.php6
-rw-r--r--actions/sandbox.php4
-rw-r--r--actions/showfavorites.php16
-rw-r--r--actions/showgroup.php61
-rw-r--r--actions/shownotice.php4
-rw-r--r--actions/showstream.php4
-rw-r--r--actions/silence.php4
-rw-r--r--actions/siteadminpanel.php4
-rw-r--r--actions/sitenoticeadminpanel.php2
-rw-r--r--actions/smssettings.php74
-rw-r--r--actions/snapshotadminpanel.php8
-rw-r--r--actions/subscribers.php32
-rw-r--r--actions/subscriptions.php22
-rw-r--r--actions/tag.php15
-rw-r--r--actions/unsandbox.php4
-rw-r--r--actions/unsilence.php4
-rw-r--r--actions/unsubscribe.php2
-rw-r--r--actions/userauthorization.php2
-rw-r--r--actions/usergroups.php2
-rw-r--r--actions/userrss.php6
-rw-r--r--actions/version.php2
-rwxr-xr-x[-rw-r--r--]avatar/.gitignore0
-rwxr-xr-xclasses/Conversation.php3
-rw-r--r--classes/Fave.php14
-rw-r--r--classes/File.php51
-rw-r--r--classes/Foreign_user.php16
-rw-r--r--classes/Group_member.php3
-rw-r--r--classes/Inbox.php48
-rw-r--r--classes/Local_group.php1
-rw-r--r--classes/Login_token.php2
-rw-r--r--classes/Memcached_DataObject.php119
-rw-r--r--classes/Message.php3
-rw-r--r--classes/Notice.php584
-rw-r--r--classes/Profile.php148
-rw-r--r--classes/Queue_item.php13
-rw-r--r--classes/Remote_profile.php3
-rw-r--r--classes/Reply.php14
-rw-r--r--classes/Safe_DataObject.php95
-rw-r--r--classes/Status_network.php118
-rw-r--r--classes/Status_network_tag.php69
-rw-r--r--classes/Subscription.php23
-rw-r--r--classes/User.php32
-rw-r--r--classes/User_group.php20
-rw-r--r--classes/status_network.ini15
-rw-r--r--config.php.sample2
-rw-r--r--db/08to09_pg.sql39
-rw-r--r--db/notice_source.sql7
-rw-r--r--db/site.sql14
-rw-r--r--db/site_093to094.sql13
-rw-r--r--db/statusnet_pg.sql91
-rw-r--r--doc-src/bookmarklet2
-rw-r--r--doc-src/sms2
-rw-r--r--extlib/Auth/OpenID.php63
-rw-r--r--extlib/Auth/OpenID/AX.php23
-rw-r--r--extlib/Auth/OpenID/Association.php60
-rw-r--r--extlib/Auth/OpenID/BigMath.php31
-rw-r--r--extlib/Auth/OpenID/Consumer.php66
-rw-r--r--extlib/Auth/OpenID/CryptUtil.php5
-rw-r--r--extlib/Auth/OpenID/DatabaseConnection.php1
-rw-r--r--extlib/Auth/OpenID/DiffieHellman.php6
-rw-r--r--extlib/Auth/OpenID/Discover.php94
-rw-r--r--extlib/Auth/OpenID/DumbStore.php1
-rw-r--r--extlib/Auth/OpenID/Extension.php3
-rw-r--r--extlib/Auth/OpenID/FileStore.php6
-rw-r--r--extlib/Auth/OpenID/HMAC.php1
-rw-r--r--extlib/Auth/OpenID/Interface.php1
-rw-r--r--extlib/Auth/OpenID/KVForm.php5
-rw-r--r--extlib/Auth/OpenID/MemcachedStore.php1
-rw-r--r--extlib/Auth/OpenID/Message.php10
-rw-r--r--extlib/Auth/OpenID/MySQLStore.php1
-rw-r--r--extlib/Auth/OpenID/Nonce.php1
-rw-r--r--extlib/Auth/OpenID/PAPE.php11
-rw-r--r--extlib/Auth/OpenID/Parse.php37
-rw-r--r--extlib/Auth/OpenID/PostgreSQLStore.php1
-rw-r--r--extlib/Auth/OpenID/SQLStore.php18
-rw-r--r--extlib/Auth/OpenID/SQLiteStore.php1
-rw-r--r--extlib/Auth/OpenID/SReg.php14
-rw-r--r--extlib/Auth/OpenID/Server.php95
-rw-r--r--extlib/Auth/OpenID/ServerRequest.php1
-rw-r--r--extlib/Auth/OpenID/TrustRoot.php21
-rw-r--r--extlib/Auth/OpenID/URINorm.php2
-rw-r--r--extlib/Auth/Yadis/HTTPFetcher.php33
-rw-r--r--extlib/Auth/Yadis/Manager.php20
-rw-r--r--extlib/Auth/Yadis/Misc.php1
-rw-r--r--extlib/Auth/Yadis/ParanoidHTTPFetcher.php29
-rw-r--r--extlib/Auth/Yadis/ParseHTML.php1
-rw-r--r--extlib/Auth/Yadis/PlainHTTPFetcher.php3
-rw-r--r--extlib/Auth/Yadis/XML.php56
-rw-r--r--extlib/Auth/Yadis/XRDS.php16
-rw-r--r--extlib/Auth/Yadis/XRI.php4
-rw-r--r--extlib/Auth/Yadis/XRIRes.php6
-rw-r--r--extlib/Auth/Yadis/Yadis.php20
-rw-r--r--extlib/Net/IDNA.php100
-rw-r--r--extlib/Net/IDNA/php5.php3269
-rw-r--r--extlib/OAuth.php18
-rw-r--r--extlib/XMPPHP/XMPP.php4
-rwxr-xr-xextlib/libomb/base_url_xrds_mapper.php75
-rw-r--r--extlib/libomb/constants.php15
-rwxr-xr-xextlib/libomb/datastore.php330
-rw-r--r--extlib/libomb/helper.php145
-rwxr-xr-xextlib/libomb/invalidparameterexception.php44
-rwxr-xr-xextlib/libomb/invalidyadisexception.php26
-rwxr-xr-xextlib/libomb/notice.php472
-rwxr-xr-xextlib/libomb/omb_yadis_xrds.php349
-rwxr-xr-xextlib/libomb/plain_xrds_writer.php128
-rwxr-xr-xextlib/libomb/profile.php546
-rwxr-xr-xextlib/libomb/remoteserviceexception.php71
-rwxr-xr-xextlib/libomb/service_consumer.php815
-rwxr-xr-xextlib/libomb/service_provider.php798
-rwxr-xr-xextlib/libomb/unsupportedserviceexception.php25
-rwxr-xr-xextlib/libomb/xrds_mapper.php38
-rwxr-xr-xextlib/libomb/xrds_writer.php37
-rw-r--r--htaccess.sample9
-rw-r--r--index.php10
-rw-r--r--install.php1041
-rw-r--r--js/util.js169
-rw-r--r--lib/accountsettingsaction.php30
-rw-r--r--lib/action.php87
-rw-r--r--lib/activity.php52
-rw-r--r--lib/activitycontext.php9
-rw-r--r--lib/activityobject.php30
-rw-r--r--lib/activityutils.php40
-rw-r--r--lib/adminpanelaction.php14
-rw-r--r--lib/apiaction.php323
-rw-r--r--lib/apiauth.php67
-rw-r--r--lib/apibareauth.php3
-rw-r--r--lib/apiprivateauth.php1
-rw-r--r--lib/applicationeditform.php41
-rw-r--r--lib/applicationlist.php17
-rw-r--r--lib/atomgroupnoticefeed.php27
-rw-r--r--lib/atomnoticefeed.php33
-rw-r--r--lib/atomusernoticefeed.php8
-rw-r--r--lib/attachmentlist.php91
-rw-r--r--lib/authenticationplugin.php1
-rw-r--r--lib/authorizationplugin.php5
-rw-r--r--lib/avatarlink.php2
-rw-r--r--lib/command.php38
-rw-r--r--lib/common.php4
-rw-r--r--lib/dbqueuemanager.php4
-rw-r--r--lib/default.php24
-rw-r--r--lib/deluserqueuehandler.php10
-rw-r--r--lib/distribqueuehandler.php17
-rw-r--r--lib/htmloutputter.php1
-rw-r--r--lib/httpclient.php48
-rw-r--r--lib/installer.php585
-rw-r--r--lib/jabber.php179
-rw-r--r--lib/language.php35
-rw-r--r--lib/liberalstomp.php27
-rw-r--r--lib/mail.php79
-rw-r--r--lib/mailbox.php1
-rw-r--r--lib/mailhandler.php4
-rw-r--r--lib/mediafile.php56
-rw-r--r--lib/mysqlschema.php17
-rw-r--r--lib/noticeform.php4
-rw-r--r--lib/noticelist.php126
-rw-r--r--lib/pgsqlschema.php55
-rw-r--r--lib/ping.php10
-rw-r--r--lib/plugin.php1
-rw-r--r--lib/popularnoticesection.php2
-rw-r--r--lib/profileaction.php67
-rw-r--r--lib/profileformaction.php38
-rw-r--r--lib/profilelist.php24
-rw-r--r--lib/profileminilist.php46
-rw-r--r--lib/redirectingaction.php97
-rw-r--r--lib/router.php56
-rw-r--r--lib/rssaction.php10
-rw-r--r--lib/schema.php37
-rw-r--r--lib/servererroraction.php9
-rw-r--r--lib/statusnet.php15
-rw-r--r--lib/stompqueuemanager.php50
-rw-r--r--lib/subscriptionlist.php13
-rw-r--r--lib/theme.php82
-rw-r--r--lib/themeuploader.php311
-rw-r--r--lib/userprofile.php3
-rw-r--r--lib/util.php181
-rw-r--r--lib/xmppmanager.php4
-rw-r--r--lib/xrdsoutputter.php1
-rw-r--r--locale/README57
-rw-r--r--locale/af/LC_MESSAGES/statusnet.po6750
-rw-r--r--locale/ar/LC_MESSAGES/statusnet.po2525
-rw-r--r--locale/arz/LC_MESSAGES/statusnet.po2398
-rw-r--r--locale/bg/LC_MESSAGES/statusnet.po2518
-rw-r--r--locale/br/LC_MESSAGES/statusnet.po3125
-rw-r--r--locale/ca/LC_MESSAGES/statusnet.po4133
-rw-r--r--locale/cs/LC_MESSAGES/statusnet.po2387
-rw-r--r--locale/da/LC_MESSAGES/statusnet.po6737
-rw-r--r--locale/de/LC_MESSAGES/statusnet.po2654
-rw-r--r--locale/el/LC_MESSAGES/statusnet.po2417
-rw-r--r--locale/en/LC_MESSAGES/statusnet.po (renamed from locale/statusnet.po)0
-rw-r--r--locale/en_GB/LC_MESSAGES/statusnet.po2555
-rw-r--r--locale/es/LC_MESSAGES/statusnet.po3417
-rw-r--r--locale/fa/LC_MESSAGES/statusnet.po4187
-rw-r--r--locale/fi/LC_MESSAGES/statusnet.po2397
-rw-r--r--locale/fr/LC_MESSAGES/statusnet.po2462
-rw-r--r--locale/ga/LC_MESSAGES/statusnet.po2381
-rw-r--r--locale/gl/LC_MESSAGES/statusnet.po7178
-rw-r--r--locale/he/LC_MESSAGES/statusnet.po2384
-rw-r--r--locale/hsb/LC_MESSAGES/statusnet.po2950
-rw-r--r--locale/ia/LC_MESSAGES/statusnet.po2603
-rw-r--r--locale/is/LC_MESSAGES/statusnet.po2390
-rw-r--r--locale/it/LC_MESSAGES/statusnet.po2453
-rw-r--r--locale/ja/LC_MESSAGES/statusnet.po2416
-rw-r--r--locale/ko/LC_MESSAGES/statusnet.po2738
-rw-r--r--locale/mk/LC_MESSAGES/statusnet.po2711
-rw-r--r--locale/nb/LC_MESSAGES/statusnet.po3508
-rw-r--r--locale/nl/LC_MESSAGES/statusnet.po2460
-rw-r--r--locale/nn/LC_MESSAGES/statusnet.po2401
-rw-r--r--locale/pl/LC_MESSAGES/statusnet.po2452
-rw-r--r--locale/pt/LC_MESSAGES/statusnet.po2990
-rw-r--r--locale/pt_BR/LC_MESSAGES/statusnet.po2605
-rw-r--r--locale/ru/LC_MESSAGES/statusnet.po2514
-rw-r--r--locale/statusnet.pot6685
-rw-r--r--locale/sv/LC_MESSAGES/statusnet.po2507
-rw-r--r--locale/te/LC_MESSAGES/statusnet.po2894
-rw-r--r--locale/tr/LC_MESSAGES/statusnet.po2383
-rw-r--r--locale/uk/LC_MESSAGES/statusnet.po2576
-rw-r--r--locale/vi/LC_MESSAGES/statusnet.po2409
-rw-r--r--locale/zh_CN/LC_MESSAGES/statusnet.po2417
-rw-r--r--locale/zh_TW/LC_MESSAGES/statusnet.po2369
-rw-r--r--plugins/Adsense/AdsensePlugin.php48
-rw-r--r--plugins/Adsense/adsenseadminpanel.php223
-rw-r--r--plugins/AutoSandbox/AutoSandboxPlugin.php96
-rw-r--r--plugins/AutoSandbox/LICENSE21
-rw-r--r--plugins/AutoSandbox/README39
-rw-r--r--plugins/AutoSandbox/locale/AutoSandbox.pot21
-rw-r--r--plugins/Autocomplete/AutocompletePlugin.php15
-rw-r--r--plugins/Autocomplete/autocomplete.php1
-rw-r--r--plugins/Autocomplete/locale/Autocomplete.pot24
-rw-r--r--plugins/BitlyUrl/BitlyUrlPlugin.php2
-rw-r--r--plugins/BitlyUrl/locale/BitlyUrl.pot22
-rw-r--r--plugins/Blacklist/BlacklistPlugin.php91
-rw-r--r--plugins/Blacklist/Homepage_blacklist.php189
-rw-r--r--plugins/Blacklist/Nickname_blacklist.php180
-rw-r--r--plugins/Blacklist/blacklistadminpanel.php49
-rw-r--r--plugins/Blacklist/locale/Blacklist.pot54
-rw-r--r--plugins/CasAuthentication/CasAuthenticationPlugin.php2
-rw-r--r--plugins/CasAuthentication/locale/CasAuthentication.pot35
-rw-r--r--plugins/ClientSideShorten/ClientSideShortenPlugin.php79
-rw-r--r--plugins/ClientSideShorten/README6
-rw-r--r--plugins/ClientSideShorten/locale/ClientSideShorten.pot27
-rw-r--r--plugins/ClientSideShorten/shorten.js66
-rw-r--r--plugins/ClientSideShorten/shorten.php69
-rw-r--r--plugins/DirectionDetector/DirectionDetectorPlugin.php230
-rw-r--r--plugins/DirectionDetector/locale/DirectionDetector.pot21
-rw-r--r--plugins/DirectionDetector/locale/nl/LC_MESSAGES/DirectionDetector.po22
-rw-r--r--plugins/EmailAuthentication/EmailAuthenticationPlugin.php2
-rw-r--r--plugins/EmailAuthentication/locale/EmailAuthentication.pot23
-rw-r--r--plugins/Facebook/FBConnectAuth.php18
-rw-r--r--plugins/Facebook/FacebookPlugin.php2
-rw-r--r--plugins/Facebook/README10
-rw-r--r--plugins/Facebook/facebook/facebook.php74
-rwxr-xr-xplugins/Facebook/facebook/facebookapi_php5_restlib.php56
-rw-r--r--plugins/Facebook/facebooksettings.php21
-rw-r--r--plugins/Facebook/facebookutil.php276
-rw-r--r--plugins/Facebook/locale/Facebook.pot (renamed from plugins/Facebook/locale/Facebook.po)378
-rw-r--r--plugins/FirePHP/FirePHPPlugin.php12
-rw-r--r--plugins/FirePHP/locale/FirePHP.pot21
-rw-r--r--plugins/GeonamesPlugin.php35
-rw-r--r--plugins/Gravatar/GravatarPlugin.php17
-rw-r--r--plugins/Gravatar/locale/Gravatar.pot (renamed from plugins/Gravatar/locale/Gravatar.po)2
-rw-r--r--plugins/Imap/ImapPlugin.php4
-rw-r--r--plugins/Imap/imapmanager.php2
-rw-r--r--plugins/Imap/locale/Imap.pot27
-rw-r--r--plugins/InfiniteScroll/InfiniteScrollPlugin.php2
-rw-r--r--plugins/InfiniteScroll/locale/InfiniteScroll.pot25
-rw-r--r--plugins/LdapAuthentication/LdapAuthenticationPlugin.php288
-rw-r--r--plugins/LdapAuthentication/locale/LdapAuthentication.pot23
-rw-r--r--plugins/LdapAuthorization/LdapAuthorizationPlugin.php135
-rw-r--r--plugins/LdapAuthorization/locale/LdapAuthorization.pot23
-rw-r--r--plugins/LdapCommon/LdapCommon.php369
-rw-r--r--plugins/LdapCommon/MemcacheSchemaCache.php (renamed from plugins/LdapAuthentication/MemcacheSchemaCache.php)2
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2.php (renamed from extlib/Net/LDAP2.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/Entry.php (renamed from extlib/Net/LDAP2/Entry.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/Filter.php (renamed from extlib/Net/LDAP2/Filter.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/LDIF.php (renamed from extlib/Net/LDAP2/LDIF.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/RootDSE.php (renamed from extlib/Net/LDAP2/RootDSE.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/Schema.php (renamed from extlib/Net/LDAP2/Schema.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/SchemaCache.interface.php (renamed from extlib/Net/LDAP2/SchemaCache.interface.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/Search.php (renamed from extlib/Net/LDAP2/Search.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/SimpleFileSchemaCache.php (renamed from extlib/Net/LDAP2/SimpleFileSchemaCache.php)0
-rw-r--r--plugins/LdapCommon/extlib/Net/LDAP2/Util.php (renamed from extlib/Net/LDAP2/Util.php)0
-rw-r--r--plugins/LilUrl/LilUrlPlugin.php2
-rw-r--r--plugins/LilUrl/locale/LilUrl.pot22
-rw-r--r--plugins/Mapstraction/MapstractionPlugin.php6
-rw-r--r--plugins/Mapstraction/allmap.php1
-rw-r--r--plugins/Mapstraction/locale/Mapstraction.pot (renamed from plugins/Mapstraction/locale/Mapstraction.po)34
-rw-r--r--plugins/Mapstraction/map.php1
-rw-r--r--plugins/Mapstraction/usermap.js2
-rw-r--r--plugins/Mapstraction/usermap.php1
-rw-r--r--plugins/MemcachedPlugin.php8
-rw-r--r--plugins/Meteor/MeteorPlugin.php35
-rw-r--r--plugins/Minify/MinifyPlugin.php1
-rw-r--r--plugins/Minify/locale/Minify.pot23
-rw-r--r--plugins/MobileProfile/MobileProfilePlugin.php47
-rw-r--r--plugins/MobileProfile/locale/MobileProfile.pot21
-rw-r--r--plugins/MobileProfile/mp-screen.css6
-rw-r--r--plugins/OStatus/OStatusPlugin.php61
-rw-r--r--plugins/OStatus/README39
-rw-r--r--plugins/OStatus/actions/groupsalmon.php3
-rw-r--r--plugins/OStatus/actions/hostmeta.php3
-rw-r--r--plugins/OStatus/actions/ostatusgroup.php2
-rw-r--r--plugins/OStatus/actions/ostatussub.php14
-rw-r--r--plugins/OStatus/actions/usersalmon.php11
-rw-r--r--plugins/OStatus/actions/userxrd.php10
-rw-r--r--plugins/OStatus/classes/FeedSub.php62
-rw-r--r--plugins/OStatus/classes/HubSub.php51
-rw-r--r--plugins/OStatus/classes/Magicsig.php44
-rw-r--r--plugins/OStatus/classes/Ostatus_profile.php281
-rw-r--r--plugins/OStatus/extlib/Math/BigInteger.php8
-rw-r--r--plugins/OStatus/lib/discovery.php2
-rw-r--r--plugins/OStatus/lib/discoveryhints.php3
-rw-r--r--plugins/OStatus/lib/feeddiscovery.php12
-rw-r--r--plugins/OStatus/lib/hubprepqueuehandler.php87
-rw-r--r--plugins/OStatus/lib/linkheader.php2
-rw-r--r--plugins/OStatus/lib/magicenvelope.php57
-rw-r--r--plugins/OStatus/lib/ostatusqueuehandler.php31
-rw-r--r--plugins/OStatus/lib/salmon.php4
-rw-r--r--plugins/OStatus/lib/xrd.php103
-rw-r--r--plugins/OStatus/lib/xrdaction.php5
-rw-r--r--plugins/OStatus/locale/OStatus.pot (renamed from plugins/OStatus/locale/OStatus.po)319
-rw-r--r--plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po106
-rw-r--r--plugins/OStatus/scripts/fixup-shadow.php39
-rw-r--r--plugins/OStatus/scripts/resub-feed.php74
-rw-r--r--plugins/OStatus/scripts/update-profile.php147
-rw-r--r--plugins/OStatus/tests/FeedDiscoveryTest.php2
-rw-r--r--plugins/OStatus/tests/remote-tests.php555
-rw-r--r--plugins/OpenExternalLinkTarget/OpenExternalLinkTargetPlugin.php2
-rw-r--r--plugins/OpenExternalLinkTarget/locale/OpenExternalLinkTarget.pot21
-rw-r--r--plugins/OpenID/OpenIDPlugin.php441
-rw-r--r--plugins/OpenID/extlib/README6
-rw-r--r--plugins/OpenID/extlib/teams-extension.php175
-rw-r--r--plugins/OpenID/finishaddopenid.php27
-rw-r--r--plugins/OpenID/finishopenidlogin.php73
-rw-r--r--plugins/OpenID/locale/OpenID.pot (renamed from plugins/OpenID/locale/OpenID.po)388
-rw-r--r--plugins/OpenID/locale/nl/LC_MESSAGES/OpenID.po395
-rw-r--r--plugins/OpenID/openid.php115
-rw-r--r--plugins/OpenID/openidadminpanel.php280
-rw-r--r--plugins/OpenID/openidlogin.php59
-rw-r--r--plugins/OpenID/openidserver.php21
-rw-r--r--plugins/OpenID/openidsettings.php70
-rw-r--r--plugins/OpenID/openidtrust.php5
-rw-r--r--plugins/PostDebug/locale/PostDebug.pot21
-rw-r--r--plugins/PoweredByStatusNet/locale/PoweredByStatusNet.pot (renamed from plugins/PoweredByStatusNet/locale/PoweredByStatusNet.po)2
-rw-r--r--plugins/PtitUrl/PtitUrlPlugin.php2
-rw-r--r--plugins/PtitUrl/locale/PtitUrl.pot22
-rw-r--r--plugins/RSSCloud/RSSCloudPlugin.php22
-rw-r--r--plugins/RSSCloud/locale/RSSCloud.pot24
-rw-r--r--plugins/Realtime/README1
-rw-r--r--plugins/Realtime/RealtimePlugin.php42
-rw-r--r--plugins/Realtime/realtimeupdate.js6
-rw-r--r--plugins/Recaptcha/RecaptchaPlugin.php30
-rw-r--r--plugins/Recaptcha/locale/Recaptcha.pot23
-rw-r--r--plugins/RegisterThrottle/locale/RegisterThrottle.pot29
-rw-r--r--plugins/RequireValidatedEmail/README14
-rw-r--r--plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php55
-rw-r--r--plugins/RequireValidatedEmail/locale/RequireValidatedEmail.pot (renamed from plugins/RequireValidatedEmail/locale/RequireValidatedEmail.po)2
-rw-r--r--plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php2
-rw-r--r--plugins/ReverseUsernameAuthentication/locale/ReverseUsernameAuthentication.pot24
-rw-r--r--plugins/Sample/User_greeting_count.php19
-rw-r--r--plugins/Sample/locale/Sample.pot (renamed from plugins/Sample/locale/Sample.po)38
-rw-r--r--plugins/SimpleUrl/SimpleUrlPlugin.php2
-rw-r--r--plugins/SimpleUrl/locale/SimpleUrl.pot22
-rw-r--r--plugins/Sitemap/SitemapPlugin.php224
-rw-r--r--plugins/Sitemap/Sitemap_notice_count.php290
-rw-r--r--plugins/Sitemap/Sitemap_user_count.php286
-rw-r--r--plugins/Sitemap/noticesitemap.php137
-rw-r--r--plugins/Sitemap/scripts/updatecounts.php36
-rw-r--r--plugins/Sitemap/sitemapaction.php95
-rw-r--r--plugins/Sitemap/sitemapadminpanel.php205
-rw-r--r--plugins/Sitemap/sitemapindex.php128
-rw-r--r--plugins/Sitemap/usersitemap.php128
-rw-r--r--plugins/SpotifyPlugin.php113
-rw-r--r--plugins/SubMirror/SubMirrorPlugin.php168
-rw-r--r--plugins/SubMirror/actions/addmirror.php77
-rw-r--r--plugins/SubMirror/actions/basemirror.php169
-rw-r--r--plugins/SubMirror/actions/editmirror.php112
-rw-r--r--plugins/SubMirror/actions/mirrorsettings.php106
-rw-r--r--plugins/SubMirror/classes/SubMirror.php229
-rw-r--r--plugins/SubMirror/lib/addmirrorform.php141
-rw-r--r--plugins/SubMirror/lib/editmirrorform.php189
-rw-r--r--plugins/SubMirror/lib/mirrorqueuehandler.php45
-rw-r--r--plugins/TabFocus/TabFocusPlugin.php2
-rw-r--r--plugins/TabFocus/locale/TabFocus.pot24
-rw-r--r--plugins/TightUrl/TightUrlPlugin.php2
-rw-r--r--plugins/TightUrl/locale/TightUrl.pot22
-rw-r--r--plugins/TwitterBridge/TwitterBridgePlugin.php15
-rwxr-xr-xplugins/TwitterBridge/daemons/twitterstatusfetcher.php141
-rw-r--r--plugins/TwitterBridge/locale/TwitterBridge.pot (renamed from plugins/TwitterBridge/locale/TwitterBridge.po)93
-rw-r--r--plugins/TwitterBridge/twitter.php53
-rw-r--r--plugins/TwitterBridge/twitteradminpanel.php29
-rw-r--r--plugins/TwitterBridge/twitterauthorization.php18
-rw-r--r--plugins/TwitterBridge/twitterbasicauthclient.php15
-rw-r--r--plugins/TwitterBridge/twitteroauthclient.php17
-rw-r--r--plugins/UrlShortener/UrlShortenerPlugin.php1
-rw-r--r--plugins/UserFlag/clearflag.php2
-rw-r--r--plugins/UserFlag/flagprofile.php2
-rw-r--r--plugins/WikiHowProfile/README6
-rw-r--r--plugins/WikiHowProfile/WikiHowProfilePlugin.php196
-rw-r--r--scripts/apidocs.config1551
-rwxr-xr-xscripts/command.php15
-rw-r--r--scripts/commandline.inc4
-rwxr-xr-xscripts/docgen.php114
-rw-r--r--scripts/doxygen.tmpl1516
-rwxr-xr-xscripts/fixup_blocks.php76
-rwxr-xr-xscripts/fixup_deletions.php166
-rw-r--r--scripts/fixup_status_network.php37
-rw-r--r--scripts/importtwitteratom.php2
-rwxr-xr-xscripts/install_cli.php217
-rwxr-xr-xscripts/setconfig.php36
-rw-r--r--scripts/settag.php19
-rwxr-xr-xscripts/setup_status_network.sh6
-rwxr-xr-xscripts/showplugins.php38
-rwxr-xr-xscripts/strip_geo.php122
-rwxr-xr-xscripts/update_po_templates.php4
-rwxr-xr-xscripts/update_translations.php4
-rw-r--r--tests/ActivityGenerationTests.php592
-rw-r--r--tests/ActivityParseTests.php326
-rw-r--r--tests/JidValidateTest.php146
-rw-r--r--tests/MediaFileTest.php96
-rw-r--r--tests/UserFeedParseTest.php8
-rw-r--r--tests/sample-uploads/image.gifbin0 -> 35 bytes
-rw-r--r--tests/sample-uploads/image.jpegbin0 -> 306 bytes
-rw-r--r--tests/sample-uploads/image.jpgbin0 -> 306 bytes
-rw-r--r--tests/sample-uploads/image.pngbin0 -> 159 bytes
-rw-r--r--tests/sample-uploads/office.pdfbin0 -> 1162 bytes
-rw-r--r--tests/sample-uploads/presentation.odpbin0 -> 9330 bytes
-rw-r--r--tests/sample-uploads/presentation.otpbin0 -> 9359 bytes
-rw-r--r--tests/sample-uploads/presentation.potbin0 -> 71168 bytes
-rw-r--r--tests/sample-uploads/presentation.potmbin0 -> 5789 bytes
-rw-r--r--tests/sample-uploads/presentation.pptbin0 -> 71168 bytes
-rw-r--r--tests/sample-uploads/presentation.pptxbin0 -> 5790 bytes
-rw-r--r--tests/sample-uploads/spreadsheet.odsbin0 -> 6560 bytes
-rw-r--r--tests/sample-uploads/spreadsheet.otsbin0 -> 6575 bytes
-rw-r--r--tests/sample-uploads/spreadsheet.xlsbin0 -> 6656 bytes
-rw-r--r--tests/sample-uploads/spreadsheet.xlsxbin0 -> 6010 bytes
-rw-r--r--tests/sample-uploads/spreadsheet.xltbin0 -> 6144 bytes
-rw-r--r--tests/sample-uploads/wordproc.docbin0 -> 9216 bytes
-rw-r--r--tests/sample-uploads/wordproc.docxbin0 -> 3350 bytes
-rw-r--r--tests/sample-uploads/wordproc.odtbin0 -> 7641 bytes
-rw-r--r--tests/sample-uploads/wordproc.ottbin0 -> 7656 bytes
-rw-r--r--tests/sample-uploads/wordproc.rtf16
-rw-r--r--theme/base/css/display.css52
-rw-r--r--theme/base/css/print.css36
-rw-r--r--theme/base/css/thickbox.css163
-rw-r--r--theme/base/images/icons/icons-01.gifbin4080 -> 4120 bytes
-rw-r--r--theme/biz/css/base.css168
-rw-r--r--theme/biz/css/display.css50
-rw-r--r--theme/biz/logo.pngbin6389 -> 10107 bytes
-rw-r--r--theme/cloudy/css/display.css73
-rw-r--r--theme/cloudy/logo.pngbin6389 -> 10107 bytes
-rw-r--r--theme/default/css/display.css16
-rw-r--r--theme/h4ck3r/css/base.css281
-rw-r--r--theme/h4ck3r/css/display.css14
-rw-r--r--theme/h4ck3r/logo.pngbin6389 -> 10107 bytes
-rw-r--r--theme/identica/css/display.css16
-rw-r--r--theme/pigeonthoughts/css/base.css115
-rw-r--r--theme/pigeonthoughts/css/display.css26
541 files changed, 115225 insertions, 43050 deletions
diff --git a/EVENTS.txt b/EVENTS.txt
index 2da6f3da6..7784e7d42 100644
--- a/EVENTS.txt
+++ b/EVENTS.txt
@@ -141,7 +141,7 @@ StartLogout: Before logging out
EndLogout: After logging out
- $action: the logout action
-ArgsInitialized: After the argument array has been initialized
+ArgsInitialize: After the argument array has been initialized
- $args: associative array of arguments, can be modified
StartAddressData: Allows the site owner to provide additional information about themselves for contact (e.g., tagline, email, location)
@@ -818,3 +818,230 @@ EndDeleteUser: handling the post for deleting a user
- $action: action being shown
- $user: user being deleted
+StartActivityStart: starting the output for a notice activity <event>
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$attrs: <entry> attributes (mostly namespace declarations, if any)
+
+EndActivityStart: end the opening tag for an activity <event>
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $attrs: <entry> attributes (mostly namespace declarations, if any)
+
+StartActivitySource: before outputting the <source> element for a notice activity
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+
+EndActivitySource: after outputting the <source> element for a notice activity
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+
+StartActivityTitle: before outputting notice activity title
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$title: title of the notice, mutable
+
+EndActivityTitle: after outputting notice activity title
+- $notice: notice being output
+- &$xs: XMLStringer for output
+- $title: title of the notice
+
+StartActivityAuthor: before outputting atom author
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$atomAuthor: string for XML representing atom author
+
+EndActivityAuthor: after outputting atom author
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$atomAuthor: string for XML representing atom author
+
+StartActivityActor: before outputting activity actor element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$actor: string for XML representing activity actor
+
+EndActivityActor: after outputting activity actor element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$actor: string for XML representing activity actor
+
+StartActivityLink: before outputting activity HTML link element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$url: URL for activity HTML link element for a notice activity entry
+
+EndActivityLink: before outputting activity HTML link element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $url: URL for activity HTML link element for a notice activity entry
+
+StartActivityId: before outputting atom:id element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$id: atom:id (notice URI by default)
+
+EndActivityId: after outputting atom:id element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $id: atom:id (notice URI by default)
+
+StartActivityPublished: before outputting atom:published element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$published: atom:published value (notice created by default)
+
+EndActivityPublished: before outputting atom:published element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $published: atom:published value (notice created by default)
+
+StartActivityUpdated: before outputting atom:updated element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$updated: atom:updated value (same as atom:published by default)
+
+EndActivityUpdated: after outputting atom:updated element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $updated: atom:updated value (same as atom:published by default)
+
+StartActivityContent: before outputting atom:content element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$content: atom:content value (notice rendered HTML by default)
+
+EndActivityContent: after outputting atom:content element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $content: atom:content value (notice rendered HTML by default)
+
+StartActivityVerb: before outputting activity:verb element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$verb: activity:verb URI ('http://activitystrea.ms/schema/1.0/post' by default)
+
+EndActivityVerb: after outputting activity:verb element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $verb: activity:verb URI ('http://activitystrea.ms/schema/1.0/post' by default)
+
+StartActivityDefaultObjectType: before outputting activity:object-type element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$type: activity:object-type URI for default object ('http://activitystrea.ms/schema/1.0/note' by default)
+
+EndActivityDefaultObjectType: after outputting activity:verb element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $type: activity:object-type URI for default object ('http://activitystrea.ms/schema/1.0/note' by default)
+
+StartActivityObjects: before outputting activity:object elements for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$objects: array of ActivityObject objects to output (empty by default)
+
+EndActivityObjects: after outputting activity:object elements for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $objects: array of ActivityObject objects to output (empty by default)
+
+StartActivityNoticeInfo: before outputting statusnet:notice-info element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$noticeInfoAttr: array of attributes for notice info element
+
+EndActivityNoticeInfo: after outputting statusnet:notice-info element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $noticeInfoAttr: array of attributes for notice info element
+
+StartActivityInReplyTo: before outputting thr:in-reply-to element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$replyNotice: Notice object the main notice is in-reply-to
+
+EndActivityInReplyTo: after outputting thr:in-reply-to element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $replyNotice: Notice object the main notice is in-reply-to
+
+StartActivityConversation: before outputting ostatus:conversation link element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$conv: Conversation object
+
+EndActivityConversation: after outputting ostatus:conversation link element for a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $conv: Conversation object
+
+StartActivityAttentionProfiles: before outputting ostatus:attention link element for people in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$replyProfiles: array of profiles of people being replied to
+
+EndActivityAttentionProfiles: after outputting ostatus:attention link element for people in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $replyProfiles: array of Profile object of people being replied to
+
+StartActivityAttentionGroups: before outputting ostatus:attention link element for groups in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$groups: array of Group objects of groups being addressed
+
+EndActivityAttentionGroups: after outputting ostatus:attention link element for groups in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $groups: array of Group objects of groups being addressed
+
+StartActivityForward: before outputting ostatus:forward link element in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$repeat: Notice that was repeated
+
+EndActivityForward: after outputting ostatus:forward link element in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $repeat: Notice that was repeated
+
+StartActivityCategories: before outputting atom:category elements in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$tags: array of strings for tags on the notice (used for categories)
+
+EndActivityCategories: after outputting atom:category elements in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $tags: array of strings for tags on the notice (used for categories)
+
+StartActivityEnclosures: before outputting enclosure link elements in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$enclosures: array of enclosure objects (see File::getEnclosure() for details)
+
+EndActivityEnclosures: after outputting enclosure link elements in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $enclosures: array of enclosure objects (see File::getEnclosure() for details)
+
+StartActivityGeo: before outputting geo:rss element in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- &$lat: latitude
+- &$lon: longitude
+
+EndActivityGeo: after outputting geo:rss element in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+- $lat: latitude
+- $lon: longitude
+
+StartActivityEnd: before the closing </entry> in a notice activity entry (last chance for data!)
+- &$notice: notice being output
+- &$xs: XMLStringer for output
+
+EndActivityEnd: after the closing </entry> in a notice activity entry
+- &$notice: notice being output
+- &$xs: XMLStringer for output
diff --git a/README b/README
index c5adda177..9e59ccb44 100644
--- a/README
+++ b/README
@@ -2,8 +2,8 @@
README
------
-StatusNet 0.9.0 ("Stand")
-4 Mar 2010
+StatusNet 0.9.3 ("Half a World Away")
+29 June 2010
This is the README file for StatusNet, the Open Source microblogging
platform. It includes installation instructions, descriptions of
@@ -77,57 +77,27 @@ for additional terms.
New this version
================
-This is a major feature release since version 0.8.3, released Feb 1
-2010. It is the final release version of 0.9.0, replacing any beta
-versions.
+This is a minor bug and feature release since version 0.9.2 released on
+4 May 2010.
+
+For best compatibility with client software and site federation, and a lot of
+bug fixes, it is highly recommended that all public sites upgrade to the new
+version.
Notable changes this version:
-- Support for the new distributed status update standard OStatus
- <http://ostatus.org>, based on PubSubHubbub, Salmon, Webfinger,
- and Activity Streams.
-- Support for location using the Geolocation API. Notices are (optionally)
- marked with lat-long information with geo microformats, and can be shown
- on a map.
-- No fixed content size. Notice size is configurable, from 1 to
- unlimited number of characters. Default is still 140!
-- An authorization framework, allowing different levels of users.
-- A Web-based administration panel.
-- A moderation system that lets site moderators sandbox, silence,
- or delete uncooperative users.
-- A flag system that lets users flag profiles for moderator review.
-- Support for OAuth <http://oauth.net> authentication in the Twitter
- API.
-- User roles system that lets the owner of the site to assign
- administrator and moderator roles to other users.
-- A pluggable authentication system.
-- An authentication plugin for LDAP servers.
-- Many features that were core in 0.8.x are now plugins, such
- as OpenID, Twitter integration, Facebook integration
-- A much-improved offline processing system
-- In-browser "realtime" updates using a number of realtime
- servers (Meteor, Orbited, Cometd)
-- A plugin to provide an interface optimized for mobile browsers
-- Support for Facebook Connect
-- Support for logging in with a Twitter account
-- Vastly improved translation with additional languages and
- translation in plugins
-- Support for all-SSL instances
-- Core support for "repeats" (like Twitter's "retweets")
-- Pluggable caching system, with plugins for Memcached,
- APC, XCache, and a disk-based cache
-- Plugin to support RSSCloud
-- A framework for adding advertisements to a public site,
- and plugins for Google AdSense and OpenX server
-- Plugins to throttle excessive subscriptions and registrations.
-- A plugin to blacklist particular URLs or nicknames.
-
-There are also literally thousands of bugs fixed and minor features
-added. A full changelog is available at http://status.net/wiki/StatusNet_0.9.0.
-
-Under the covers, the software has a vastly improved plugin and
-extension mechanism that makes writing powerful and flexible additions
-to the core functionality much easier.
+- Enhanced API output to aid StatusNet-specific clients
+- Many updates to user interface translation from TranslateWiki
+- OStatus now works subscribing to SSL-protected sites by default
+- OpenID now works on PHP 5.3, supports closer site integration.
+- Numerous API and FOAF output fixes.
+- Fixes to Facebook integration for FB API behavior changes
+- PostgreSQL support updates
+- Initial version of a custom theme uploader (disabled by default)
+- LDAP auth plugins cleanup
+- Many other bugfixes
+
+A full changelog is available at http://status.net/wiki/StatusNet_0.9.3.
Prerequisites
=============
@@ -138,8 +108,8 @@ run correctly.
- PHP 5.2.3+. It may be possible to run this software on earlier
versions of PHP, but many of the functions used are only available
in PHP 5.2 or above. 5.2.6 or later is needed for XMPP background
- daemons on 64-bit platforms. PHP 5.3.x should work but is known
- to cause some failures for OpenID.
+ daemons on 64-bit platforms. PHP 5.3.x should work correctly in this
+ release, but problems with some plugins are possible.
- MySQL 5.x. The StatusNet database is stored, by default, in a MySQL
server. It has been primarily tested on 5.x servers, although it may
be possible to install on earlier (or later!) versions. The server
@@ -239,9 +209,9 @@ especially if you've previously installed PHP/MySQL packages.
1. Unpack the tarball you downloaded on your Web server. Usually a
command like this will work:
- tar zxf statusnet-0.9.0.tar.gz
+ tar zxf statusnet-0.9.2.tar.gz
- ...which will make a statusnet-0.9.0 subdirectory in your current
+ ...which will make a statusnet-0.9.2 subdirectory in your current
directory. (If you don't have shell access on your Web server, you
may have to unpack the tarball on your local computer and FTP the
files to the server.)
@@ -249,7 +219,7 @@ especially if you've previously installed PHP/MySQL packages.
2. Move the tarball to a directory of your choosing in your Web root
directory. Usually something like this will work:
- mv statusnet-0.9.0 /var/www/statusnet
+ mv statusnet-0.9.2 /var/www/statusnet
This will make your StatusNet instance available in the statusnet path of
your server, like "http://example.net/statusnet". "microblog" or
@@ -664,7 +634,7 @@ with this situation.
If you've been using StatusNet 0.7, 0.6, 0.5 or lower, or if you've
been tracking the "git" version of the software, you will probably
want to upgrade and keep your existing data. There is no automated
-upgrade procedure in StatusNet 0.9.0. Try these step-by-step
+upgrade procedure in StatusNet 0.9.2. Try these step-by-step
instructions; read to the end first before trying them.
0. Download StatusNet and set up all the prerequisites as if you were
@@ -685,7 +655,7 @@ instructions; read to the end first before trying them.
5. Once all writing processes to your site are turned off, make a
final backup of the Web directory and database.
6. Move your StatusNet directory to a backup spot, like "statusnet.bak".
-7. Unpack your StatusNet 0.9.0 tarball and move it to "statusnet" or
+7. Unpack your StatusNet 0.9.2 tarball and move it to "statusnet" or
wherever your code used to be.
8. Copy the config.php file and avatar directory from your old
directory to your new directory.
@@ -965,6 +935,26 @@ stomp_password: password for connecting to the stomp server; defaults
to null.
stomp_persistent: keep items across queue server restart, if enabled.
+ Under ActiveMQ, the server configuration determines if and how
+ persistent storage is actually saved.
+
+ If using a message queue server other than ActiveMQ, you may
+ need to disable this if it does not support persistence.
+
+stomp_transactions: use transactions to aid in error detection.
+ A broken transaction will be seen quickly, allowing a message
+ to be redelivered immediately if a daemon crashes.
+
+ If using a message queue server other than ActiveMQ, you may
+ need to disable this if it does not support transactions.
+
+stomp_acks: send acknowledgements to aid in flow control.
+ An acknowledgement of successful processing tells the server
+ we're ready for more and can help keep things moving smoothly.
+
+ This should *not* be turned off when running with ActiveMQ, but
+ if using another message queue server that does not support
+ acknowledgements you might need to disable this.
softlimit: an absolute or relative "soft memory limit"; daemons will
restart themselves gracefully when they find they've hit
@@ -993,6 +983,12 @@ max_retries: for stomp, drop messages after N failed attempts to process.
dead_letter_dir: for stomp, optional directory to dump data on failed
queue processing events after discarding them.
+stomp_no_transactions: for stomp, the server does not support transactions,
+ so do not try to user them. This is needed for http://www.morbidq.com/.
+
+stomp_no_acks: for stomp, the server does not support acknowledgements.
+ so do not try to user them. This is needed for http://www.morbidq.com/.
+
license
-------
@@ -1522,7 +1518,7 @@ repository (see below), and you get a compilation error ("unexpected
T_STRING") in the browser, check to see that you don't have any
conflicts in your code.
-If you upgraded to StatusNet 0.9.0 without reading the "Notice
+If you upgraded to StatusNet 0.9.2 without reading the "Notice
inboxes" section above, and all your users' 'Personal' tabs are empty,
read the "Notice inboxes" section above.
diff --git a/actions/all.php b/actions/all.php
index 8c22e6f5f..6c14d2f13 100644
--- a/actions/all.php
+++ b/actions/all.php
@@ -18,15 +18,19 @@
*
* @category Actions
* @package Actions
- * @author Evan Prodromou <evan@status.net>
- * @author Mike Cochrane <mikec@mikenz.geek.nz>
- * @author Robin Millette <millette@controlyourself.ca>
* @author Adrian Lang <mail@adrianlang.de>
- * @author Meitar Moscovitz <meitarm@gmail.com>
- * @author Sarven Capadisli <csarven@status.net>
+ * @author Brenda Wallace <shiny@cpan.org>
+ * @author Brion Vibber <brion@pobox.com>
* @author Craig Andrews <candrews@integralblue.com>
+ * @author Evan Prodromou <evan@status.net>
* @author Jeffery To <jeffery.to@gmail.com>
- * @author Zach Copley <zach@controlyourself.ca>
+ * @author Meitar Moscovitz <meitarm@gmail.com>
+ * @author Mike Cochrane <mikec@mikenz.geek.nz>
+ * @author Robin Millette <millette@status.net>
+ * @author Sarven Capadisli <csarven@status.net>
+ * @author Siebrand Mazeland <s.mazeland@xs4all.nl>
+ * @author Zach Copley <zach@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license GNU Affero General Public License http://www.gnu.org/licenses/
* @link http://status.net
*/
@@ -61,7 +65,7 @@ class AllAction extends ProfileAction
if ($this->page > 1 && $this->notice->N == 0) {
// TRANS: Server error when page not found (404)
- $this->serverError(_('No such page'), $code = 404);
+ $this->serverError(_('No such page.'), $code = 404);
}
return true;
@@ -139,10 +143,10 @@ class AllAction extends ProfileAction
$message .= _('Try subscribing to more people, [join a group](%%action.groups%%) or post something yourself.');
} else {
// TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
- $message .= sprintf(_('You can try to [nudge %1$s](../%2$s) from his profile or [post something to his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s).'), $this->user->nickname, $this->user->nickname, '@' . $this->user->nickname);
+ $message .= sprintf(_('You can try to [nudge %1$s](../%2$s) from their profile or [post something to them](%%%%action.newnotice%%%%?status_textarea=%3$s).'), $this->user->nickname, $this->user->nickname, '@' . $this->user->nickname);
}
} else {
- $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to his or her attention.'), $this->user->nickname);
+ $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to them.'), $this->user->nickname);
}
$this->elementStart('div', 'guide');
diff --git a/actions/allrss.php b/actions/allrss.php
index 01e737ad7..7df0b1ef7 100644
--- a/actions/allrss.php
+++ b/actions/allrss.php
@@ -112,10 +112,12 @@ class AllrssAction extends Rss10Action
$c = array('url' => common_local_url('allrss',
array('nickname' =>
$user->nickname)),
+ // TRANS: Message is used as link title. %s is a user nickname.
'title' => sprintf(_('%s and friends'), $user->nickname),
'link' => common_local_url('all',
array('nickname' =>
$user->nickname)),
+ // TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
'description' => sprintf(_('Updates from %1$s and friends on %2$s!'),
$user->nickname, common_config('site', 'name')));
return $c;
diff --git a/actions/apiaccountratelimitstatus.php b/actions/apiaccountratelimitstatus.php
index f19e315bf..e2dff2db9 100644
--- a/actions/apiaccountratelimitstatus.php
+++ b/actions/apiaccountratelimitstatus.php
@@ -21,8 +21,10 @@
*
* @category API
* @package StatusNet
+ * @author Brion Vibber <brion@pobox.com>
* @author Evan Prodromou <evan@status.net>
* @author Robin Millette <robin@millette.info>
+ * @author Siebrand Mazeland <s.mazeland@xs4all.nl>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
diff --git a/actions/apiaccountupdatedeliverydevice.php b/actions/apiaccountupdatedeliverydevice.php
index 684906fe9..295378aa6 100644
--- a/actions/apiaccountupdatedeliverydevice.php
+++ b/actions/apiaccountupdatedeliverydevice.php
@@ -21,6 +21,7 @@
*
* @category API
* @package StatusNet
+ * @author Siebrand Mazeland <s.mazeland@xs4all.nl>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
@@ -103,7 +104,7 @@ class ApiAccountUpdateDeliveryDeviceAction extends ApiAuthAction
$this->clientError(
_(
'You must specify a parameter named ' .
- '\'device\' with a value of one of: sms, im, none'
+ '\'device\' with a value of one of: sms, im, none.'
)
);
return;
diff --git a/actions/apiaccountupdateprofilecolors.php b/actions/apiaccountupdateprofilecolors.php
index 3cac82974..c666f9d75 100644
--- a/actions/apiaccountupdateprofilecolors.php
+++ b/actions/apiaccountupdateprofilecolors.php
@@ -22,7 +22,7 @@
* @category API
* @package StatusNet
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -131,7 +131,7 @@ class ApiAccountUpdateProfileColorsAction extends ApiAuthAction
try {
$this->setColors($design);
} catch (WebColorException $e) {
- $this->clientError($e->getMessage());
+ $this->clientError($e->getMessage(), 400, $this->format);
return false;
}
@@ -153,7 +153,7 @@ class ApiAccountUpdateProfileColorsAction extends ApiAuthAction
try {
$this->setColors($design);
} catch (WebColorException $e) {
- $this->clientError($e->getMessage());
+ $this->clientError($e->getMessage(), 400, $this->format);
return false;
}
diff --git a/actions/apiaccountverifycredentials.php b/actions/apiaccountverifycredentials.php
index ea61a3205..79416e9b2 100644
--- a/actions/apiaccountverifycredentials.php
+++ b/actions/apiaccountverifycredentials.php
@@ -75,7 +75,7 @@ class ApiAccountVerifyCredentialsAction extends ApiAuthAction
if ($this->format == 'xml') {
$this->initDocument('xml');
- $this->showTwitterXmlUser($twitter_user);
+ $this->showTwitterXmlUser($twitter_user, 'user', true);
$this->endDocument('xml');
} elseif ($this->format == 'json') {
$this->initDocument('json');
diff --git a/actions/apiblockcreate.php b/actions/apiblockcreate.php
index c26485f59..b355cd1c7 100644
--- a/actions/apiblockcreate.php
+++ b/actions/apiblockcreate.php
@@ -23,7 +23,7 @@
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -65,7 +65,7 @@ class ApiBlockCreateAction extends ApiAuthAction
parent::prepare($args);
$this->user = $this->auth_user;
- $this->other = $this->getTargetUser($this->arg('id'));
+ $this->other = $this->getTargetProfile($this->arg('id'));
return true;
}
diff --git a/actions/apiblockdestroy.php b/actions/apiblockdestroy.php
index 666f308f4..7ea201677 100644
--- a/actions/apiblockdestroy.php
+++ b/actions/apiblockdestroy.php
@@ -23,7 +23,7 @@
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -64,7 +64,7 @@ class ApiBlockDestroyAction extends ApiAuthAction
parent::prepare($args);
$this->user = $this->auth_user;
- $this->other = $this->getTargetUser($this->arg('id'));
+ $this->other = $this->getTargetProfile($this->arg('id'));
return true;
}
diff --git a/actions/apidirectmessage.php b/actions/apidirectmessage.php
index 53da9e0c6..7a0f46274 100644
--- a/actions/apidirectmessage.php
+++ b/actions/apidirectmessage.php
@@ -232,7 +232,8 @@ class ApiDirectMessageAction extends ApiAuthAction
function showXmlDirectMessages()
{
$this->initDocument('xml');
- $this->elementStart('direct-messages', array('type' => 'array'));
+ $this->elementStart('direct-messages', array('type' => 'array',
+ 'xmlns:statusnet' => 'http://status.net/schema/api/1/'));
foreach ($this->messages as $m) {
$dm_array = $this->directMessageArray($m);
diff --git a/actions/apidirectmessagenew.php b/actions/apidirectmessagenew.php
index b9ac92d77..65d065648 100644
--- a/actions/apidirectmessagenew.php
+++ b/actions/apidirectmessagenew.php
@@ -52,7 +52,6 @@ require_once INSTALLDIR . '/lib/apiauth.php';
class ApiDirectMessageNewAction extends ApiAuthAction
{
- var $source = null;
var $other = null;
var $content = null;
@@ -76,13 +75,6 @@ class ApiDirectMessageNewAction extends ApiAuthAction
return;
}
- $this->source = $this->trimmed('source'); // Not supported by Twitter.
-
- $reserved_sources = array('web', 'omb', 'mail', 'xmpp', 'api');
- if (empty($this->source) || in_array($this->source, $reserved_sources)) {
- $source = 'api';
- }
-
$this->content = $this->trimmed('text');
$this->user = $this->auth_user;
diff --git a/actions/apifavoritecreate.php b/actions/apifavoritecreate.php
index 3618f9401..0447a92ba 100644
--- a/actions/apifavoritecreate.php
+++ b/actions/apifavoritecreate.php
@@ -25,6 +25,7 @@
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -123,7 +124,7 @@ class ApiFavoriteCreateAction extends ApiAuthAction
return;
}
- $fave = Fave::addNew($this->user, $this->notice);
+ $fave = Fave::addNew($this->user->getProfile(), $this->notice);
if (empty($fave)) {
$this->clientError(
diff --git a/actions/apifavoritedestroy.php b/actions/apifavoritedestroy.php
index c4daf480e..9f2efdd00 100644
--- a/actions/apifavoritedestroy.php
+++ b/actions/apifavoritedestroy.php
@@ -25,6 +25,7 @@
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/actions/apifriendshipscreate.php b/actions/apifriendshipscreate.php
index 1de2cc32e..a7ec5b28a 100644
--- a/actions/apifriendshipscreate.php
+++ b/actions/apifriendshipscreate.php
@@ -24,7 +24,7 @@
* @author Dan Moore <dan@moore.cx>
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -67,7 +67,7 @@ class ApiFriendshipsCreateAction extends ApiAuthAction
parent::prepare($args);
$this->user = $this->auth_user;
- $this->other = $this->getTargetUser($id);
+ $this->other = $this->getTargetProfile($this->arg('id'));
return true;
}
@@ -106,7 +106,7 @@ class ApiFriendshipsCreateAction extends ApiAuthAction
if (empty($this->other)) {
$this->clientError(
- _('Could not follow user: User not found.'),
+ _('Could not follow user: profile not found.'),
403,
$this->format
);
diff --git a/actions/apifriendshipsdestroy.php b/actions/apifriendshipsdestroy.php
index d48a57756..551d01682 100644
--- a/actions/apifriendshipsdestroy.php
+++ b/actions/apifriendshipsdestroy.php
@@ -24,7 +24,7 @@
* @author Dan Moore <dan@moore.cx>
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -67,7 +67,7 @@ class ApiFriendshipsDestroyAction extends ApiAuthAction
parent::prepare($args);
$this->user = $this->auth_user;
- $this->other = $this->getTargetUser($id);
+ $this->other = $this->getTargetProfile($this->arg('id'));
return true;
}
@@ -125,8 +125,7 @@ class ApiFriendshipsDestroyAction extends ApiAuthAction
}
// throws an exception on error
- Subscription::cancel($this->user->getProfile(),
- $this->other->getProfile());
+ Subscription::cancel($this->user->getProfile(), $this->other);
$this->initDocument($this->format);
$this->showProfile($this->other, $this->format);
diff --git a/actions/apifriendshipsexists.php b/actions/apifriendshipsexists.php
index ca62b5f51..725178fd4 100644
--- a/actions/apifriendshipsexists.php
+++ b/actions/apifriendshipsexists.php
@@ -24,7 +24,7 @@
* @author Dan Moore <dan@moore.cx>
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -50,8 +50,8 @@ require_once INSTALLDIR . '/lib/apiprivateauth.php';
class ApiFriendshipsExistsAction extends ApiPrivateAuthAction
{
- var $user_a = null;
- var $user_b = null;
+ var $profile_a = null;
+ var $profile_b = null;
/**
* Take arguments for running
@@ -66,11 +66,8 @@ class ApiFriendshipsExistsAction extends ApiPrivateAuthAction
{
parent::prepare($args);
- $user_a_id = $this->trimmed('user_a');
- $user_b_id = $this->trimmed('user_b');
-
- $this->user_a = $this->getTargetUser($user_a_id);
- $this->user_b = $this->getTargetUser($user_b_id);
+ $this->profile_a = $this->getTargetProfile($this->trimmed('user_a'));
+ $this->profile_b = $this->getTargetProfile($this->trimmed('user_b'));
return true;
}
@@ -89,16 +86,16 @@ class ApiFriendshipsExistsAction extends ApiPrivateAuthAction
{
parent::handle($args);
- if (empty($this->user_a) || empty($this->user_b)) {
+ if (empty($this->profile_a) || empty($this->profile_b)) {
$this->clientError(
- _('Two user ids or screen_names must be supplied.'),
+ _('Two valid IDs or screen_names must be supplied.'),
400,
$this->format
);
return;
}
- $result = $this->user_a->isSubscribed($this->user_b);
+ $result = Subscription::exists($this->profile_a, $this->profile_b);
switch ($this->format) {
case 'xml':
diff --git a/actions/apigroupcreate.php b/actions/apigroupcreate.php
index 145806356..d216c15cd 100644
--- a/actions/apigroupcreate.php
+++ b/actions/apigroupcreate.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -263,7 +264,7 @@ class ApiGroupCreateAction extends ApiAuthAction
if (!$valid) {
$this->clientError(
- sprintf(_('Invalid alias: "%s"'), $alias),
+ sprintf(_('Invalid alias: "%s".'), $alias),
403,
$this->format
);
diff --git a/actions/apigroupismember.php b/actions/apigroupismember.php
index 97f843561..eaa4769f3 100644
--- a/actions/apigroupismember.php
+++ b/actions/apigroupismember.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -92,7 +93,7 @@ class ApiGroupIsMemberAction extends ApiBareAuthAction
}
if (empty($this->group)) {
- $this->clientError(_('Group not found!'), 404, $this->format);
+ $this->clientError(_('Group not found.'), 404, $this->format);
return false;
}
diff --git a/actions/apigroupjoin.php b/actions/apigroupjoin.php
index 374cf83df..5265ec629 100644
--- a/actions/apigroupjoin.php
+++ b/actions/apigroupjoin.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -101,7 +102,7 @@ class ApiGroupJoinAction extends ApiAuthAction
}
if (empty($this->group)) {
- $this->clientError(_('Group not found!'), 404, $this->format);
+ $this->clientError(_('Group not found.'), 404, $this->format);
return false;
}
diff --git a/actions/apigroupleave.php b/actions/apigroupleave.php
index 9848ece05..8c100d58a 100644
--- a/actions/apigroupleave.php
+++ b/actions/apigroupleave.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -101,7 +102,7 @@ class ApiGroupLeaveAction extends ApiAuthAction
}
if (empty($this->group)) {
- $this->clientError(_('Group not found!'), 404, $this->format);
+ $this->clientError(_('Group not found.'), 404, $this->format);
return false;
}
diff --git a/actions/apigrouplist.php b/actions/apigrouplist.php
index 98fdb0497..148c802f4 100644
--- a/actions/apigrouplist.php
+++ b/actions/apigrouplist.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -66,7 +67,13 @@ class ApiGroupListAction extends ApiBareAuthAction
{
parent::prepare($args);
- $this->user = $this->getTargetUser($id);
+ $this->user = $this->getTargetUser(null);
+
+ if (empty($this->user)) {
+ $this->clientError(_('No such user.'), 404, $this->format);
+ return false;
+ }
+
$this->groups = $this->getGroups();
return true;
@@ -86,12 +93,8 @@ class ApiGroupListAction extends ApiBareAuthAction
{
parent::handle($args);
- if (empty($this->user)) {
- $this->clientError(_('No such user.'), 404, $this->format);
- return;
- }
-
$sitename = common_config('site', 'name');
+ // TRANS: %s is a user name
$title = sprintf(_("%s's groups"), $this->user->nickname);
$taguribase = TagURI::base();
$id = "tag:$taguribase:Groups";
@@ -99,10 +102,12 @@ class ApiGroupListAction extends ApiBareAuthAction
'usergroups',
array('nickname' => $this->user->nickname)
);
+
$subtitle = sprintf(
- _("Groups %1$s is a member of on %2$s."),
- $this->user->nickname,
- $sitename
+ // TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+ _("%1\$s groups %2\$s is a member of."),
+ $sitename,
+ $this->user->nickname
);
switch($this->format) {
diff --git a/actions/apigrouplistall.php b/actions/apigrouplistall.php
index e1b54a832..a8317608d 100644
--- a/actions/apigrouplistall.php
+++ b/actions/apigrouplistall.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -66,7 +67,7 @@ class ApiGroupListAllAction extends ApiPrivateAuthAction
{
parent::prepare($args);
- $this->user = $this->getTargetUser($id);
+ $this->user = $this->getTargetUser(null);
$this->groups = $this->getGroups();
return true;
@@ -87,6 +88,7 @@ class ApiGroupListAllAction extends ApiPrivateAuthAction
parent::handle($args);
$sitename = common_config('site', 'name');
+ // TRANS: Message is used as a title. %s is a site name.
$title = sprintf(_("%s groups"), $sitename);
$taguribase = TagURI::base();
$id = "tag:$taguribase:Groups";
@@ -137,11 +139,18 @@ class ApiGroupListAllAction extends ApiPrivateAuthAction
$qry = 'SELECT user_group.* '.
'from user_group join local_group on user_group.id = local_group.group_id '.
'order by created desc ';
-
+ $offset = intval($this->page - 1) * intval($this->count);
+ $limit = intval($this->count);
+ if (common_config('db', 'type') == 'pgsql') {
+ $qry .= ' LIMIT ' . $limit . ' OFFSET ' . $offset;
+ } else {
+ $qry .= ' LIMIT ' . $offset . ', ' . $limit;
+ }
$group = new User_group();
$group->query($qry);
+ $groups = array();
while ($group->fetch()) {
$groups[] = clone($group);
}
diff --git a/actions/apigroupmembership.php b/actions/apigroupmembership.php
index 9f72b527c..ffd5c7c7d 100644
--- a/actions/apigroupmembership.php
+++ b/actions/apigroupmembership.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -88,7 +89,7 @@ class ApiGroupMembershipAction extends ApiPrivateAuthAction
parent::handle($args);
if (empty($this->group)) {
- $this->clientError(_('Group not found!'), 404, $this->format);
+ $this->clientError(_('Group not found.'), 404, $this->format);
return false;
}
diff --git a/actions/apigroupshow.php b/actions/apigroupshow.php
index 5745a81f4..2998e505e 100644
--- a/actions/apigroupshow.php
+++ b/actions/apigroupshow.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -79,7 +80,7 @@ class ApiGroupShowAction extends ApiPrivateAuthAction
common_redirect(common_local_url('ApiGroupShow', $args), 301);
} else {
$this->clientError(
- _('Group not found!'),
+ _('Group not found.'),
404,
$this->format
);
diff --git a/actions/apimediaupload.php b/actions/apimediaupload.php
index ec316edc8..7aa88c186 100644
--- a/actions/apimediaupload.php
+++ b/actions/apimediaupload.php
@@ -88,15 +88,15 @@ class ApiMediaUploadAction extends ApiAuthAction
try {
$upload = MediaFile::fromUpload('media', $this->auth_user);
- } catch (ClientException $ce) {
- $this->clientError($ce->getMessage());
+ } catch (Exception $e) {
+ $this->clientError($e->getMessage(), $e->getCode());
return;
}
if (isset($upload)) {
$this->showResponse($upload);
} else {
- $this->clientError('Upload failed.');
+ $this->clientError(_('Upload failed.'));
return;
}
}
diff --git a/actions/twitapisearchatom.php b/actions/apisearchatom.php
index 24aa619bd..60bb8b040 100644
--- a/actions/twitapisearchatom.php
+++ b/actions/apisearchatom.php
@@ -22,7 +22,7 @@
* @category Search
* @package StatusNet
* @author Zach Copley <zach@status.net>
- * @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2008-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/
*/
@@ -31,6 +31,8 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
+require_once INSTALLDIR.'/lib/apiprivateauth.php';
+
/**
* Action for outputting search results in Twitter compatible Atom
* format.
@@ -44,10 +46,10 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*
- * @see ApiAction
+ * @see ApiPrivateAuthAction
*/
-class TwitapisearchatomAction extends ApiAction
+class ApiSearchAtomAction extends ApiPrivateAuthAction
{
var $cnt;
@@ -96,8 +98,11 @@ class TwitapisearchatomAction extends ApiAction
function prepare($args)
{
+ common_debug("in apisearchatom prepare()");
+
parent::prepare($args);
+
$this->query = $this->trimmed('q');
$this->lang = $this->trimmed('lang');
$this->rpp = $this->trimmed('rpp');
@@ -138,6 +143,7 @@ class TwitapisearchatomAction extends ApiAction
function handle($args)
{
parent::handle($args);
+ common_debug("In apisearchatom handle()");
$this->showAtom();
}
@@ -342,10 +348,24 @@ class TwitapisearchatomAction extends ApiAction
'rel' => 'related',
'href' => $profile->avatarUrl()));
- // TODO: Here is where we'd put in a link to an atom feed for threads
+ // @todo: Here is where we'd put in a link to an atom feed for threads
+
+ $source = null;
+
+ $ns = $notice->getSource();
+ if ($ns) {
+ if (!empty($ns->name) && !empty($ns->url)) {
+ $source = '<a href="'
+ . htmlspecialchars($ns->url)
+ . '" rel="nofollow">'
+ . htmlspecialchars($ns->name)
+ . '</a>';
+ } else {
+ $source = $ns->code;
+ }
+ }
- $this->element("twitter:source", null,
- htmlentities($this->sourceLink($notice->source)));
+ $this->element("twitter:source", null, $source);
$this->elementStart('author');
diff --git a/actions/twitapisearchjson.php b/actions/apisearchjson.php
index b5c006aa7..e44634684 100644
--- a/actions/twitapisearchjson.php
+++ b/actions/apisearchjson.php
@@ -22,7 +22,7 @@
* @category Search
* @package StatusNet
* @author Zach Copley <zach@status.net>
- * @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2008-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/
*/
@@ -31,6 +31,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
+require_once INSTALLDIR.'/lib/apiprivateauth.php';
require_once INSTALLDIR.'/lib/jsonsearchresultslist.php';
/**
@@ -44,7 +45,7 @@ require_once INSTALLDIR.'/lib/jsonsearchresultslist.php';
* @see ApiAction
*/
-class TwitapisearchjsonAction extends ApiAction
+class ApiSearchJSONAction extends ApiPrivateAuthAction
{
var $query;
var $lang;
@@ -64,6 +65,8 @@ class TwitapisearchjsonAction extends ApiAction
function prepare($args)
{
+ common_debug("apisearchjson prepare()");
+
parent::prepare($args);
$this->query = $this->trimmed('q');
diff --git a/actions/apistatusesdestroy.php b/actions/apistatusesdestroy.php
index f7d52f020..0dfeb4812 100644
--- a/actions/apistatusesdestroy.php
+++ b/actions/apistatusesdestroy.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -57,7 +58,7 @@ require_once INSTALLDIR . '/lib/apiauth.php';
class ApiStatusesDestroyAction extends ApiAuthAction
{
- var $status = null;
+ var $status = null;
/**
* Take arguments for running
@@ -99,39 +100,43 @@ class ApiStatusesDestroyAction extends ApiAuthAction
parent::handle($args);
if (!in_array($this->format, array('xml', 'json'))) {
- $this->clientError(_('API method not found.'), $code = 404);
- return;
+ $this->clientError(
+ _('API method not found.'),
+ 404
+ );
+ return;
}
- if (!in_array($_SERVER['REQUEST_METHOD'], array('POST', 'DELETE'))) {
- $this->clientError(_('This method requires a POST or DELETE.'),
- 400, $this->format);
- return;
- }
-
- if (empty($this->notice)) {
- $this->clientError(_('No status found with that ID.'),
- 404, $this->format);
- return;
- }
-
- if ($this->user->id == $this->notice->profile_id) {
- $replies = new Reply;
- $replies->get('notice_id', $this->notice_id);
- $replies->delete();
- $this->notice->delete();
-
- if ($this->format == 'xml') {
- $this->showSingleXmlStatus($this->notice);
- } elseif ($this->format == 'json') {
- $this->show_single_json_status($this->notice);
- }
- } else {
- $this->clientError(_('You may not delete another user\'s status.'),
- 403, $this->format);
- }
-
- $this->showNotice();
+ if (!in_array($_SERVER['REQUEST_METHOD'], array('POST', 'DELETE'))) {
+ $this->clientError(
+ _('This method requires a POST or DELETE.'),
+ 400,
+ $this->format
+ );
+ return;
+ }
+
+ if (empty($this->notice)) {
+ $this->clientError(
+ _('No status found with that ID.'),
+ 404, $this->format
+ );
+ return;
+ }
+
+ if ($this->user->id == $this->notice->profile_id) {
+ $replies = new Reply;
+ $replies->get('notice_id', $this->notice_id);
+ $replies->delete();
+ $this->notice->delete();
+ $this->showNotice();
+ } else {
+ $this->clientError(
+ _('You may not delete another user\'s status.'),
+ 403,
+ $this->format
+ );
+ }
}
/**
diff --git a/actions/apistatusesretweet.php b/actions/apistatusesretweet.php
index 128c881e2..9aa337485 100644
--- a/actions/apistatusesretweet.php
+++ b/actions/apistatusesretweet.php
@@ -79,7 +79,7 @@ class ApiStatusesRetweetAction extends ApiAuthAction
$this->user = $this->auth_user;
- if ($this->user->id == $notice->profile_id) {
+ if ($this->user->id == $this->original->profile_id) {
$this->clientError(_('Cannot repeat your own notice.'),
400, $this->format);
return false;
diff --git a/actions/apistatusesshow.php b/actions/apistatusesshow.php
index 0315d2953..476820a43 100644
--- a/actions/apistatusesshow.php
+++ b/actions/apistatusesshow.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/actions/apistatusesupdate.php b/actions/apistatusesupdate.php
index 1956c8586..fa3f611c0 100644
--- a/actions/apistatusesupdate.php
+++ b/actions/apistatusesupdate.php
@@ -29,10 +29,102 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
+/* External API usage documentation. Please update when you change how this method works. */
+
+/*! @page statusesupdate statuses/update
+
+ @section Description
+ Updates the authenticating user's status. Requires the status parameter specified below.
+ Request must be a POST.
+
+ @par URL pattern
+ /api/statuses/update.:format
+
+ @par Formats (:format)
+ xml, json
+
+ @par HTTP Method(s)
+ POST
+
+ @par Requires Authentication
+ Yes
+
+ @param status (Required) The URL-encoded text of the status update.
+ @param source (Optional) The source of the status.
+ @param in_reply_to_status_id (Optional) The ID of an existing status that the update is in reply to.
+ @param lat (Optional) The latitude the status refers to.
+ @param long (Optional) The longitude the status refers to.
+ @param media (Optional) a media upload, such as an image or movie file.
+
+ @sa @ref authentication
+ @sa @ref apiroot
+
+ @subsection usagenotes Usage notes
+
+ @li The URL pattern is relative to the @ref apiroot.
+ @li If the @e source parameter is not supplied the source of the status will default to 'api'.
+ @li The XML response uses <a href="http://georss.org/Main_Page">GeoRSS</a>
+ to encode the latitude and longitude (see example response below <georss:point>).
+ @li Data uploaded via the @e media parameter should be multipart/form-data encoded.
+
+ @subsection exampleusage Example usage
+
+ @verbatim
+ curl -u username:password http://example.com/api/statuses/update.xml -d status='Howdy!' -d lat='30.468' -d long='-94.743'
+ @endverbatim
+
+ @subsection exampleresponse Example response
+
+ @verbatim
+ <?xml version="1.0" encoding="UTF-8"?>
+ <status>
+ <text>Howdy!</text>
+ <truncated>false</truncated>
+ <created_at>Tue Mar 30 23:28:05 +0000 2010</created_at>
+ <in_reply_to_status_id/>
+ <source>api</source>
+ <id>26668724</id>
+ <in_reply_to_user_id/>
+ <in_reply_to_screen_name/>
+ <geo xmlns:georss="http://www.georss.org/georss">
+ <georss:point>30.468 -94.743</georss:point>
+ </geo>
+ <favorited>false</favorited>
+ <user>
+ <id>25803</id>
+ <name>Jed Sanders</name>
+ <screen_name>jedsanders</screen_name>
+ <location>Hoop and Holler, Texas</location>
+ <description>I like to think of myself as America's Favorite.</description>
+ <profile_image_url>http://avatar.example.com/25803-48-20080924200604.png</profile_image_url>
+ <url>http://jedsanders.net</url>
+ <protected>false</protected>
+ <followers_count>5</followers_count>
+ <profile_background_color/>
+ <profile_text_color/>
+ <profile_link_color/>
+ <profile_sidebar_fill_color/>
+ <profile_sidebar_border_color/>
+ <friends_count>2</friends_count>
+ <created_at>Wed Sep 24 20:04:00 +0000 2008</created_at>
+ <favourites_count>0</favourites_count>
+ <utc_offset>0</utc_offset>
+ <time_zone>UTC</time_zone>
+ <profile_background_image_url/>
+ <profile_background_tile>false</profile_background_tile>
+ <statuses_count>70</statuses_count>
+ <following>true</following>
+ <notifications>true</notifications>
+ </user>
+ </status>
+ @endverbatim
+*/
+
if (!defined('STATUSNET')) {
exit(1);
}
@@ -64,8 +156,6 @@ class ApiStatusesUpdateAction extends ApiAuthAction
var $lat = null;
var $lon = null;
- static $reserved_sources = array('web', 'omb', 'mail', 'xmpp', 'api');
-
/**
* Take arguments for running
*
@@ -80,19 +170,9 @@ class ApiStatusesUpdateAction extends ApiAuthAction
parent::prepare($args);
$this->status = $this->trimmed('status');
- $this->source = $this->trimmed('source');
$this->lat = $this->trimmed('lat');
$this->lon = $this->trimmed('long');
- // try to set the source attr from OAuth app
- if (empty($this->source)) {
- $this->source = $this->oauth_source;
- }
-
- if (empty($this->source) || in_array($this->source, self::$reserved_sources)) {
- $this->source = 'api';
- }
-
$this->in_reply_to_status_id
= intval($this->trimmed('in_reply_to_status_id'));
@@ -116,7 +196,8 @@ class ApiStatusesUpdateAction extends ApiAuthAction
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
$this->clientError(
_('This method requires a POST.'),
- 400, $this->format
+ 400,
+ $this->format
);
return;
}
@@ -137,7 +218,7 @@ class ApiStatusesUpdateAction extends ApiAuthAction
if (empty($this->status)) {
$this->clientError(
- 'Client must provide a \'status\' parameter with a value.',
+ _('Client must provide a \'status\' parameter with a value.'),
400,
$this->format
);
@@ -199,7 +280,7 @@ class ApiStatusesUpdateAction extends ApiAuthAction
$reply_to = $this->in_reply_to_status_id;
} else {
$this->clientError(
- _('Not found'),
+ _('Not found.'),
$code = 404,
$this->format
);
@@ -211,8 +292,8 @@ class ApiStatusesUpdateAction extends ApiAuthAction
try {
$upload = MediaFile::fromUpload('media', $this->auth_user);
- } catch (ClientException $ce) {
- $this->clientError($ce->getMessage());
+ } catch (Exception $e) {
+ $this->clientError($e->getMessage(), $e->getCode(), $this->format);
return;
}
@@ -225,7 +306,11 @@ class ApiStatusesUpdateAction extends ApiAuthAction
'Max notice size is %d chars, ' .
'including attachment URL.'
);
- $this->clientError(sprintf($msg, Notice::maxContent()));
+ $this->clientError(
+ sprintf($msg, Notice::maxContent()),
+ 400,
+ $this->format
+ );
}
}
@@ -252,7 +337,7 @@ class ApiStatusesUpdateAction extends ApiAuthAction
$options
);
} catch (Exception $e) {
- $this->clientError($e->getMessage());
+ $this->clientError($e->getMessage(), $e->getCode(), $this->format);
return;
}
diff --git a/actions/apistatusnetconfig.php b/actions/apistatusnetconfig.php
index 66b23c02d..76d37ea97 100644
--- a/actions/apistatusnetconfig.php
+++ b/actions/apistatusnetconfig.php
@@ -103,9 +103,9 @@ class ApiStatusnetConfigAction extends ApiAction
$value = common_config($section, $setting);
if (is_array($value)) {
$value = implode(',', $value);
- } else if ($value === false) {
+ } else if ($value === false || $value == '0') {
$value = 'false';
- } else if ($value === true) {
+ } else if ($value === true || $value == '1') {
$value = 'true';
}
diff --git a/actions/apisubscriptions.php b/actions/apisubscriptions.php
index 0ba324057..63d65f289 100644
--- a/actions/apisubscriptions.php
+++ b/actions/apisubscriptions.php
@@ -206,7 +206,8 @@ class ApiSubscriptionsAction extends ApiBareAuthAction
{
switch ($this->format) {
case 'xml':
- $this->elementStart('users', array('type' => 'array'));
+ $this->elementStart('users', array('type' => 'array',
+ 'xmlns:statusnet' => 'http://status.net/schema/api/1/'));
foreach ($this->profiles as $profile) {
$this->showProfile(
$profile,
diff --git a/actions/apitimelinefavorites.php b/actions/apitimelinefavorites.php
index 8cb2e808d..7228960c0 100644
--- a/actions/apitimelinefavorites.php
+++ b/actions/apitimelinefavorites.php
@@ -25,6 +25,7 @@
* @author Evan Prodromou <evan@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -150,7 +151,7 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
@@ -185,17 +186,23 @@ class ApiTimelineFavoritesAction extends ApiBareAuthAction
{
$notices = array();
+ common_debug("since id = " . $this->since_id . " max id = " . $this->max_id);
+
if (!empty($this->auth_user) && $this->auth_user->id == $this->user->id) {
$notice = $this->user->favoriteNotices(
+ true,
($this->page-1) * $this->count,
$this->count,
- true
+ $this->since_id,
+ $this->max_id
);
} else {
$notice = $this->user->favoriteNotices(
+ false,
($this->page-1) * $this->count,
$this->count,
- false
+ $this->since_id,
+ $this->max_id
);
}
diff --git a/actions/apitimelinefriends.php b/actions/apitimelinefriends.php
index ac350ab1b..40ce35979 100644
--- a/actions/apitimelinefriends.php
+++ b/actions/apitimelinefriends.php
@@ -28,11 +28,107 @@
* @author Mike Cochrane <mikec@mikenz.geek.nz>
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
+/* External API usage documentation. Please update when you change how this method works. */
+
+/*! @page friendstimeline statuses/friends_timeline
+
+ @section Description
+ Returns the 20 most recent statuses posted by the authenticating
+ user and that user's friends. This is the equivalent of "You and
+ friends" page in the web interface.
+
+ @par URL patterns
+ @li /api/statuses/friends_timeline.:format
+ @li /api/statuses/friends_timeline/:id.:format
+
+ @par Formats (:format)
+ xml, json, rss, atom
+
+ @par ID (:id)
+ username, user id
+
+ @par HTTP Method(s)
+ GET
+
+ @par Requires Authentication
+ Sometimes (see: @ref authentication)
+
+ @param user_id (Optional) Specifies a user by ID
+ @param screen_name (Optional) Specifies a user by screename (nickname)
+ @param since_id (Optional) Returns only statuses with an ID greater
+ than (that is, more recent than) the specified ID.
+ @param max_id (Optional) Returns only statuses with an ID less than
+ (that is, older than) or equal to the specified ID.
+ @param count (Optional) Specifies the number of statuses to retrieve.
+ @param page (Optional) Specifies the page of results to retrieve.
+
+ @sa @ref authentication
+ @sa @ref apiroot
+
+ @subsection usagenotes Usage notes
+ @li The URL pattern is relative to the @ref apiroot.
+ @li The XML response uses <a href="http://georss.org/Main_Page">GeoRSS</a>
+ to encode the latitude and longitude (see example response below <georss:point>).
+
+ @subsection exampleusage Example usage
+
+ @verbatim
+ curl http://identi.ca/api/statuses/friends_timeline/evan.xml?count=1&page=2
+ @endverbatim
+
+ @subsection exampleresponse Example response
+
+ @verbatim
+ <?xml version="1.0"?>
+ <statuses type="array">
+ <status>
+ <text>back from the !yul !drupal meet with Evolving Web folk, @anarcat, @webchick and others, and an interesting refresher on SQL indexing</text>
+ <truncated>false</truncated>
+ <created_at>Wed Mar 31 01:33:02 +0000 2010</created_at>
+ <in_reply_to_status_id/>
+ <source>&lt;a href="http://code.google.com/p/microblog-purple/"&gt;mbpidgin&lt;/a&gt;</source>
+ <id>26674201</id>
+ <in_reply_to_user_id/>
+ <in_reply_to_screen_name/>
+ <geo/>
+ <favorited>false</favorited>
+ <user>
+ <id>246</id>
+ <name>Mark</name>
+ <screen_name>lambic</screen_name>
+ <location>Montreal, Canada</location>
+ <description>Geek</description>
+ <profile_image_url>http://avatar.identi.ca/246-48-20080702141545.png</profile_image_url>
+ <url>http://lambic.co.uk</url>
+ <protected>false</protected>
+ <followers_count>73</followers_count>
+ <profile_background_color>#F0F2F5</profile_background_color>
+ <profile_text_color/>
+ <profile_link_color>#002E6E</profile_link_color>
+ <profile_sidebar_fill_color>#CEE1E9</profile_sidebar_fill_color>
+ <profile_sidebar_border_color/>
+ <friends_count>58</friends_count>
+ <created_at>Wed Jul 02 14:12:15 +0000 2008</created_at>
+ <favourites_count>2</favourites_count>
+ <utc_offset>-14400</utc_offset>
+ <time_zone>US/Eastern</time_zone>
+ <profile_background_image_url/>
+ <profile_background_tile>false</profile_background_tile>
+ <statuses_count>933</statuses_count>
+ <following>false</following>
+ <notifications>false</notifications>
+ </user>
+ </status>
+ </statuses>
+ @endverbatim
+*/
+
if (!defined('STATUSNET')) {
exit(1);
}
@@ -116,6 +212,7 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction
$id = "tag:$taguribase:FriendsTimeline:" . $this->user->id;
$subtitle = sprintf(
+ // TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
_('Updates from %1$s and friends on %2$s!'),
$this->user->nickname,
$sitename
@@ -152,7 +249,7 @@ class ApiTimelineFriendsAction extends ApiBareAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelinegroup.php b/actions/apitimelinegroup.php
index da816c40a..7a40fd808 100644
--- a/actions/apitimelinegroup.php
+++ b/actions/apitimelinegroup.php
@@ -25,7 +25,8 @@
* @author Evan Prodromou <evan@status.net>
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -88,7 +89,7 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction
parent::handle($args);
if (empty($this->group)) {
- $this->clientError(_('Group not found!'), 404, $this->format);
+ $this->clientError(_('Group not found.'), 404, $this->format);
return false;
}
@@ -105,7 +106,7 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction
function showTimeline()
{
// We'll pull common formatting out of this for other formats
- $atom = new AtomGroupNoticeFeed($this->group);
+ $atom = new AtomGroupNoticeFeed($this->group, $this->auth_user);
$self = $this->getSelfUri();
@@ -137,7 +138,9 @@ class ApiTimelineGroupAction extends ApiPrivateAuthAction
$this->raw($atom->getString());
} catch (Atom10FeedException $e) {
$this->serverError(
- 'Could not generate feed for group - ' . $e->getMessage()
+ 'Could not generate feed for group - ' . $e->getMessage(),
+ 400,
+ $this->format
);
return;
}
diff --git a/actions/apitimelinehome.php b/actions/apitimelinehome.php
index 1618c9923..27eb74169 100644
--- a/actions/apitimelinehome.php
+++ b/actions/apitimelinehome.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -117,6 +118,7 @@ class ApiTimelineHomeAction extends ApiBareAuthAction
$id = "tag:$taguribase:HomeTimeline:" . $this->user->id;
$subtitle = sprintf(
+ // TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
_('Updates from %1$s and friends on %2$s!'),
$this->user->nickname, $sitename
);
@@ -151,7 +153,7 @@ class ApiTimelineHomeAction extends ApiBareAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelinementions.php b/actions/apitimelinementions.php
index c3aec7c5a..ed1ad20e3 100644
--- a/actions/apitimelinementions.php
+++ b/actions/apitimelinementions.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -151,7 +152,7 @@ class ApiTimelineMentionsAction extends ApiBareAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelinepublic.php b/actions/apitimelinepublic.php
index 903461425..f90164288 100644
--- a/actions/apitimelinepublic.php
+++ b/actions/apitimelinepublic.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -55,6 +56,95 @@ require_once INSTALLDIR . '/lib/apiprivateauth.php';
* @link http://status.net/
*/
+/* External API usage documentation. Please update when you change how this method works. */
+
+/*! @page publictimeline statuses/public_timeline
+
+ @section Description
+ Returns the 20 most recent notices from users throughout the system who have
+ uploaded their own avatars. Depending on configuration, it may or may not
+ not include notices from automatic posting services.
+
+ @par URL patterns
+ @li /api/statuses/public_timeline.:format
+
+ @par Formats (:format)
+ xml, json, rss, atom
+
+ @par HTTP Method(s)
+ GET
+
+ @par Requires Authentication
+ No
+
+ @param since_id (Optional) Returns only statuses with an ID greater
+ than (that is, more recent than) the specified ID.
+ @param max_id (Optional) Returns only statuses with an ID less than
+ (that is, older than) or equal to the specified ID.
+ @param count (Optional) Specifies the number of statuses to retrieve.
+ @param page (Optional) Specifies the page of results to retrieve.
+
+ @sa @ref apiroot
+
+ @subsection usagenotes Usage notes
+ @li The URL pattern is relative to the @ref apiroot.
+ @li The XML response uses <a href="http://georss.org/Main_Page">GeoRSS</a>
+ to encode the latitude and longitude (see example response below <georss:point>).
+
+ @subsection exampleusage Example usage
+
+ @verbatim
+ curl http://identi.ca/api/statuses/friends_timeline/evan.xml?count=1&page=2
+ @endverbatim
+
+ @subsection exampleresponse Example response
+
+ @verbatim
+ <?xml version="1.0" encoding="UTF-8"?>
+ <statuses type="array">
+ <status>
+ <text>@skwashd oh, commbank reenabled me super quick both times. but disconcerting when you don't expect it though</text>
+ <truncated>false</truncated>
+ <created_at>Sat Apr 17 00:49:12 +0000 2010</created_at>
+ <in_reply_to_status_id>28838393</in_reply_to_status_id>
+ <source>xmpp</source>
+ <id>28838456</id>
+ <in_reply_to_user_id>39303</in_reply_to_user_id>
+ <in_reply_to_screen_name>skwashd</in_reply_to_screen_name>
+ <geo></geo>
+ <favorited>false</favorited>
+ <user>
+ <id>44517</id>
+ <name>joshua may</name>
+ <screen_name>notjosh</screen_name>
+ <location></location>
+ <description></description>
+ <profile_image_url>http://avatar.identi.ca/44517-48-20090321004106.jpeg</profile_image_url>
+ <url></url>
+ <protected>false</protected>
+ <followers_count>17</followers_count>
+ <profile_background_color></profile_background_color>
+ <profile_text_color></profile_text_color>
+ <profile_link_color></profile_link_color>
+ <profile_sidebar_fill_color></profile_sidebar_fill_color>
+ <profile_sidebar_border_color></profile_sidebar_border_color>
+ <friends_count>20</friends_count>
+ <created_at>Sat Mar 21 00:40:25 +0000 2009</created_at>
+ <favourites_count>0</favourites_count>
+ <utc_offset>0</utc_offset>
+ <time_zone>UTC</time_zone>
+ <profile_background_image_url></profile_background_image_url>
+ <profile_background_tile>false</profile_background_tile>
+ <statuses_count>100</statuses_count>
+ <following>false</following>
+ <notifications>false</notifications>
+ </user>
+ </status>
+ [....]
+ </statuses>
+@endverbatim
+*/
+
class ApiTimelinePublicAction extends ApiPrivateAuthAction
{
@@ -130,7 +220,7 @@ class ApiTimelinePublicAction extends ApiPrivateAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelineretweetedbyme.php b/actions/apitimelineretweetedbyme.php
index 564e98619..af05623cd 100644
--- a/actions/apitimelineretweetedbyme.php
+++ b/actions/apitimelineretweetedbyme.php
@@ -69,7 +69,7 @@ class ApiTimelineRetweetedByMeAction extends ApiAuthAction
{
parent::prepare($args);
- $this->serverError('Unimplemented', 503);
+ $this->serverError('Unimplemented.', 503);
return false;
}
diff --git a/actions/apitimelineretweetsofme.php b/actions/apitimelineretweetsofme.php
index c77912fd0..ea922fc42 100644
--- a/actions/apitimelineretweetsofme.php
+++ b/actions/apitimelineretweetsofme.php
@@ -117,7 +117,7 @@ class ApiTimelineRetweetsOfMeAction extends ApiAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelinetag.php b/actions/apitimelinetag.php
index fed1437ea..c7ec172ae 100644
--- a/actions/apitimelinetag.php
+++ b/actions/apitimelinetag.php
@@ -26,6 +26,7 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Zach Copley <zach@status.net>
* @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -138,7 +139,7 @@ class ApiTimelineTagAction extends ApiPrivateAuthAction
header('Content-Type: application/atom+xml; charset=utf-8');
- $atom = new AtomNoticeFeed();
+ $atom = new AtomNoticeFeed($this->auth_user);
$atom->setId($id);
$atom->setTitle($title);
diff --git a/actions/apitimelineuser.php b/actions/apitimelineuser.php
index 11431a82c..17a283663 100644
--- a/actions/apitimelineuser.php
+++ b/actions/apitimelineuser.php
@@ -29,6 +29,7 @@
* @author Robin Millette <robin@millette.info>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -115,7 +116,7 @@ class ApiTimelineUserAction extends ApiBareAuthAction
// We'll use the shared params from the Atom stub
// for other feed types.
- $atom = new AtomUserNoticeFeed($this->user);
+ $atom = new AtomUserNoticeFeed($this->user, $this->auth_user);
$link = common_local_url(
'showstream',
diff --git a/actions/twitapitrends.php b/actions/apitrends.php
index 5a04569a2..5b74636c6 100644
--- a/actions/twitapitrends.php
+++ b/actions/apitrends.php
@@ -22,7 +22,7 @@
* @category Search
* @package StatusNet
* @author Zach Copley <zach@status.net>
- * @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2008-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/
*/
@@ -31,6 +31,8 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
+require_once INSTALLDIR.'/lib/apiprivateauth.php';
+
/**
* Returns the top ten queries that are currently trending
*
@@ -43,7 +45,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @see ApiAction
*/
-class TwitapitrendsAction extends ApiAction
+class ApiTrendsAction extends ApiPrivateAuthAction
{
var $callback;
@@ -82,7 +84,7 @@ class TwitapitrendsAction extends ApiAction
*/
function showTrends()
{
- $this->serverError(_('API method under construction.'), $code = 501);
+ $this->serverError(_('API method under construction.'), 501);
}
} \ No newline at end of file
diff --git a/actions/apiusershow.php b/actions/apiusershow.php
index 6c8fad49b..28993102c 100644
--- a/actions/apiusershow.php
+++ b/actions/apiusershow.php
@@ -113,7 +113,7 @@ class ApiUserShowAction extends ApiPrivateAuthAction
if ($this->format == 'xml') {
$this->initDocument('xml');
- $this->showTwitterXmlUser($twitter_user);
+ $this->showTwitterXmlUser($twitter_user, 'user', true);
$this->endDocument('xml');
} elseif ($this->format == 'json') {
$this->initDocument('json');
diff --git a/actions/avatarsettings.php b/actions/avatarsettings.php
index d4ea11cb7..52dc2e424 100644
--- a/actions/avatarsettings.php
+++ b/actions/avatarsettings.php
@@ -103,7 +103,7 @@ class AvatarsettingsAction extends AccountSettingsAction
if (!$profile) {
common_log_db_error($user, 'SELECT', __FILE__);
- $this->serverError(_('User without matching profile'));
+ $this->serverError(_('User without matching profile.'));
return;
}
@@ -182,7 +182,7 @@ class AvatarsettingsAction extends AccountSettingsAction
if (!$profile) {
common_log_db_error($user, 'SELECT', __FILE__);
- $this->serverError(_('User without matching profile'));
+ $this->serverError(_('User without matching profile.'));
return;
}
diff --git a/actions/block.php b/actions/block.php
index 5fae45dff..93f8ec937 100644
--- a/actions/block.php
+++ b/actions/block.php
@@ -66,7 +66,7 @@ class BlockAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if ($cur->hasBlocked($this->profile)) {
- $this->clientError(_("You already blocked that user."));
+ $this->clientError(_('You already blocked that user.'));
return false;
}
@@ -87,13 +87,15 @@ class BlockAction extends ProfileFormAction
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if ($this->arg('no')) {
- $this->returnToArgs();
+ $this->returnToPrevious();
} elseif ($this->arg('yes')) {
$this->handlePost();
- $this->returnToArgs();
+ $this->returnToPrevious();
} else {
$this->showPage();
}
+ } else {
+ $this->showPage();
}
}
@@ -118,6 +120,12 @@ class BlockAction extends ProfileFormAction
*/
function areYouSureForm()
{
+ // @fixme if we ajaxify the confirmation form, skip the preview on ajax hits
+ $profile = new ArrayWrapper(array($this->profile));
+ $preview = new ProfileList($profile, $this);
+ $preview->show();
+
+
$id = $this->profile->id;
$this->elementStart('form', array('id' => 'block-' . $id,
'method' => 'post',
@@ -140,8 +148,20 @@ class BlockAction extends ProfileFormAction
$this->hidden($k, $v);
}
}
- $this->submit('form_action-no', _('No'), 'submit form_action-primary', 'no', _("Do not block this user"));
- $this->submit('form_action-yes', _('Yes'), 'submit form_action-secondary', 'yes', _('Block this user'));
+ $this->submit('form_action-no',
+ // TRANS: Button label on the user block form.
+ _m('BUTTON','No'),
+ 'submit form_action-primary',
+ 'no',
+ // TRANS: Submit button title for 'No' when blocking a user.
+ _('Do not block this user'));
+ $this->submit('form_action-yes',
+ // TRANS: Button label on the user block form.
+ _m('BUTTON','Yes'),
+ 'submit form_action-secondary',
+ 'yes',
+ // TRANS: Submit button title for 'Yes' when blocking a user.
+ _('Block this user'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
@@ -168,4 +188,45 @@ class BlockAction extends ProfileFormAction
return;
}
}
+
+ function showScripts()
+ {
+ parent::showScripts();
+ $this->autofocus('form_action-yes');
+ }
+
+ /**
+ * Override for form session token checks; on our first hit we're just
+ * requesting confirmation, which doesn't need a token. We need to be
+ * able to take regular GET requests from email!
+ *
+ * @throws ClientException if token is bad on POST request or if we have
+ * confirmation parameters which could trigger something.
+ */
+ function checkSessionToken()
+ {
+ if ($_SERVER['REQUEST_METHOD'] == 'POST' ||
+ $this->arg('yes') ||
+ $this->arg('no')) {
+
+ return parent::checkSessionToken();
+ }
+ }
+
+ /**
+ * If we reached this form without returnto arguments, return to the
+ * current user's subscription list.
+ *
+ * @return string URL
+ */
+ function defaultReturnTo()
+ {
+ $user = common_current_user();
+ if ($user) {
+ return common_local_url('subscribers',
+ array('nickname' => $user->nickname));
+ } else {
+ return common_local_url('public');
+ }
+ }
}
diff --git a/actions/bookmarklet.php b/actions/bookmarklet.php
index 0603a7456..041c2e894 100644
--- a/actions/bookmarklet.php
+++ b/actions/bookmarklet.php
@@ -47,7 +47,8 @@ class BookmarkletAction extends NewnoticeAction
{
function showTitle()
{
- $this->element('title', null, _('Post to ').common_config('site', 'name'));
+ // TRANS: Title for mini-posting window loaded from bookmarklet.
+ $this->element('title', null, sprintf(_('Post to %s'), common_config('site', 'name')));
}
function showHeader()
diff --git a/actions/confirmaddress.php b/actions/confirmaddress.php
index cc8351d8d..8bf8c8c4d 100644
--- a/actions/confirmaddress.php
+++ b/actions/confirmaddress.php
@@ -87,10 +87,12 @@ class ConfirmaddressAction extends Action
}
$type = $confirm->address_type;
if (!in_array($type, array('email', 'jabber', 'sms'))) {
- $this->serverError(sprintf(_('Unrecognized address type %s'), $type));
+ // TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+ $this->serverError(sprintf(_('Unrecognized address type %s.'), $type));
return;
}
if ($cur->$type == $confirm->address) {
+ // TRANS: Client error for an already confirmed email/jabbel/sms address.
$this->clientError(_('That address has already been confirmed.'));
return;
}
diff --git a/actions/deleteapplication.php b/actions/deleteapplication.php
index 17526e111..806de0be6 100644
--- a/actions/deleteapplication.php
+++ b/actions/deleteapplication.php
@@ -150,13 +150,17 @@ class DeleteapplicationAction extends Action
'This will clear all data about the application from the '.
'database, including all existing user connections.'));
$this->submit('form_action-no',
- _('No'),
+ // TRANS: Button label on the delete application form.
+ _m('BUTTON','No'),
'submit form_action-primary',
'no',
- _("Do not delete this application"));
+ // TRANS: Submit button title for 'No' when deleting an application.
+ _('Do not delete this application'));
$this->submit('form_action-yes',
- _('Yes'),
+ // TRANS: Button label on the delete application form.
+ _m('BUTTON','Yes'),
'submit form_action-secondary',
+ // TRANS: Submit button title for 'Yes' when deleting an application.
'yes', _('Delete this application'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
diff --git a/actions/deletenotice.php b/actions/deletenotice.php
index 69cb1ebe8..f8010a814 100644
--- a/actions/deletenotice.php
+++ b/actions/deletenotice.php
@@ -142,8 +142,20 @@ class DeletenoticeAction extends Action
$this->hidden('token', common_session_token());
$this->hidden('notice', $this->trimmed('notice'));
$this->element('p', null, _('Are you sure you want to delete this notice?'));
- $this->submit('form_action-no', _('No'), 'submit form_action-primary', 'no', _("Do not delete this notice"));
- $this->submit('form_action-yes', _('Yes'), 'submit form_action-secondary', 'yes', _('Delete this notice'));
+ $this->submit('form_action-no',
+ // TRANS: Button label on the delete notice form.
+ _m('BUTTON','No'),
+ 'submit form_action-primary',
+ 'no',
+ // TRANS: Submit button title for 'No' when deleting a notice.
+ _("Do not delete this notice"));
+ $this->submit('form_action-yes',
+ // TRANS: Button label on the delete notice form.
+ _m('BUTTON','Yes'),
+ 'submit form_action-secondary',
+ 'yes',
+ // TRANS: Submit button title for 'Yes' when deleting a notice.
+ _('Delete this notice'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
diff --git a/actions/deleteuser.php b/actions/deleteuser.php
index 4e6b27395..02ded68b3 100644
--- a/actions/deleteuser.php
+++ b/actions/deleteuser.php
@@ -64,14 +64,14 @@ class DeleteuserAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::DELETEUSER)) {
- $this->clientError(_("You cannot delete users."));
+ $this->clientError(_('You cannot delete users.'));
return false;
}
$this->user = User::staticGet('id', $this->profile->id);
if (empty($this->user)) {
- $this->clientError(_("You can only delete local users."));
+ $this->clientError(_('You can only delete local users.'));
return false;
}
@@ -92,10 +92,10 @@ class DeleteuserAction extends ProfileFormAction
{
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if ($this->arg('no')) {
- $this->returnToArgs();
+ $this->returnToPrevious();
} elseif ($this->arg('yes')) {
$this->handlePost();
- $this->returnToArgs();
+ $this->returnToPrevious();
} else {
$this->showPage();
}
@@ -147,8 +147,20 @@ class DeleteuserAction extends ProfileFormAction
}
Event::handle('EndDeleteUserForm', array($this, $this->user));
}
- $this->submit('form_action-no', _('No'), 'submit form_action-primary', 'no', _("Do not block this user"));
- $this->submit('form_action-yes', _('Yes'), 'submit form_action-secondary', 'yes', _('Delete this user'));
+ $this->submit('form_action-no',
+ // TRANS: Button label on the delete user form.
+ _m('BUTTON','No'),
+ 'submit form_action-primary',
+ 'no',
+ // TRANS: Submit button title for 'No' when deleting a user.
+ _('Do not block this user'));
+ $this->submit('form_action-yes',
+ // TRANS: Button label on the delete user form.
+ _m('BUTTON','Yes'),
+ 'submit form_action-secondary',
+ 'yes',
+ // TRANS: Submit button title for 'Yes' when deleting a user.
+ _('Delete this user'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
diff --git a/actions/designadminpanel.php b/actions/designadminpanel.php
index 30e8bde1a..763737175 100644
--- a/actions/designadminpanel.php
+++ b/actions/designadminpanel.php
@@ -59,6 +59,7 @@ class DesignadminpanelAction extends AdminPanelAction
function title()
{
+ // TRANS: Message used as title for design settings for the site.
return _('Design');
}
@@ -125,9 +126,19 @@ class DesignadminpanelAction extends AdminPanelAction
return;
}
- // check for an image upload
+ // check for file uploads
$bgimage = $this->saveBackgroundImage();
+ $customTheme = $this->saveCustomTheme();
+
+ $oldtheme = common_config('site', 'theme');
+ if ($customTheme) {
+ // This feels pretty hacky :D
+ $this->args['theme'] = $customTheme;
+ $themeChanged = true;
+ } else {
+ $themeChanged = ($this->trimmed('theme') != $oldtheme);
+ }
static $settings = array('theme', 'logo');
@@ -139,15 +150,13 @@ class DesignadminpanelAction extends AdminPanelAction
$this->validate($values);
- $oldtheme = common_config('site', 'theme');
-
$config = new Config();
$config->query('BEGIN');
// Only update colors if the theme has not changed.
- if ($oldtheme == $values['theme']) {
+ if (!$themeChanged) {
$bgcolor = new WebColor($this->trimmed('design_background'));
$ccolor = new WebColor($this->trimmed('design_content'));
@@ -189,6 +198,13 @@ class DesignadminpanelAction extends AdminPanelAction
Config::save('design', 'backgroundimage', $bgimage);
}
+ if (common_config('custom_css', 'enabled')) {
+ $css = $this->arg('css');
+ if ($css != common_config('custom_css', 'css')) {
+ Config::save('custom_css', 'css', $css);
+ }
+ }
+
$config->query('COMMIT');
}
@@ -263,6 +279,33 @@ class DesignadminpanelAction extends AdminPanelAction
}
/**
+ * Save the custom theme if the user uploaded one.
+ *
+ * @return mixed custom theme name, if succesful, or null if no theme upload.
+ * @throws ClientException for invalid theme archives
+ * @throws ServerException if trouble saving the theme files
+ */
+
+ function saveCustomTheme()
+ {
+ if (common_config('theme_upload', 'enabled') &&
+ $_FILES['design_upload_theme']['error'] == UPLOAD_ERR_OK) {
+
+ $upload = ThemeUploader::fromUpload('design_upload_theme');
+ $basedir = common_config('local', 'dir');
+ if (empty($basedir)) {
+ $basedir = INSTALLDIR . '/local';
+ }
+ $name = 'custom'; // @todo allow multiples, custom naming?
+ $outdir = $basedir . '/theme/' . $name;
+ $upload->extract($outdir);
+ return $name;
+ } else {
+ return null;
+ }
+ }
+
+ /**
* Attempt to validate setting values
*
* @return void
@@ -272,11 +315,11 @@ class DesignadminpanelAction extends AdminPanelAction
{
if (!empty($values['logo']) &&
!Validate::uri($values['logo'], array('allowed_schemes' => array('http', 'https')))) {
- $this->clientError(_("Invalid logo URL."));
+ $this->clientError(_('Invalid logo URL.'));
}
if (!in_array($values['theme'], Theme::listAvailable())) {
- $this->clientError(sprintf(_("Theme not available: %s"), $values['theme']));
+ $this->clientError(sprintf(_("Theme not available: %s."), $values['theme']));
}
}
@@ -370,7 +413,15 @@ class DesignAdminPanelForm extends AdminForm
function formData()
{
+ $this->showLogo();
+ $this->showTheme();
+ $this->showBackground();
+ $this->showColors();
+ $this->showAdvanced();
+ }
+ function showLogo()
+ {
$this->out->elementStart('fieldset', array('id' => 'settings_design_logo'));
$this->out->element('legend', null, _('Change logo'));
@@ -383,6 +434,11 @@ class DesignAdminPanelForm extends AdminForm
$this->out->elementEnd('ul');
$this->out->elementEnd('fieldset');
+
+ }
+
+ function showTheme()
+ {
$this->out->elementStart('fieldset', array('id' => 'settings_design_theme'));
$this->out->element('legend', null, _('Change theme'));
@@ -406,10 +462,23 @@ class DesignAdminPanelForm extends AdminForm
false, $this->value('theme'));
$this->unli();
+ if (common_config('theme_upload', 'enabled')) {
+ $this->li();
+ $this->out->element('label', array('for' => 'design_upload_theme'), _('Custom theme'));
+ $this->out->element('input', array('id' => 'design_upload_theme',
+ 'name' => 'design_upload_theme',
+ 'type' => 'file'));
+ $this->out->element('p', 'form_guide', _('You can upload a custom StatusNet theme as a .ZIP archive.'));
+ $this->unli();
+ }
+
$this->out->elementEnd('ul');
$this->out->elementEnd('fieldset');
+ }
+ function showBackground()
+ {
$design = $this->out->design;
$this->out->elementStart('fieldset', array('id' =>
@@ -454,6 +523,7 @@ class DesignAdminPanelForm extends AdminForm
$this->out->element('label', array('for' => 'design_background-image_on',
'class' => 'radio'),
+ // TRANS: Used as radio button label to add a background image.
_('On'));
$attrs = array('name' => 'design_background-image_onoff',
@@ -470,6 +540,7 @@ class DesignAdminPanelForm extends AdminForm
$this->out->element('label', array('for' => 'design_background-image_off',
'class' => 'radio'),
+ // TRANS: Used as radio button label to not add a background image.
_('Off'));
$this->out->element('p', 'form_guide', _('Turn background image on or off.'));
$this->unli();
@@ -483,6 +554,11 @@ class DesignAdminPanelForm extends AdminForm
$this->out->elementEnd('ul');
$this->out->elementEnd('fieldset');
+ }
+
+ function showColors()
+ {
+ $design = $this->out->design;
$this->out->elementStart('fieldset', array('id' => 'settings_design_color'));
$this->out->element('legend', null, _('Change colours'));
@@ -490,6 +566,7 @@ class DesignAdminPanelForm extends AdminForm
$this->out->elementStart('ul', 'form_data');
try {
+ // @fixme avoid loop unrolling in non-performance-critical contexts like this
$bgcolor = new WebColor($design->backgroundcolor);
@@ -557,6 +634,7 @@ class DesignAdminPanelForm extends AdminForm
$this->unli();
} catch (WebColorException $e) {
+ // @fixme normalize them individually!
common_log(LOG_ERR, 'Bad color values in site design: ' .
$e->getMessage());
}
@@ -566,6 +644,27 @@ class DesignAdminPanelForm extends AdminForm
$this->out->elementEnd('ul');
}
+ function showAdvanced()
+ {
+ if (common_config('custom_css', 'enabled')) {
+ $this->out->elementStart('fieldset', array('id' => 'settings_design_advanced'));
+ $this->out->element('legend', null, _('Advanced'));
+ $this->out->elementStart('ul', 'form_data');
+
+ $this->li();
+ $this->out->element('label', array('for' => 'css'), _('Custom CSS'));
+ $this->out->element('textarea', array('name' => 'css',
+ 'id' => 'css',
+ 'cols' => '50',
+ 'rows' => '10'),
+ strval(common_config('custom_css', 'css')));
+ $this->unli();
+
+ $this->out->elementEnd('fieldset');
+ $this->out->elementEnd('ul');
+ }
+ }
+
/**
* Action elements
*
diff --git a/actions/disfavor.php b/actions/disfavor.php
index 6269f1bd2..3ccdd69af 100644
--- a/actions/disfavor.php
+++ b/actions/disfavor.php
@@ -71,7 +71,7 @@ class DisfavorAction extends Action
$notice = Notice::staticGet($id);
$token = $this->trimmed('token-'.$notice->id);
if (!$token || $token != common_session_token()) {
- $this->clientError(_("There was a problem with your session token. Try again, please."));
+ $this->clientError(_('There was a problem with your session token. Try again, please.'));
return;
}
$fave = new Fave();
diff --git a/actions/emailsettings.php b/actions/emailsettings.php
index 08608348c..6138a88f9 100644
--- a/actions/emailsettings.php
+++ b/actions/emailsettings.php
@@ -57,6 +57,7 @@ class EmailsettingsAction extends AccountSettingsAction
function title()
{
+ // TRANS: Title for e-mail settings.
return _('Email settings');
}
@@ -68,6 +69,10 @@ class EmailsettingsAction extends AccountSettingsAction
function getInstructions()
{
+ // XXX: For consistency of parameters in messages, this should be a
+ // regular parameters, replaced with sprintf().
+ // TRANS: E-mail settings page instructions.
+ // TRANS: %%site.name%% is the name of the site.
return _('Manage how you get email from %%site.name%%.');
}
@@ -97,102 +102,126 @@ class EmailsettingsAction extends AccountSettingsAction
common_local_url('emailsettings')));
$this->elementStart('fieldset');
$this->elementStart('fieldset', array('id' => 'settings_email_address'));
- $this->element('legend', null, _('Address'));
+ // TRANS: Form legend for e-mail settings form.
+ $this->element('legend', null, _('Email address'));
$this->hidden('token', common_session_token());
if ($user->email) {
$this->element('p', array('id' => 'form_confirmed'), $user->email);
+ // TRANS: Form note in e-mail settings form.
$this->element('p', array('class' => 'form_note'), _('Current confirmed email address.'));
$this->hidden('email', $user->email);
- $this->submit('remove', _('Remove'));
+ // TRANS: Button label to remove a confirmed e-mail address.
+ $this->submit('remove', _m('BUTTON','Remove'));
} else {
$confirm = $this->getConfirmation();
if ($confirm) {
$this->element('p', array('id' => 'form_unconfirmed'), $confirm->address);
+ // TRANS: Form note in e-mail settings form.
$this->element('p', array('class' => 'form_note'),
_('Awaiting confirmation on this address. '.
'Check your inbox (and spam box!) for a message '.
'with further instructions.'));
$this->hidden('email', $confirm->address);
- $this->submit('cancel', _('Cancel'));
+ // TRANS: Button label to cancel an e-mail address confirmation procedure.
+ $this->submit('cancel', _m('BUTTON','Cancel'));
} else {
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Field label for e-mail address input in e-mail settings form.
$this->input('email', _('Email address'),
($this->arg('email')) ? $this->arg('email') : null,
+ // TRANS: Instructions for e-mail address input form.
_('Email address, like "UserName@example.org"'));
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('add', _('Add'));
+ // TRANS: Button label for adding an e-mail address in e-mail settings form.
+ $this->submit('add', _m('BUTTON','Add'));
}
}
$this->elementEnd('fieldset');
if (common_config('emailpost', 'enabled') && $user->email) {
$this->elementStart('fieldset', array('id' => 'settings_email_incoming'));
+ // TRANS: Form legend for incoming e-mail settings form.
$this->element('legend', null, _('Incoming email'));
if ($user->incomingemail) {
$this->elementStart('p');
$this->element('span', 'address', $user->incomingemail);
+ // XXX: Looks a little awkward in the UI.
+ // Something like "xxxx@identi.ca Send email ..". Needs improvement.
$this->element('span', 'input_instructions',
+ // TRANS: Form instructions for incoming e-mail form in e-mail settings.
_('Send email to this address to post new notices.'));
$this->elementEnd('p');
- $this->submit('removeincoming', _('Remove'));
+ // TRANS: Button label for removing a set sender e-mail address to post notices from.
+ $this->submit('removeincoming', _m('BUTTON','Remove'));
}
$this->elementStart('p');
$this->element('span', 'input_instructions',
+ // TRANS: Instructions for incoming e-mail address input form.
_('Make a new email address for posting to; '.
'cancels the old one.'));
$this->elementEnd('p');
- $this->submit('newincoming', _('New'));
+ // TRANS: Button label for adding an e-mail address to send notices from.
+ $this->submit('newincoming', _m('BUTTON','New'));
$this->elementEnd('fieldset');
}
$this->elementStart('fieldset', array('id' => 'settings_email_preferences'));
- $this->element('legend', null, _('Preferences'));
+ // TRANS: Form legend for e-mail preferences form.
+ $this->element('legend', null, _('Email preferences'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->checkbox('emailnotifysub',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Send me notices of new subscriptions through email.'),
$user->emailnotifysub);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('emailnotifyfav',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Send me email when someone '.
'adds my notice as a favorite.'),
$user->emailnotifyfav);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('emailnotifymsg',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Send me email when someone sends me a private message.'),
$user->emailnotifymsg);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('emailnotifyattn',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Send me email when someone sends me an "@-reply".'),
$user->emailnotifyattn);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('emailnotifynudge',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Allow friends to nudge me and send me an email.'),
$user->emailnotifynudge);
$this->elementEnd('li');
if (common_config('emailpost', 'enabled')) {
$this->elementStart('li');
$this->checkbox('emailpost',
+ // TRANS: Checkbox label in e-mail preferences form.
_('I want to post notices by email.'),
$user->emailpost);
$this->elementEnd('li');
}
$this->elementStart('li');
$this->checkbox('emailmicroid',
+ // TRANS: Checkbox label in e-mail preferences form.
_('Publish a MicroID for my email address.'),
$user->emailmicroid);
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('save', _('Save'));
+ // TRANS: Button label to save e-mail preferences.
+ $this->submit('save', _m('BUTTON','Save'));
$this->elementEnd('fieldset');
$this->elementEnd('fieldset');
$this->elementEnd('form');
@@ -253,6 +282,7 @@ class EmailsettingsAction extends AccountSettingsAction
} else if ($this->arg('newincoming')) {
$this->newIncoming();
} else {
+ // TRANS: Message given submitting a form with an unknown action in e-mail settings.
$this->showForm(_('Unexpected form submission.'));
}
}
@@ -293,13 +323,15 @@ class EmailsettingsAction extends AccountSettingsAction
if ($result === false) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error updating e-mail preferences.
$this->serverError(_('Couldn\'t update user.'));
return;
}
$user->query('COMMIT');
- $this->showForm(_('Preferences saved.'), true);
+ // TRANS: Confirmation message for successful e-mail preferences save.
+ $this->showForm(_('Email preferences saved.'), true);
}
/**
@@ -317,6 +349,7 @@ class EmailsettingsAction extends AccountSettingsAction
// Some validation
if (!$email) {
+ // TRANS: Message given saving e-mail address without having provided one.
$this->showForm(_('No email address.'));
return;
}
@@ -324,16 +357,20 @@ class EmailsettingsAction extends AccountSettingsAction
$email = common_canonical_email($email);
if (!$email) {
+ // TRANS: Message given saving e-mail address that cannot be normalised.
$this->showForm(_('Cannot normalize that email address'));
return;
}
if (!Validate::email($email, common_config('email', 'check_domain'))) {
+ // TRANS: Message given saving e-mail address that not valid.
$this->showForm(_('Not a valid email address.'));
return;
} else if ($user->email == $email) {
+ // TRANS: Message given saving e-mail address that is already set.
$this->showForm(_('That is already your email address.'));
return;
} else if ($this->emailExists($email)) {
+ // TRANS: Message given saving e-mail address that is already set for another user.
$this->showForm(_('That email address already belongs '.
'to another user.'));
return;
@@ -350,12 +387,14 @@ class EmailsettingsAction extends AccountSettingsAction
if ($result === false) {
common_log_db_error($confirm, 'INSERT', __FILE__);
+ // TRANS: Server error thrown on database error adding e-mail confirmation code.
$this->serverError(_('Couldn\'t insert confirmation code.'));
return;
}
mail_confirm_address($user, $confirm->code, $user->nickname, $email);
+ // TRANS: Message given saving valid e-mail address that is to be confirmed.
$msg = _('A confirmation code was sent to the email address you added. '.
'Check your inbox (and spam box!) for the code and instructions '.
'on how to use it.');
@@ -376,11 +415,13 @@ class EmailsettingsAction extends AccountSettingsAction
$confirm = $this->getConfirmation();
if (!$confirm) {
+ // TRANS: Message given canceling e-mail address confirmation that is not pending.
$this->showForm(_('No pending confirmation to cancel.'));
return;
}
if ($confirm->address != $email) {
- $this->showForm(_('That is the wrong IM address.'));
+ // TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+ $this->showForm(_('That is the wrong email address.'));
return;
}
@@ -388,11 +429,13 @@ class EmailsettingsAction extends AccountSettingsAction
if (!$result) {
common_log_db_error($confirm, 'DELETE', __FILE__);
+ // TRANS: Server error thrown on database error canceling e-mail address confirmation.
$this->serverError(_('Couldn\'t delete email confirmation.'));
return;
}
- $this->showForm(_('Confirmation cancelled.'), true);
+ // TRANS: Message given after successfully canceling e-mail address confirmation.
+ $this->showForm(_('Email confirmation cancelled.'), true);
}
/**
@@ -410,6 +453,8 @@ class EmailsettingsAction extends AccountSettingsAction
// Maybe an old tab open...?
if ($user->email != $email) {
+ // TRANS: Message given trying to remove an e-mail address that is not
+ // TRANS: registered for the active user.
$this->showForm(_('That is not your email address.'));
return;
}
@@ -424,12 +469,14 @@ class EmailsettingsAction extends AccountSettingsAction
if (!$result) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error removing a registered e-mail address.
$this->serverError(_('Couldn\'t update user.'));
return;
}
$user->query('COMMIT');
- $this->showForm(_('The address was removed.'), true);
+ // TRANS: Message given after successfully removing a registered e-mail address.
+ $this->showForm(_('The email address was removed.'), true);
}
/**
@@ -453,9 +500,11 @@ class EmailsettingsAction extends AccountSettingsAction
if (!$user->updateKeys($orig)) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error removing incoming e-mail address.
$this->serverError(_("Couldn't update user record."));
}
+ // TRANS: Message given after successfully removing an incoming e-mail address.
$this->showForm(_('Incoming email address removed.'), true);
}
@@ -475,9 +524,11 @@ class EmailsettingsAction extends AccountSettingsAction
if (!$user->updateKeys($orig)) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error adding incoming e-mail address.
$this->serverError(_("Couldn't update user record."));
}
+ // TRANS: Message given after successfully adding an incoming e-mail address.
$this->showForm(_('New incoming email address added.'), true);
}
diff --git a/actions/favor.php b/actions/favor.php
index afca9768a..01976a38f 100644
--- a/actions/favor.php
+++ b/actions/favor.php
@@ -72,7 +72,7 @@ class FavorAction extends Action
$notice = Notice::staticGet($id);
$token = $this->trimmed('token-'.$notice->id);
if (!$token || $token != common_session_token()) {
- $this->clientError(_("There was a problem with your session token. Try again, please."));
+ $this->clientError(_('There was a problem with your session token. Try again, please.'));
return;
}
if ($user->hasFave($notice)) {
@@ -104,7 +104,7 @@ class FavorAction extends Action
}
/**
- * Notifies a user when his notice is favorited.
+ * Notifies a user when their notice is favorited.
*
* @param class $notice favorited notice
* @param class $user user declaring a favorite
diff --git a/actions/favoritesrss.php b/actions/favoritesrss.php
index 62f06e841..51c92af93 100644
--- a/actions/favoritesrss.php
+++ b/actions/favoritesrss.php
@@ -89,7 +89,7 @@ class FavoritesrssAction extends Rss10Action
function getNotices($limit=0)
{
$user = $this->user;
- $notice = $user->favoriteNotices(0, $limit);
+ $notice = $user->favoriteNotices(false, 0, $limit);
$notices = array();
while ($notice->fetch()) {
$notices[] = clone($notice);
diff --git a/actions/finishremotesubscribe.php b/actions/finishremotesubscribe.php
index deee70f36..0325f6adb 100644
--- a/actions/finishremotesubscribe.php
+++ b/actions/finishremotesubscribe.php
@@ -37,7 +37,7 @@ require_once INSTALLDIR.'/lib/omb.php';
* Handler for remote subscription finish callback
*
* When a remote user subscribes a local user, a redirect to this action is
- * issued after the remote user authorized his service to subscribe.
+ * issued after the remote user authorized their service to subscribe.
*
* @category Action
* @package Laconica
@@ -135,7 +135,7 @@ class FinishremotesubscribeAction extends Action
$service->getServiceURI(OMB_ENDPOINT_UPDATEPROFILE);
if (!$remote->update($orig_remote)) {
- $this->serverError(_('Error updating remote profile'));
+ $this->serverError(_('Error updating remote profile.'));
return;
}
diff --git a/actions/foaf.php b/actions/foaf.php
index fc2ec9b12..09af7b502 100644
--- a/actions/foaf.php
+++ b/actions/foaf.php
@@ -95,7 +95,9 @@ class FoafAction extends Action
// Would be nice to tell if they were a Person or not (e.g. a #person usertag?)
$this->elementStart('Agent', array('rdf:about' =>
$this->user->uri));
- $this->element('mbox_sha1sum', null, sha1('mailto:' . $this->user->email));
+ if ($this->user->email) {
+ $this->element('mbox_sha1sum', null, sha1('mailto:' . $this->user->email));
+ }
if ($this->profile->fullname) {
$this->element('name', null, $this->profile->fullname);
}
@@ -126,7 +128,7 @@ class FoafAction extends Action
$this->element('geo:lat', null, $location->lat);
}
if ($location->lon) {
- $this->element('geo:long', null, $location->lat);
+ $this->element('geo:long', null, $location->lon);
}
if ($location->getURL()) {
$this->element('page', array('rdf:resource'=>$location->getURL()));
@@ -152,7 +154,9 @@ class FoafAction extends Action
}
$person = $this->showMicrobloggingAccount($this->profile,
- common_root_url(), $this->user->uri, false);
+ common_root_url(), $this->user->uri,
+ /*$fetchSubscriptions*/true,
+ /*$isSubscriber*/false);
// Get people who subscribe to user
@@ -162,40 +166,29 @@ class FoafAction extends Action
if ($sub->find()) {
while ($sub->fetch()) {
- if ($sub->token) {
- $other = Remote_profile::staticGet('id', $sub->subscriber);
- $profile = Profile::staticGet('id', $sub->subscriber);
- } else {
- $other = User::staticGet('id', $sub->subscriber);
- $profile = Profile::staticGet('id', $sub->subscriber);
- }
- if (!$other) {
+ $profile = Profile::staticGet('id', $sub->subscriber);
+ if (empty($profile)) {
common_debug('Got a bad subscription: '.print_r($sub,true));
continue;
}
- if (array_key_exists($other->uri, $person)) {
- $person[$other->uri][0] = BOTH;
+ $user = $profile->getUser();
+ $other_uri = $profile->getUri();
+ if (array_key_exists($other_uri, $person)) {
+ $person[$other_uri][0] = BOTH;
} else {
- $person[$other->uri] = array(LISTENER,
- $other->id,
- $profile->nickname,
- (empty($sub->token)) ? 'User' : 'Remote_profile');
+ $person[$other_uri] = array(LISTENER,
+ $profile->id,
+ $profile->nickname,
+ $user ? 'local' : 'remote');
}
- $other->free();
- $other = null;
- unset($other);
- $profile->free();
- $profile = null;
unset($profile);
}
}
- $sub->free();
- $sub = null;
unset($sub);
foreach ($person as $uri => $p) {
- list($type, $id, $nickname, $cls) = $p;
+ list($type, $id, $nickname, $local) = $p;
if ($type == BOTH) {
$this->element('knows', array('rdf:resource' => $uri));
}
@@ -206,8 +199,8 @@ class FoafAction extends Action
foreach ($person as $uri => $p) {
$foaf_url = null;
- list($type, $id, $nickname, $cls) = $p;
- if ($cls == 'User') {
+ list($type, $id, $nickname, $local) = $p;
+ if ($local == 'local') {
$foaf_url = common_local_url('foaf', array('nickname' => $nickname));
}
$profile = Profile::staticGet($id);
@@ -216,9 +209,10 @@ class FoafAction extends Action
$this->element('knows', array('rdf:resource' => $this->user->uri));
}
$this->showMicrobloggingAccount($profile,
- ($cls == 'User') ? common_root_url() : null,
+ ($local == 'local') ? common_root_url() : null,
$uri,
- true);
+ /*$fetchSubscriptions*/false,
+ /*$isSubscriber*/($type == LISTENER || $type == BOTH));
if ($foaf_url) {
$this->element('rdfs:seeAlso', array('rdf:resource' => $foaf_url));
}
@@ -243,7 +237,21 @@ class FoafAction extends Action
$this->elementEnd('PersonalProfileDocument');
}
- function showMicrobloggingAccount($profile, $service=null, $useruri=null, $isSubscriber=false)
+ /**
+ * Output FOAF <account> bit for the given profile.
+ *
+ * @param Profile $profile
+ * @param mixed $service Root URL of this StatusNet instance for a local
+ * user, otherwise null.
+ * @param mixed $useruri URI string for the referenced profile..
+ * @param boolean $fetchSubscriptions Should we load and list all their subscriptions?
+ * @param boolean $isSubscriber if not fetching subs, we can still mark the user as following the current page.
+ *
+ * @return array if $fetchSubscribers is set, return a list of info on those
+ * subscriptions.
+ */
+
+ function showMicrobloggingAccount($profile, $service=null, $useruri=null, $fetchSubscriptions=false, $isSubscriber=false)
{
$attr = array();
if ($useruri) {
@@ -265,9 +273,7 @@ class FoafAction extends Action
$person = array();
- if ($isSubscriber) {
- $this->element('sioc:follows', array('rdf:resource'=>$this->user->uri . '#acct'));
- } else {
+ if ($fetchSubscriptions) {
// Get people user is subscribed to
$sub = new Subscription();
$sub->subscriber = $profile->id;
@@ -275,34 +281,26 @@ class FoafAction extends Action
if ($sub->find()) {
while ($sub->fetch()) {
- if (!empty($sub->token)) {
- $other = Remote_profile::staticGet('id', $sub->subscribed);
- $profile = Profile::staticGet('id', $sub->subscribed);
- } else {
- $other = User::staticGet('id', $sub->subscribed);
- $profile = Profile::staticGet('id', $sub->subscribed);
- }
- if (empty($other)) {
+ $profile = Profile::staticGet('id', $sub->subscribed);
+ if (empty($profile)) {
common_debug('Got a bad subscription: '.print_r($sub,true));
continue;
}
- $this->element('sioc:follows', array('rdf:resource' => $other->uri.'#acct'));
- $person[$other->uri] = array(LISTENEE,
- $other->id,
- $profile->nickname,
- (empty($sub->token)) ? 'User' : 'Remote_profile');
- $other->free();
- $other = null;
- unset($other);
- $profile->free();
- $profile = null;
+ $user = $profile->getUser();
+ $other_uri = $profile->getUri();
+ $this->element('sioc:follows', array('rdf:resource' => $other_uri.'#acct'));
+ $person[$other_uri] = array(LISTENEE,
+ $profile->id,
+ $profile->nickname,
+ $user ? 'local' : 'remote');
unset($profile);
}
}
- $sub->free();
- $sub = null;
unset($sub);
+ } else if ($isSubscriber) {
+ // Just declare that they follow the user whose FOAF we're showing.
+ $this->element('sioc:follows', array('rdf:resource' => $this->user->uri . '#acct'));
}
$this->elementEnd('OnlineAccount');
diff --git a/actions/foafgroup.php b/actions/foafgroup.php
index d685554ac..4db40c28b 100644
--- a/actions/foafgroup.php
+++ b/actions/foafgroup.php
@@ -56,7 +56,7 @@ class FoafGroupAction extends Action
return false;
}
- $local = Local_group::staticGet('nickname', $nickname);
+ $local = Local_group::staticGet('nickname', $this->nickname);
if (!$local) {
$this->clientError(_('No such group.'), 404);
@@ -126,7 +126,8 @@ class FoafGroupAction extends Action
while ($members->fetch()) {
$member_uri = common_local_url('userbyid', array('id'=>$members->id));
$member_details[$member_uri] = array(
- 'nickname' => $members->nickname
+ 'nickname' => $members->nickname,
+ 'is_admin' => false,
);
$this->element('member', array('rdf:resource' => $member_uri));
}
diff --git a/actions/geocode.php b/actions/geocode.php
index e883c6ce4..d93493060 100644
--- a/actions/geocode.php
+++ b/actions/geocode.php
@@ -37,6 +37,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @category Action
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
* @link http://status.net/
*/
diff --git a/actions/grantrole.php b/actions/grantrole.php
index cd6bd4d79..b8b23d02e 100644
--- a/actions/grantrole.php
+++ b/actions/grantrole.php
@@ -59,11 +59,11 @@ class GrantRoleAction extends ProfileFormAction
$this->role = $this->arg('role');
if (!Profile_role::isValid($this->role)) {
- $this->clientError(_("Invalid role."));
+ $this->clientError(_('Invalid role.'));
return false;
}
if (!Profile_role::isSettable($this->role)) {
- $this->clientError(_("This role is reserved and cannot be set."));
+ $this->clientError(_('This role is reserved and cannot be set.'));
return false;
}
@@ -72,14 +72,14 @@ class GrantRoleAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::GRANTROLE)) {
- $this->clientError(_("You cannot grant user roles on this site."));
+ $this->clientError(_('You cannot grant user roles on this site.'));
return false;
}
assert(!empty($this->profile)); // checked by parent
if ($this->profile->hasRole($this->role)) {
- $this->clientError(_("User already has this role."));
+ $this->clientError(_('User already has this role.'));
return false;
}
diff --git a/actions/groupblock.php b/actions/groupblock.php
index ec673358e..39f783397 100644
--- a/actions/groupblock.php
+++ b/actions/groupblock.php
@@ -41,7 +41,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @link http://status.net/
*/
-class GroupblockAction extends Action
+class GroupblockAction extends RedirectingAction
{
var $profile = null;
var $group = null;
@@ -117,9 +117,7 @@ class GroupblockAction extends Action
parent::handle($args);
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if ($this->arg('no')) {
- common_redirect(common_local_url('groupmembers',
- array('nickname' => $this->group->nickname)),
- 303);
+ $this->returnToPrevious();
} elseif ($this->arg('yes')) {
$this->blockProfile();
} elseif ($this->arg('blockto')) {
@@ -175,8 +173,20 @@ class GroupblockAction extends Action
$this->hidden($k, $v);
}
}
- $this->submit('form_action-no', _('No'), 'submit form_action-primary', 'no', _("Do not block this user from this group"));
- $this->submit('form_action-yes', _('Yes'), 'submit form_action-secondary', 'yes', _('Block this user from this group'));
+ $this->submit('form_action-no',
+ // TRANS: Button label on the form to block a user from a group.
+ _m('BUTTON','No'),
+ 'submit form_action-primary',
+ 'no',
+ // TRANS: Submit button title for 'No' when blocking a user from a group.
+ _('Do not block this user from this group'));
+ $this->submit('form_action-yes',
+ // TRANS: Button label on the form to block a user from a group.
+ _m('BUTTON','Yes'),
+ 'submit form_action-secondary',
+ 'yes',
+ // TRANS: Submit button title for 'Yes' when blocking a user from a group.
+ _('Block this user from this group'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
@@ -196,23 +206,27 @@ class GroupblockAction extends Action
$this->serverError(_("Database error blocking user from group."));
return false;
}
+
+ $this->returnToPrevious();
+ }
- // Now, gotta figure where we go back to
- foreach ($this->args as $k => $v) {
- if ($k == 'returnto-action') {
- $action = $v;
- } elseif (substr($k, 0, 9) == 'returnto-') {
- $args[substr($k, 9)] = $v;
- }
- }
+ /**
+ * If we reached this form without returnto arguments, default to
+ * the top of the group's member list.
+ *
+ * @return string URL
+ */
+ function defaultReturnTo()
+ {
+ return common_local_url('groupmembers',
+ array('nickname' => $this->group->nickname));
+ }
- if ($action) {
- common_redirect(common_local_url($action, $args), 303);
- } else {
- common_redirect(common_local_url('groupmembers',
- array('nickname' => $this->group->nickname)),
- 303);
- }
+ function showScripts()
+ {
+ parent::showScripts();
+ $this->autofocus('form_action-yes');
}
+
}
diff --git a/actions/groupmembers.php b/actions/groupmembers.php
index a16debd7b..54f1d8dcd 100644
--- a/actions/groupmembers.php
+++ b/actions/groupmembers.php
@@ -205,13 +205,13 @@ class GroupMemberListItem extends ProfileListItem
!$this->profile->isAdmin($this->group)) {
$this->out->elementStart('li', 'entity_make_admin');
$maf = new MakeAdminForm($this->out, $this->profile, $this->group,
- array('action' => 'groupmembers',
- 'nickname' => $this->group->nickname));
+ $this->returnToArgs());
$maf->show();
$this->out->elementEnd('li');
}
}
+
function showGroupBlockForm()
{
$user = common_current_user();
@@ -219,12 +219,49 @@ class GroupMemberListItem extends ProfileListItem
if (!empty($user) && $user->id != $this->profile->id && $user->isAdmin($this->group)) {
$this->out->elementStart('li', 'entity_block');
$bf = new GroupBlockForm($this->out, $this->profile, $this->group,
- array('action' => 'groupmembers',
- 'nickname' => $this->group->nickname));
+ $this->returnToArgs());
$bf->show();
$this->out->elementEnd('li');
}
+ }
+
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'members')) {
+ $aAttrs['rel'] .= ' nofollow';
+ }
+
+ return $aAttrs;
+ }
+
+ function homepageAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'members')) {
+ $aAttrs['rel'] = 'nofollow';
+ }
+
+ return $aAttrs;
+ }
+ /**
+ * Fetch necessary return-to arguments for the profile forms
+ * to return to this list when they're done.
+ *
+ * @return array
+ */
+ protected function returnToArgs()
+ {
+ $args = array('action' => 'groupmembers',
+ 'nickname' => $this->group->nickname);
+ $page = $this->out->arg('page');
+ if ($page) {
+ $args['param-page'] = $page;
+ }
+ return $args;
}
}
diff --git a/actions/grouprss.php b/actions/grouprss.php
index 490f6f945..98fdea38d 100644
--- a/actions/grouprss.php
+++ b/actions/grouprss.php
@@ -135,8 +135,10 @@ class groupRssAction extends Rss10Action
$c = array('url' => common_local_url('grouprss',
array('nickname' =>
$group->nickname)),
+ // TRANS: Message is used as link title. %s is a user nickname.
'title' => sprintf(_('%s timeline'), $group->nickname),
'link' => common_local_url('showgroup', array('nickname' => $group->nickname)),
+ // TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
'description' => sprintf(_('Updates from members of %1$s on %2$s!'),
$group->nickname, common_config('site', 'name')));
return $c;
diff --git a/actions/imsettings.php b/actions/imsettings.php
index af4915843..6691c8dad 100644
--- a/actions/imsettings.php
+++ b/actions/imsettings.php
@@ -56,6 +56,7 @@ class ImsettingsAction extends ConnectSettingsAction
function title()
{
+ // TRANS: Title for instance messaging settings.
return _('IM settings');
}
@@ -67,6 +68,9 @@ class ImsettingsAction extends ConnectSettingsAction
function getInstructions()
{
+ // TRANS: Instant messaging settings page instructions.
+ // TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+ // TRANS: the order and formatting of link text and link should remain unchanged.
return _('You can send and receive notices through '.
'Jabber/GTalk [instant messages](%%doc.im%%). '.
'Configure your address and settings below.');
@@ -86,6 +90,7 @@ class ImsettingsAction extends ConnectSettingsAction
{
if (!common_config('xmpp', 'enabled')) {
$this->element('div', array('class' => 'error'),
+ // TRANS: Message given in the IM settings if XMPP is not enabled on the site.
_('IM is not available.'));
return;
}
@@ -97,32 +102,41 @@ class ImsettingsAction extends ConnectSettingsAction
'action' =>
common_local_url('imsettings')));
$this->elementStart('fieldset', array('id' => 'settings_im_address'));
- $this->element('legend', null, _('Address'));
+ // TRANS: Form legend for IM settings form.
+ $this->element('legend', null, _('IM address'));
$this->hidden('token', common_session_token());
if ($user->jabber) {
$this->element('p', 'form_confirmed', $user->jabber);
+ // TRANS: Form note in IM settings form.
$this->element('p', 'form_note',
_('Current confirmed Jabber/GTalk address.'));
$this->hidden('jabber', $user->jabber);
- $this->submit('remove', _('Remove'));
+ // TRANS: Button label to remove a confirmed IM address.
+ $this->submit('remove', _m('BUTTON','Remove'));
} else {
$confirm = $this->getConfirmation();
if ($confirm) {
$this->element('p', 'form_unconfirmed', $confirm->address);
$this->element('p', 'form_note',
+ // TRANS: Form note in IM settings form.
+ // TRANS: %s is the IM address set for the site.
sprintf(_('Awaiting confirmation on this address. '.
'Check your Jabber/GTalk account for a '.
'message with further instructions. '.
'(Did you add %s to your buddy list?)'),
jabber_daemon_address()));
$this->hidden('jabber', $confirm->address);
- $this->submit('cancel', _('Cancel'));
+ // TRANS: Button label to cancel an IM address confirmation procedure.
+ $this->submit('cancel', _m('BUTTON','Cancel'));
} else {
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Field label for IM address input in IM settings form.
$this->input('jabber', _('IM address'),
($this->arg('jabber')) ? $this->arg('jabber') : null,
+ // TRANS: IM address input field instructions in IM settings form.
+ // TRANS: %s is the IM address set for the site.
sprintf(_('Jabber or GTalk address, '.
'like "UserName@example.org". '.
'First, make sure to add %s to your '.
@@ -130,37 +144,44 @@ class ImsettingsAction extends ConnectSettingsAction
jabber_daemon_address()));
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('add', _('Add'));
+ // TRANS: Button label for adding an IM address in IM settings form.
+ $this->submit('add', _m('BUTTON','Add'));
}
}
$this->elementEnd('fieldset');
$this->elementStart('fieldset', array('id' => 'settings_im_preferences'));
- $this->element('legend', null, _('Preferences'));
+ // TRANS: Form legend for IM preferences form.
+ $this->element('legend', null, _('IM preferences'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->checkbox('jabbernotify',
+ // TRANS: Checkbox label in IM preferences form.
_('Send me notices through Jabber/GTalk.'),
$user->jabbernotify);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('updatefrompresence',
+ // TRANS: Checkbox label in IM preferences form.
_('Post a notice when my Jabber/GTalk status changes.'),
$user->updatefrompresence);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('jabberreplies',
+ // TRANS: Checkbox label in IM preferences form.
_('Send me replies through Jabber/GTalk '.
'from people I\'m not subscribed to.'),
$user->jabberreplies);
$this->elementEnd('li');
$this->elementStart('li');
$this->checkbox('jabbermicroid',
+ // TRANS: Checkbox label in IM preferences form.
_('Publish a MicroID for my Jabber/GTalk address.'),
$user->jabbermicroid);
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('save', _('Save'));
+ // TRANS: Button label to save IM preferences.
+ $this->submit('save', _m('BUTTON','Save'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
@@ -217,6 +238,7 @@ class ImsettingsAction extends ConnectSettingsAction
} else if ($this->arg('remove')) {
$this->removeAddress();
} else {
+ // TRANS: Message given submitting a form with an unknown action in IM settings.
$this->showForm(_('Unexpected form submission.'));
}
}
@@ -232,7 +254,6 @@ class ImsettingsAction extends ConnectSettingsAction
function savePreferences()
{
-
$jabbernotify = $this->boolean('jabbernotify');
$updatefrompresence = $this->boolean('updatefrompresence');
$jabberreplies = $this->boolean('jabberreplies');
@@ -255,12 +276,14 @@ class ImsettingsAction extends ConnectSettingsAction
if ($result === false) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error updating IM preferences.
$this->serverError(_('Couldn\'t update user.'));
return;
}
$user->query('COMMIT');
+ // TRANS: Confirmation message for successful IM preferences save.
$this->showForm(_('Preferences saved.'), true);
}
@@ -282,6 +305,7 @@ class ImsettingsAction extends ConnectSettingsAction
// Some validation
if (!$jabber) {
+ // TRANS: Message given saving IM address without having provided one.
$this->showForm(_('No Jabber ID.'));
return;
}
@@ -289,16 +313,20 @@ class ImsettingsAction extends ConnectSettingsAction
$jabber = jabber_normalize_jid($jabber);
if (!$jabber) {
+ // TRANS: Message given saving IM address that cannot be normalised.
$this->showForm(_('Cannot normalize that Jabber ID'));
return;
}
- if (!jabber_valid_base_jid($jabber)) {
+ if (!jabber_valid_base_jid($jabber, common_config('email', 'domain_check'))) {
+ // TRANS: Message given saving IM address that not valid.
$this->showForm(_('Not a valid Jabber ID'));
return;
} else if ($user->jabber == $jabber) {
+ // TRANS: Message given saving IM address that is already set.
$this->showForm(_('That is already your Jabber ID.'));
return;
} else if ($this->jabberExists($jabber)) {
+ // TRANS: Message given saving IM address that is already set for another user.
$this->showForm(_('Jabber ID already belongs to another user.'));
return;
}
@@ -316,6 +344,7 @@ class ImsettingsAction extends ConnectSettingsAction
if ($result === false) {
common_log_db_error($confirm, 'INSERT', __FILE__);
+ // TRANS: Server error thrown on database error adding IM confirmation code.
$this->serverError(_('Couldn\'t insert confirmation code.'));
return;
}
@@ -324,6 +353,8 @@ class ImsettingsAction extends ConnectSettingsAction
$user->nickname,
$jabber);
+ // TRANS: Message given saving valid IM address that is to be confirmed.
+ // TRANS: %s is the IM address set for the site.
$msg = sprintf(_('A confirmation code was sent '.
'to the IM address you added. '.
'You must approve %s for '.
@@ -348,10 +379,12 @@ class ImsettingsAction extends ConnectSettingsAction
$confirm = $this->getConfirmation();
if (!$confirm) {
+ // TRANS: Message given canceling IM address confirmation that is not pending.
$this->showForm(_('No pending confirmation to cancel.'));
return;
}
if ($confirm->address != $jabber) {
+ // TRANS: Message given canceling IM address confirmation for the wrong IM address.
$this->showForm(_('That is the wrong IM address.'));
return;
}
@@ -360,11 +393,13 @@ class ImsettingsAction extends ConnectSettingsAction
if (!$result) {
common_log_db_error($confirm, 'DELETE', __FILE__);
- $this->serverError(_('Couldn\'t delete email confirmation.'));
+ // TRANS: Server error thrown on database error canceling IM address confirmation.
+ $this->serverError(_('Couldn\'t delete IM confirmation.'));
return;
}
- $this->showForm(_('Confirmation cancelled.'), true);
+ // TRANS: Message given after successfully canceling IM address confirmation.
+ $this->showForm(_('IM confirmation cancelled.'), true);
}
/**
@@ -384,6 +419,8 @@ class ImsettingsAction extends ConnectSettingsAction
// Maybe an old tab open...?
if ($user->jabber != $jabber) {
+ // TRANS: Message given trying to remove an IM address that is not
+ // TRANS: registered for the active user.
$this->showForm(_('That is not your Jabber ID.'));
return;
}
@@ -398,6 +435,7 @@ class ImsettingsAction extends ConnectSettingsAction
if (!$result) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error removing a registered IM address.
$this->serverError(_('Couldn\'t update user.'));
return;
}
@@ -405,7 +443,8 @@ class ImsettingsAction extends ConnectSettingsAction
// XXX: unsubscribe to the old address
- $this->showForm(_('The address was removed.'), true);
+ // TRANS: Message given after successfully removing a registered IM address.
+ $this->showForm(_('The IM address was removed.'), true);
}
/**
diff --git a/actions/invite.php b/actions/invite.php
index 54b2de62a..4bba8893d 100644
--- a/actions/invite.php
+++ b/actions/invite.php
@@ -38,7 +38,7 @@ class InviteAction extends CurrentUserDesignAction
if (!common_config('invite', 'enabled')) {
$this->clientError(_('Invites have been disabled.'));
} else if (!common_logged_in()) {
- $this->clientError(sprintf(_('You must be logged in to invite other users to use %s'),
+ $this->clientError(sprintf(_('You must be logged in to invite other users to use %s.'),
common_config('site', 'name')));
return;
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
@@ -224,8 +224,10 @@ class InviteAction extends CurrentUserDesignAction
$headers['From'] = mail_notify_from();
$headers['To'] = trim($email);
+ // TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
$headers['Subject'] = sprintf(_('%1$s has invited you to join them on %2$s'), $bestname, $sitename);
+ // TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
$body = sprintf(_("%1\$s has invited you to join them on %2\$s (%3\$s).\n\n".
"%2\$s is a micro-blogging service that lets you keep up-to-date with people you know and people who interest you.\n\n".
"You can also share news about yourself, your thoughts, or your life online with people who know about you. ".
diff --git a/actions/login.php b/actions/login.php
index 8ea3c800b..d3e4312f7 100644
--- a/actions/login.php
+++ b/actions/login.php
@@ -63,6 +63,28 @@ class LoginAction extends Action
}
/**
+ * Prepare page to run
+ *
+ *
+ * @param $args
+ * @return string title
+ */
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+
+ // @todo this check should really be in index.php for all sensitive actions
+ $ssl = common_config('site', 'ssl');
+ if (empty($_SERVER['HTTPS']) && ($ssl == 'always' || $ssl == 'sometimes')) {
+ common_redirect(common_local_url('login'));
+ // exit
+ }
+
+ return true;
+ }
+
+ /**
* Handle input, produce output
*
* Switches on request method; either shows the form or handles its input.
@@ -267,9 +289,13 @@ class LoginAction extends Action
'user name and password ' .
'before changing your settings.');
} else {
- return _('Login with your username and password. ' .
- 'Don\'t have a username yet? ' .
- '[Register](%%action.register%%) a new account.');
+ $prompt = _('Login with your username and password.');
+ if (!common_config('site', 'closed') && !common_config('site', 'inviteonly')) {
+ $prompt .= ' ';
+ $prompt .= _('Don\'t have a username yet? ' .
+ '[Register](%%action.register%%) a new account.');
+ }
+ return $prompt;
}
}
diff --git a/actions/makeadmin.php b/actions/makeadmin.php
index f19348648..9ccb44230 100644
--- a/actions/makeadmin.php
+++ b/actions/makeadmin.php
@@ -41,7 +41,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @link http://status.net/
*/
-class MakeadminAction extends Action
+class MakeadminAction extends RedirectingAction
{
var $profile = null;
var $group = null;
@@ -148,20 +148,19 @@ class MakeadminAction extends Action
$this->group->getBestName());
}
- foreach ($this->args as $k => $v) {
- if ($k == 'returnto-action') {
- $action = $v;
- } else if (substr($k, 0, 9) == 'returnto-') {
- $args[substr($k, 9)] = $v;
- }
- }
+ $this->returnToArgs();
+ }
- if ($action) {
- common_redirect(common_local_url($action, $args), 303);
- } else {
- common_redirect(common_local_url('groupmembers',
- array('nickname' => $this->group->nickname)),
- 303);
- }
+ /**
+ * If we reached this form without returnto arguments, default to
+ * the top of the group's member list.
+ *
+ * @return string URL
+ */
+ function defaultReturnTo()
+ {
+ return common_local_url('groupmembers',
+ array('nickname' => $this->group->nickname));
}
+
}
diff --git a/actions/microsummary.php b/actions/microsummary.php
index 5c761e8bb..d145dc3bc 100644
--- a/actions/microsummary.php
+++ b/actions/microsummary.php
@@ -66,7 +66,7 @@ class MicrosummaryAction extends Action
$notice = $user->getCurrentNotice();
if (!$notice) {
- $this->clientError(_('No current status'), 404);
+ $this->clientError(_('No current status.'), 404);
}
header('Content-Type: text/plain');
diff --git a/actions/newnotice.php b/actions/newnotice.php
index ed0fa1b2b..748d104ff 100644
--- a/actions/newnotice.php
+++ b/actions/newnotice.php
@@ -184,13 +184,21 @@ class NewnoticeAction extends Action
$options = array('reply_to' => ($replyto == 'false') ? null : $replyto);
- if ($user->shareLocation() && $this->arg('notice_data-geo')) {
-
- $locOptions = Notice::locationOptions($this->trimmed('lat'),
- $this->trimmed('lon'),
- $this->trimmed('location_id'),
- $this->trimmed('location_ns'),
- $user->getProfile());
+ if ($user->shareLocation()) {
+ // use browser data if checked; otherwise profile data
+ if ($this->arg('notice_data-geo')) {
+ $locOptions = Notice::locationOptions($this->trimmed('lat'),
+ $this->trimmed('lon'),
+ $this->trimmed('location_id'),
+ $this->trimmed('location_ns'),
+ $user->getProfile());
+ } else {
+ $locOptions = Notice::locationOptions(null,
+ null,
+ null,
+ null,
+ $user->getProfile());
+ }
$options = array_merge($options, $locOptions);
}
@@ -201,8 +209,6 @@ class NewnoticeAction extends Action
$upload->attachToNotice($notice);
}
-
-
if ($this->boolean('ajax')) {
header('Content-Type: text/xml;charset=utf-8');
$this->xw->startDocument('1.0', 'UTF-8');
diff --git a/actions/nudge.php b/actions/nudge.php
index cf5f773e7..32ae8587c 100644
--- a/actions/nudge.php
+++ b/actions/nudge.php
@@ -82,7 +82,7 @@ class NudgeAction extends Action
}
if (!$other->email || !$other->emailnotifynudge) {
- $this->clientError(_('This user doesn\'t allow nudges or hasn\'t confirmed or set his email yet.'));
+ $this->clientError(_('This user doesn\'t allow nudges or hasn\'t confirmed or set their email yet.'));
return;
}
diff --git a/actions/oauthconnectionssettings.php b/actions/oauthconnectionssettings.php
index f125f4c63..8a206d710 100644
--- a/actions/oauthconnectionssettings.php
+++ b/actions/oauthconnectionssettings.php
@@ -183,7 +183,7 @@ class OauthconnectionssettingsAction extends ConnectSettingsAction
if (!$result) {
common_log_db_error($orig, 'DELETE', __FILE__);
- $this->clientError(_('Unable to revoke access for app: ' . $app->id));
+ $this->clientError(sprintf(_('Unable to revoke access for app: %s.'), $app->id));
return false;
}
@@ -195,7 +195,7 @@ class OauthconnectionssettingsAction extends ConnectSettingsAction
function showEmptyListMessage()
{
- $message = sprintf(_('You have not authorized any applications to use your account.'));
+ $message = _('You have not authorized any applications to use your account.');
$this->elementStart('div', 'guide');
$this->raw(common_markup_to_html($message));
diff --git a/actions/oembed.php b/actions/oembed.php
index e287b6ae2..e25e4cb25 100644
--- a/actions/oembed.php
+++ b/actions/oembed.php
@@ -23,6 +23,7 @@
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @copyright 2008 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -60,7 +61,7 @@ class OembedAction extends Action
$proxy_args = $r->map($path);
if (!$proxy_args) {
- $this->serverError(_("$path not found"), 404);
+ $this->serverError(_("$path not found."), 404);
}
$oembed=array();
$oembed['version']='1.0';
@@ -72,11 +73,11 @@ class OembedAction extends Action
$id = $proxy_args['notice'];
$notice = Notice::staticGet($id);
if(empty($notice)){
- $this->serverError(_("notice $id not found"), 404);
+ $this->serverError(_("Notice $id not found."), 404);
}
$profile = $notice->getProfile();
if (empty($profile)) {
- $this->serverError(_('Notice has no profile'), 500);
+ $this->serverError(_('Notice has no profile.'), 500);
}
if (!empty($profile->fullname)) {
$authorname = $profile->fullname . ' (' . $profile->nickname . ')';
@@ -95,7 +96,7 @@ class OembedAction extends Action
$id = $proxy_args['attachment'];
$attachment = File::staticGet($id);
if(empty($attachment)){
- $this->serverError(_("attachment $id not found"), 404);
+ $this->serverError(_("Attachment $id not found."), 404);
}
if(empty($attachment->filename) && $file_oembed = File_oembed::staticGet('file_id', $attachment->id)){
// Proxy the existing oembed information
@@ -123,7 +124,7 @@ class OembedAction extends Action
if($attachment->title) $oembed['title']=$attachment->title;
break;
default:
- $this->serverError(_("$path not supported for oembed requests"), 501);
+ $this->serverError(_("$path not supported for oembed requests."), 501);
}
switch($args['format']){
case 'xml':
@@ -154,10 +155,12 @@ class OembedAction extends Action
$this->end_document('json');
break;
default:
- $this->serverError(_('content type ' . $apidata['content-type'] . ' not supported'), 501);
+ // TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+ $this->serverError(sprintf(_('Content type %s not supported.'), $apidata['content-type']), 501);
}
}else{
- $this->serverError(_('Only ' . common_root_url() . ' urls over plain http please'), 404);
+ // TRANS: Error message displaying attachments. %s is the site's base URL.
+ $this->serverError(sprintf(_('Only %s URLs over plain HTTP please.'), common_root_url()), 404);
}
}
diff --git a/actions/pathsadminpanel.php b/actions/pathsadminpanel.php
index 9155a7e42..7ff3c2583 100644
--- a/actions/pathsadminpanel.php
+++ b/actions/pathsadminpanel.php
@@ -154,19 +154,19 @@ class PathsadminpanelAction extends AdminPanelAction
// Validate theme dir
if (!empty($values['theme']['dir']) && !is_readable($values['theme']['dir'])) {
- $this->clientError(sprintf(_("Theme directory not readable: %s"), $values['theme']['dir']));
+ $this->clientError(sprintf(_("Theme directory not readable: %s."), $values['theme']['dir']));
}
// Validate avatar dir
if (empty($values['avatar']['dir']) || !is_writable($values['avatar']['dir'])) {
- $this->clientError(sprintf(_("Avatar directory not writable: %s"), $values['avatar']['dir']));
+ $this->clientError(sprintf(_("Avatar directory not writable: %s."), $values['avatar']['dir']));
}
// Validate background dir
if (empty($values['background']['dir']) || !is_writable($values['background']['dir'])) {
- $this->clientError(sprintf(_("Background directory not writable: %s"), $values['background']['dir']));
+ $this->clientError(sprintf(_("Background directory not writable: %s."), $values['background']['dir']));
}
// Validate locales dir
@@ -174,13 +174,13 @@ class PathsadminpanelAction extends AdminPanelAction
// XXX: What else do we need to validate for lacales path here? --Z
if (!empty($values['site']['locale_path']) && !is_readable($values['site']['locale_path'])) {
- $this->clientError(sprintf(_("Locales directory not readable: %s"), $values['site']['locale_path']));
+ $this->clientError(sprintf(_("Locales directory not readable: %s."), $values['site']['locale_path']));
}
// Validate SSL setup
if (mb_strlen($values['site']['sslserver']) > 255) {
- $this->clientError(_("Invalid SSL server. The maximum length is 255 characters."));
+ $this->clientError(_('Invalid SSL server. The maximum length is 255 characters.'));
}
}
diff --git a/actions/peopletag.php b/actions/peopletag.php
index 4ba1dc0f1..7287cfbf9 100644
--- a/actions/peopletag.php
+++ b/actions/peopletag.php
@@ -32,8 +32,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
-require_once INSTALLDIR.'/lib/profilelist.php';
-
/**
* This class outputs a paginated list of profiles self-tagged with a given tag
*
@@ -67,7 +65,7 @@ class PeopletagAction extends Action
$this->tag = $this->trimmed('tag');
if (!common_valid_profile_tag($this->tag)) {
- $this->clientError(sprintf(_('Not a valid people tag: %s'),
+ $this->clientError(sprintf(_('Not a valid people tag: %s.'),
$this->tag));
return;
}
@@ -124,8 +122,8 @@ class PeopletagAction extends Action
$profile->query(sprintf($qry, $this->tag, $lim));
- $pl = new ProfileList($profile, $this);
- $cnt = $pl->show();
+ $ptl = new PeopleTagList($profile, $this); // pass the ammunition
+ $cnt = $ptl->show();
$this->pagination($this->page > 1,
$cnt > PROFILES_PER_PAGE,
@@ -146,3 +144,37 @@ class PeopletagAction extends Action
}
}
+
+class PeopleTagList extends ProfileList
+{
+ function newListItem($profile)
+ {
+ return new PeopleTagListItem($profile, $this->action);
+ }
+}
+
+class PeopleTagListItem extends ProfileListItem
+{
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'peopletag')) {
+ $aAttrs['rel'] .= ' nofollow';
+ }
+
+ return $aAttrs;
+ }
+
+ function homepageAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'peopletag')) {
+ $aAttrs['rel'] = 'nofollow';
+ }
+
+ return $aAttrs;
+ }
+}
+
diff --git a/actions/postnotice.php b/actions/postnotice.php
index b2f6f1bb9..694c7808d 100644
--- a/actions/postnotice.php
+++ b/actions/postnotice.php
@@ -92,7 +92,7 @@ class PostnoticeAction extends Action
{
$content = common_shorten_links($_POST['omb_notice_content']);
if (Notice::contentTooLong($content)) {
- $this->clientError(_('Invalid notice content'), 400);
+ $this->clientError(_('Invalid notice content.'), 400);
return false;
}
$license = $_POST['omb_notice_license'];
diff --git a/actions/public.php b/actions/public.php
index 0b3b5fde8..5fc547fea 100644
--- a/actions/public.php
+++ b/actions/public.php
@@ -80,7 +80,7 @@ class PublicAction extends Action
$this->page = ($this->arg('page')) ? ($this->arg('page')+0) : 1;
if ($this->page > MAX_PUBLIC_PAGE) {
- $this->clientError(sprintf(_("Beyond the page limit (%s)"), MAX_PUBLIC_PAGE));
+ $this->clientError(sprintf(_("Beyond the page limit (%s)."), MAX_PUBLIC_PAGE));
}
common_set_returnto($this->selfUrl());
@@ -95,7 +95,7 @@ class PublicAction extends Action
if($this->page > 1 && $this->notice->N == 0){
// TRANS: Server error when page not found (404)
- $this->serverError(_('No such page'),$code=404);
+ $this->serverError(_('No such page.'),$code=404);
}
return true;
diff --git a/actions/publicxrds.php b/actions/publicxrds.php
index 5fd4eead7..8f0337e4f 100644
--- a/actions/publicxrds.php
+++ b/actions/publicxrds.php
@@ -8,7 +8,9 @@
* @category Action
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
+ * @author Craig Andrews <candrews@integralblue.com>
* @author Robin Millette <millette@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
* @link http://status.net/
*
@@ -44,6 +46,7 @@ require_once INSTALLDIR.'/lib/xrdsoutputter.php';
* @author Evan Prodromou <evan@status.net>
* @author Robin Millette <millette@status.net>
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
* @link http://status.net/
*
diff --git a/actions/register.php b/actions/register.php
index ccab76cf0..7307bc689 100644
--- a/actions/register.php
+++ b/actions/register.php
@@ -74,6 +74,13 @@ class RegisterAction extends Action
parent::prepare($args);
$this->code = $this->trimmed('code');
+ // @todo this check should really be in index.php for all sensitive actions
+ $ssl = common_config('site', 'ssl');
+ if (empty($_SERVER['HTTPS']) && ($ssl == 'always' || $ssl == 'sometimes')) {
+ common_redirect(common_local_url('register'));
+ // exit
+ }
+
if (empty($this->code)) {
common_ensure_session();
if (array_key_exists('invitecode', $_SESSION)) {
@@ -341,7 +348,7 @@ class RegisterAction extends Action
} else {
$instr =
common_markup_to_html(_('With this form you can create '.
- ' a new account. ' .
+ 'a new account. ' .
'You can then post notices and '.
'link up to friends and colleagues. '));
@@ -491,11 +498,7 @@ class RegisterAction extends Action
$this->elementStart('li');
$this->element('input', $attrs);
$this->elementStart('label', array('class' => 'checkbox', 'for' => 'license'));
- $this->text(_('My text and files are available under '));
- $this->element('a', array('href' => common_config('license', 'url')),
- common_config('license', 'title'), _("Creative Commons Attribution 3.0"));
- $this->text(_(' except this private data: password, '.
- 'email address, IM address, and phone number.'));
+ $this->raw($this->licenseCheckbox());
$this->elementEnd('label');
$this->elementEnd('li');
}
@@ -505,6 +508,48 @@ class RegisterAction extends Action
$this->elementEnd('form');
}
+ function licenseCheckbox()
+ {
+ $out = '';
+ switch (common_config('license', 'type')) {
+ case 'private':
+ // TRANS: Copyright checkbox label in registration dialog, for private sites.
+ $out .= htmlspecialchars(sprintf(
+ _('I understand that content and data of %1$s are private and confidential.'),
+ common_config('site', 'name')));
+ // fall through
+ case 'allrightsreserved':
+ if ($out != '') {
+ $out .= ' ';
+ }
+ if (common_config('license', 'owner')) {
+ // TRANS: Copyright checkbox label in registration dialog, for all rights reserved with a specified copyright owner.
+ $out .= htmlspecialchars(sprintf(
+ _('My text and files are copyright by %1$s.'),
+ common_config('license', 'owner')));
+ } else {
+ // TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+ $out .= htmlspecialchars(_('My text and files remain under my own copyright.'));
+ }
+ // TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+ $out .= ' ' . _('All rights reserved.');
+ break;
+ case 'cc': // fall through
+ default:
+ // TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+ $message = _('My text and files are available under %s ' .
+ 'except this private data: password, ' .
+ 'email address, IM address, and phone number.');
+ $link = '<a href="' .
+ htmlspecialchars(common_config('license', 'url')) .
+ '">' .
+ htmlspecialchars(common_config('license', 'title')) .
+ '</a>';
+ $out .= sprintf(htmlspecialchars($message), $link);
+ }
+ return $out;
+ }
+
/**
* Show some information about registering for the site
*
diff --git a/actions/remotesubscribe.php b/actions/remotesubscribe.php
index c723d53a1..9fc235e74 100644
--- a/actions/remotesubscribe.php
+++ b/actions/remotesubscribe.php
@@ -188,7 +188,7 @@ class RemotesubscribeAction extends Action
$profile = $user->getProfile();
if (!$profile) {
common_log_db_error($user, 'SELECT', __FILE__);
- $this->serverError(_('User without matching profile'));
+ $this->serverError(_('User without matching profile.'));
return;
}
diff --git a/actions/repeat.php b/actions/repeat.php
index e112496bc..893cae4ff 100644
--- a/actions/repeat.php
+++ b/actions/repeat.php
@@ -54,21 +54,21 @@ class RepeatAction extends Action
$this->user = common_current_user();
if (empty($this->user)) {
- $this->clientError(_("Only logged-in users can repeat notices."));
+ $this->clientError(_('Only logged-in users can repeat notices.'));
return false;
}
$id = $this->trimmed('notice');
if (empty($id)) {
- $this->clientError(_("No notice specified."));
+ $this->clientError(_('No notice specified.'));
return false;
}
$this->notice = Notice::staticGet('id', $id);
if (empty($this->notice)) {
- $this->clientError(_("No notice specified."));
+ $this->clientError(_('No notice specified.'));
return false;
}
@@ -80,14 +80,14 @@ class RepeatAction extends Action
$token = $this->trimmed('token-'.$id);
if (empty($token) || $token != common_session_token()) {
- $this->clientError(_("There was a problem with your session token. Try again, please."));
+ $this->clientError(_('There was a problem with your session token. Try again, please.'));
return false;
}
$profile = $this->user->getProfile();
if ($profile->hasRepeated($id)) {
- $this->clientError(_("You already repeated that notice."));
+ $this->clientError(_('You already repeated that notice.'));
return false;
}
diff --git a/actions/replies.php b/actions/replies.php
index 4ff1b7a8d..8f2fc6c7f 100644
--- a/actions/replies.php
+++ b/actions/replies.php
@@ -90,7 +90,7 @@ class RepliesAction extends OwnerDesignAction
if($this->page > 1 && $this->notice->N == 0){
// TRANS: Server error when page not found (404)
- $this->serverError(_('No such page'),$code=404);
+ $this->serverError(_('No such page.'),$code=404);
}
return true;
@@ -196,18 +196,18 @@ class RepliesAction extends OwnerDesignAction
function showEmptyListMessage()
{
- $message = sprintf(_('This is the timeline showing replies to %1$s but %2$s hasn\'t received a notice to his attention yet.'), $this->user->nickname, $this->user->nickname) . ' ';
+ $message = sprintf(_('This is the timeline showing replies to %1$s but %2$s hasn\'t received a notice to them yet.'), $this->user->nickname, $this->user->nickname) . ' ';
if (common_logged_in()) {
$current_user = common_current_user();
if ($this->user->id === $current_user->id) {
$message .= _('You can engage other users in a conversation, subscribe to more people or [join groups](%%action.groups%%).');
} else {
- $message .= sprintf(_('You can try to [nudge %1$s](../%2$s) or [post something to his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s).'), $this->user->nickname, $this->user->nickname, '@' . $this->user->nickname);
+ $message .= sprintf(_('You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action.newnotice%%%%?status_textarea=%3$s).'), $this->user->nickname, $this->user->nickname, '@' . $this->user->nickname);
}
}
else {
- $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to his or her attention.'), $this->user->nickname);
+ $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to them.'), $this->user->nickname);
}
$this->elementStart('div', 'guide');
diff --git a/actions/revokerole.php b/actions/revokerole.php
index b78c1c25a..c67b70fda 100644
--- a/actions/revokerole.php
+++ b/actions/revokerole.php
@@ -59,11 +59,11 @@ class RevokeRoleAction extends ProfileFormAction
$this->role = $this->arg('role');
if (!Profile_role::isValid($this->role)) {
- $this->clientError(_("Invalid role."));
+ $this->clientError(_('Invalid role.'));
return false;
}
if (!Profile_role::isSettable($this->role)) {
- $this->clientError(_("This role is reserved and cannot be set."));
+ $this->clientError(_('This role is reserved and cannot be set.'));
return false;
}
@@ -72,7 +72,7 @@ class RevokeRoleAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::REVOKEROLE)) {
- $this->clientError(_("You cannot revoke user roles on this site."));
+ $this->clientError(_('You cannot revoke user roles on this site.'));
return false;
}
diff --git a/actions/sandbox.php b/actions/sandbox.php
index 5b034ff07..d1ef4c86b 100644
--- a/actions/sandbox.php
+++ b/actions/sandbox.php
@@ -62,14 +62,14 @@ class SandboxAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::SANDBOXUSER)) {
- $this->clientError(_("You cannot sandbox users on this site."));
+ $this->clientError(_('You cannot sandbox users on this site.'));
return false;
}
assert(!empty($this->profile)); // checked by parent
if ($this->profile->isSandboxed()) {
- $this->clientError(_("User is already sandboxed."));
+ $this->clientError(_('User is already sandboxed.'));
return false;
}
diff --git a/actions/showfavorites.php b/actions/showfavorites.php
index 5b85de683..d8042e91c 100644
--- a/actions/showfavorites.php
+++ b/actions/showfavorites.php
@@ -119,13 +119,13 @@ class ShowfavoritesAction extends OwnerDesignAction
if (!empty($cur) && $cur->id == $this->user->id) {
// Show imported/gateway notices as well as local if
- // the user is looking at his own favorites
+ // the user is looking at their own favorites
- $this->notice = $this->user->favoriteNotices(($this->page-1)*NOTICES_PER_PAGE,
- NOTICES_PER_PAGE + 1, true);
+ $this->notice = $this->user->favoriteNotices(true, ($this->page-1)*NOTICES_PER_PAGE,
+ NOTICES_PER_PAGE + 1);
} else {
- $this->notice = $this->user->favoriteNotices(($this->page-1)*NOTICES_PER_PAGE,
- NOTICES_PER_PAGE + 1, false);
+ $this->notice = $this->user->favoriteNotices(false, ($this->page-1)*NOTICES_PER_PAGE,
+ NOTICES_PER_PAGE + 1);
}
if (empty($this->notice)) {
@@ -135,7 +135,7 @@ class ShowfavoritesAction extends OwnerDesignAction
if($this->page > 1 && $this->notice->N == 0){
// TRANS: Server error when page not found (404)
- $this->serverError(_('No such page'),$code=404);
+ $this->serverError(_('No such page.'),$code=404);
}
return true;
@@ -205,11 +205,11 @@ class ShowfavoritesAction extends OwnerDesignAction
if ($this->user->id === $current_user->id) {
$message = _('You haven\'t chosen any favorite notices yet. Click the fave button on notices you like to bookmark them for later or shed a spotlight on them.');
} else {
- $message = sprintf(_('%s hasn\'t added any notices to his favorites yet. Post something interesting they would add to their favorites :)'), $this->user->nickname);
+ $message = sprintf(_('%s hasn\'t added any favorite notices yet. Post something interesting they would add to their favorites :)'), $this->user->nickname);
}
}
else {
- $message = sprintf(_('%s hasn\'t added any notices to his favorites yet. Why not [register an account](%%%%action.register%%%%) and then post something interesting they would add to their favorites :)'), $this->user->nickname);
+ $message = sprintf(_('%s hasn\'t added any favorite notices yet. Why not [register an account](%%%%action.register%%%%) and then post something interesting they would add to their favorites :)'), $this->user->nickname);
}
$this->elementStart('div', 'guide');
diff --git a/actions/showgroup.php b/actions/showgroup.php
index 5704b13d1..17c37e4d7 100644
--- a/actions/showgroup.php
+++ b/actions/showgroup.php
@@ -221,7 +221,8 @@ class ShowgroupAction extends GroupDesignAction
function showGroupProfile()
{
- $this->elementStart('div', 'entity_profile vcard author');
+ $this->elementStart('div', array('id' => 'i',
+ 'class' => 'entity_profile vcard author'));
$this->element('h2', null, _('Group profile'));
@@ -387,18 +388,23 @@ class ShowgroupAction extends GroupDesignAction
$this->elementStart('div', array('id' => 'entity_members',
'class' => 'section'));
- $this->element('h2', null, _('Members'));
+ if (Event::handle('StartShowGroupMembersMiniList', array($this))) {
- $pml = new ProfileMiniList($member, $this);
- $cnt = $pml->show();
- if ($cnt == 0) {
- $this->element('p', null, _('(None)'));
- }
+ $this->element('h2', null, _('Members'));
+
+ $gmml = new GroupMembersMiniList($member, $this);
+ $cnt = $gmml->show();
+ if ($cnt == 0) {
+ $this->element('p', null, _('(None)'));
+ }
- if ($cnt > MEMBERS_PER_SECTION) {
- $this->element('a', array('href' => common_local_url('groupmembers',
- array('nickname' => $this->group->nickname))),
- _('All members'));
+ if ($cnt > MEMBERS_PER_SECTION) {
+ $this->element('a', array('href' => common_local_url('groupmembers',
+ array('nickname' => $this->group->nickname))),
+ _('All members'));
+ }
+
+ Event::handle('EndShowGroupMembersMiniList', array($this));
}
$this->elementEnd('div');
@@ -424,14 +430,6 @@ class ShowgroupAction extends GroupDesignAction
function showStatistics()
{
- // XXX: WORM cache this
- $members = $this->group->getMembers();
- $members_count = 0;
- /** $member->count() doesn't work. */
- while ($members->fetch()) {
- $members_count++;
- }
-
$this->elementStart('div', array('id' => 'entity_statistics',
'class' => 'section'));
@@ -445,7 +443,7 @@ class ShowgroupAction extends GroupDesignAction
$this->elementStart('dl', 'entity_members');
$this->element('dt', null, _('Members'));
- $this->element('dd', null, (is_int($members_count)) ? $members_count : '0');
+ $this->element('dd', null, $this->group->getMemberCount());
$this->elementEnd('dl');
$this->elementEnd('div');
@@ -501,3 +499,26 @@ class GroupAdminSection extends ProfileSection
return null;
}
}
+
+class GroupMembersMiniList extends ProfileMiniList
+{
+ function newListItem($profile)
+ {
+ return new GroupMembersMiniListItem($profile, $this->action);
+ }
+}
+
+class GroupMembersMiniListItem extends ProfileMiniListItem
+{
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'members')) {
+ $aAttrs['rel'] .= ' nofollow';
+ }
+
+ return $aAttrs;
+ }
+}
+
diff --git a/actions/shownotice.php b/actions/shownotice.php
index a23027f7c..9c5d83441 100644
--- a/actions/shownotice.php
+++ b/actions/shownotice.php
@@ -97,7 +97,7 @@ class ShownoticeAction extends OwnerDesignAction
$this->profile = $this->notice->getProfile();
if (empty($this->profile)) {
- $this->serverError(_('Notice has no profile'), 500);
+ $this->serverError(_('Notice has no profile.'), 500);
return false;
}
@@ -167,7 +167,7 @@ class ShownoticeAction extends OwnerDesignAction
function title()
{
if (!empty($this->profile->fullname)) {
- $base = $this->profile->fullname . ' (' . $this->profile->nickname . ') ';
+ $base = $this->profile->fullname . ' (' . $this->profile->nickname . ')';
} else {
$base = $this->profile->nickname;
}
diff --git a/actions/showstream.php b/actions/showstream.php
index f9407e35a..2476f19fa 100644
--- a/actions/showstream.php
+++ b/actions/showstream.php
@@ -204,11 +204,11 @@ class ShowstreamAction extends ProfileAction
if ($this->user->id === $current_user->id) {
$message .= _('Seen anything interesting recently? You haven\'t posted any notices yet, now would be a good time to start :)');
} else {
- $message .= sprintf(_('You can try to nudge %1$s or [post something to his or her attention](%%%%action.newnotice%%%%?status_textarea=%2$s).'), $this->user->nickname, '@' . $this->user->nickname);
+ $message .= sprintf(_('You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%%?status_textarea=%2$s).'), $this->user->nickname, '@' . $this->user->nickname);
}
}
else {
- $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to his or her attention.'), $this->user->nickname);
+ $message .= sprintf(_('Why not [register an account](%%%%action.register%%%%) and then nudge %s or post a notice to them.'), $this->user->nickname);
}
$this->elementStart('div', 'guide');
diff --git a/actions/silence.php b/actions/silence.php
index 206e5ba87..09cc480d9 100644
--- a/actions/silence.php
+++ b/actions/silence.php
@@ -62,14 +62,14 @@ class SilenceAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::SILENCEUSER)) {
- $this->clientError(_("You cannot silence users on this site."));
+ $this->clientError(_('You cannot silence users on this site.'));
return false;
}
assert(!empty($this->profile)); // checked by parent
if ($this->profile->isSilenced()) {
- $this->clientError(_("User is already silenced."));
+ $this->clientError(_('User is already silenced.'));
return false;
}
diff --git a/actions/siteadminpanel.php b/actions/siteadminpanel.php
index e5482987f..4238b3e85 100644
--- a/actions/siteadminpanel.php
+++ b/actions/siteadminpanel.php
@@ -130,7 +130,7 @@ class SiteadminpanelAction extends AdminPanelAction
// Validate site name
if (empty($values['site']['name'])) {
- $this->clientError(_("Site name must have non-zero length."));
+ $this->clientError(_('Site name must have non-zero length.'));
}
// Validate email
@@ -168,7 +168,7 @@ class SiteadminpanelAction extends AdminPanelAction
// Validate dupe limit
if (!Validate::number($values['site']['dupelimit'], array('min' => 1))) {
- $this->clientError(_("Dupe limit must 1 or more seconds."));
+ $this->clientError(_("Dupe limit must be one or more seconds."));
}
}
diff --git a/actions/sitenoticeadminpanel.php b/actions/sitenoticeadminpanel.php
index a68cc699c..bdcaa2355 100644
--- a/actions/sitenoticeadminpanel.php
+++ b/actions/sitenoticeadminpanel.php
@@ -110,7 +110,7 @@ class SitenoticeadminpanelAction extends AdminPanelAction
if (mb_strlen($siteNotice) > 255) {
$this->clientError(
- _('Max length for the site-wide notice is 255 chars')
+ _('Max length for the site-wide notice is 255 chars.')
);
}
diff --git a/actions/smssettings.php b/actions/smssettings.php
index 751495d57..6af1872a0 100644
--- a/actions/smssettings.php
+++ b/actions/smssettings.php
@@ -55,6 +55,7 @@ class SmssettingsAction extends ConnectSettingsAction
function title()
{
+ // TRANS: Title for SMS settings.
return _('SMS settings');
}
@@ -66,6 +67,10 @@ class SmssettingsAction extends ConnectSettingsAction
function getInstructions()
{
+ // XXX: For consistency of parameters in messages, this should be a
+ // regular parameters, replaced with sprintf().
+ // TRANS: SMS settings page instructions.
+ // TRANS: %%site.name%% is the name of the site.
return _('You can receive SMS messages through email from %%site.name%%.');
}
@@ -88,6 +93,7 @@ class SmssettingsAction extends ConnectSettingsAction
{
if (!common_config('sms', 'enabled')) {
$this->element('div', array('class' => 'error'),
+ // TRANS: Message given in the SMS settings if SMS is not enabled on the site.
_('SMS is not available.'));
return;
}
@@ -101,7 +107,8 @@ class SmssettingsAction extends ConnectSettingsAction
common_local_url('smssettings')));
$this->elementStart('fieldset', array('id' => 'settings_sms_address'));
- $this->element('legend', null, _('Address'));
+ // TRANS: Form legend for SMS settings form.
+ $this->element('legend', null, _('SMS address'));
$this->hidden('token', common_session_token());
if ($user->sms) {
@@ -109,10 +116,12 @@ class SmssettingsAction extends ConnectSettingsAction
$this->element('p', 'form_confirmed',
$user->sms . ' (' . $carrier->name . ')');
$this->element('p', 'form_guide',
+ // TRANS: Form guide in SMS settings form.
_('Current confirmed SMS-enabled phone number.'));
$this->hidden('sms', $user->sms);
$this->hidden('carrier', $user->carrier);
- $this->submit('remove', _('Remove'));
+ // TRANS: Button label to remove a confirmed SMS address.
+ $this->submit('remove', _m('BUTTON','Remove'));
} else {
$confirm = $this->getConfirmation();
if ($confirm) {
@@ -120,57 +129,75 @@ class SmssettingsAction extends ConnectSettingsAction
$this->element('p', 'form_unconfirmed',
$confirm->address . ' (' . $carrier->name . ')');
$this->element('p', 'form_guide',
+ // TRANS: Form guide in IM settings form.
_('Awaiting confirmation on this phone number.'));
$this->hidden('sms', $confirm->address);
$this->hidden('carrier', $confirm->address_extra);
- $this->submit('cancel', _('Cancel'));
+ // TRANS: Button label to cancel a SMS address confirmation procedure.
+ $this->submit('cancel', _m('BUTTON','Cancel'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Field label for SMS address input in SMS settings form.
$this->input('code', _('Confirmation code'), null,
+ // TRANS: Form field instructions in SMS settings form.
_('Enter the code you received on your phone.'));
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('confirm', _('Confirm'));
+ // TRANS: Button label to confirm SMS confirmation code in SMS settings.
+ $this->submit('confirm', _m('BUTTON','Confirm'));
} else {
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Field label for SMS phone number input in SMS settings form.
$this->input('sms', _('SMS phone number'),
($this->arg('sms')) ? $this->arg('sms') : null,
+ // TRANS: SMS phone number input field instructions in SMS settings form.
_('Phone number, no punctuation or spaces, '.
'with area code'));
$this->elementEnd('li');
$this->elementEnd('ul');
$this->carrierSelect();
- $this->submit('add', _('Add'));
+ // TRANS: Button label for adding a SMS phone number in SMS settings form.
+ $this->submit('add', _m('BUTTON','Add'));
}
}
$this->elementEnd('fieldset');
if ($user->sms) {
$this->elementStart('fieldset', array('id' => 'settings_sms_incoming_email'));
+ // XXX: Confused! This is about SMS. Should this message be updated?
+ // TRANS: Form legend for incoming SMS settings form.
$this->element('legend', null, _('Incoming email'));
if ($user->incomingemail) {
$this->element('p', 'form_unconfirmed', $user->incomingemail);
$this->element('p', 'form_note',
+ // XXX: Confused! This is about SMS. Should this message be updated?
+ // TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
_('Send email to this address to post new notices.'));
- $this->submit('removeincoming', _('Remove'));
+ // TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+ $this->submit('removeincoming', _m('BUTTON','Remove'));
}
$this->element('p', 'form_guide',
+ // XXX: Confused! This is about SMS. Should this message be updated?
+ // TRANS: Instructions for incoming SMS e-mail address input form.
_('Make a new email address for posting to; '.
'cancels the old one.'));
- $this->submit('newincoming', _('New'));
+ // TRANS: Button label for adding an SMS e-mail address to send notices from.
+ $this->submit('newincoming', _m('BUTTON','New'));
$this->elementEnd('fieldset');
}
$this->elementStart('fieldset', array('id' => 'settings_sms_preferences'));
- $this->element('legend', null, _('Preferences'));
+ // TRANS: Form legend for SMS preferences form.
+ $this->element('legend', null, _('SMS preferences'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
$this->checkbox('smsnotify',
+ // TRANS: Checkbox label in SMS preferences form.
_('Send me notices through SMS; '.
'I understand I may incur '.
'exorbitant charges from my carrier.'),
@@ -178,7 +205,8 @@ class SmssettingsAction extends ConnectSettingsAction
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('save', _('Save'));
+ // TRANS: Button label to save SMS preferences.
+ $this->submit('save', _m('BUTTON','Save'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
@@ -245,6 +273,7 @@ class SmssettingsAction extends ConnectSettingsAction
} else if ($this->arg('confirm')) {
$this->confirmCode();
} else {
+ // TRANS: Message given submitting a form with an unknown action in SMS settings.
$this->showForm(_('Unexpected form submission.'));
}
}
@@ -275,13 +304,15 @@ class SmssettingsAction extends ConnectSettingsAction
if ($result === false) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error updating SMS preferences.
$this->serverError(_('Couldn\'t update user.'));
return;
}
$user->query('COMMIT');
- $this->showForm(_('Preferences saved.'), true);
+ // TRANS: Confirmation message for successful SMS preferences save.
+ $this->showForm(_('SMS preferences saved.'), true);
}
/**
@@ -303,11 +334,13 @@ class SmssettingsAction extends ConnectSettingsAction
// Some validation
if (!$sms) {
+ // TRANS: Message given saving SMS phone number without having provided one.
$this->showForm(_('No phone number.'));
return;
}
if (!$carrier_id) {
+ // TRANS: Message given saving SMS phone number without having selected a carrier.
$this->showForm(_('No carrier selected.'));
return;
}
@@ -315,9 +348,11 @@ class SmssettingsAction extends ConnectSettingsAction
$sms = common_canonical_sms($sms);
if ($user->sms == $sms) {
+ // TRANS: Message given saving SMS phone number that is already set.
$this->showForm(_('That is already your phone number.'));
return;
} else if ($this->smsExists($sms)) {
+ // TRANS: Message given saving SMS phone number that is already set for another user.
$this->showForm(_('That phone number already belongs to another user.'));
return;
}
@@ -334,6 +369,7 @@ class SmssettingsAction extends ConnectSettingsAction
if ($result === false) {
common_log_db_error($confirm, 'INSERT', __FILE__);
+ // TRANS: Server error thrown on database error adding SMS confirmation code.
$this->serverError(_('Couldn\'t insert confirmation code.'));
return;
}
@@ -344,6 +380,7 @@ class SmssettingsAction extends ConnectSettingsAction
$user->nickname,
$carrier->toEmailAddress($sms));
+ // TRANS: Message given saving valid SMS phone number that is to be confirmed.
$msg = _('A confirmation code was sent to the phone number you added. '.
'Check your phone for the code and instructions '.
'on how to use it.');
@@ -367,10 +404,12 @@ class SmssettingsAction extends ConnectSettingsAction
$confirm = $this->getConfirmation();
if (!$confirm) {
+ // TRANS: Message given canceling SMS phone number confirmation that is not pending.
$this->showForm(_('No pending confirmation to cancel.'));
return;
}
if ($confirm->address != $sms) {
+ // TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
$this->showForm(_('That is the wrong confirmation number.'));
return;
}
@@ -379,11 +418,13 @@ class SmssettingsAction extends ConnectSettingsAction
if (!$result) {
common_log_db_error($confirm, 'DELETE', __FILE__);
+ // TRANS: Server error thrown on database error canceling SMS phone number confirmation.
$this->serverError(_('Couldn\'t delete email confirmation.'));
return;
}
- $this->showForm(_('Confirmation cancelled.'), true);
+ // TRANS: Message given after successfully canceling SMS phone number confirmation.
+ $this->showForm(_('SMS confirmation cancelled.'), true);
}
/**
@@ -402,6 +443,8 @@ class SmssettingsAction extends ConnectSettingsAction
// Maybe an old tab open...?
if ($user->sms != $sms) {
+ // TRANS: Message given trying to remove an SMS phone number that is not
+ // TRANS: registered for the active user.
$this->showForm(_('That is not your phone number.'));
return;
}
@@ -417,12 +460,14 @@ class SmssettingsAction extends ConnectSettingsAction
$result = $user->updateKeys($original);
if (!$result) {
common_log_db_error($user, 'UPDATE', __FILE__);
+ // TRANS: Server error thrown on database error removing a registered SMS phone number.
$this->serverError(_('Couldn\'t update user.'));
return;
}
$user->query('COMMIT');
- $this->showForm(_('The address was removed.'), true);
+ // TRANS: Message given after successfully removing a registered SMS phone number.
+ $this->showForm(_('The SMS phone number was removed.'), true);
}
/**
@@ -462,10 +507,12 @@ class SmssettingsAction extends ConnectSettingsAction
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Label for mobile carrier dropdown menu in SMS settings.
$this->element('label', array('for' => 'carrier'), _('Mobile carrier'));
$this->elementStart('select', array('name' => 'carrier',
'id' => 'carrier'));
$this->element('option', array('value' => 0),
+ // TRANS: Default option for mobile carrier dropdown menu in SMS settings.
_('Select a carrier'));
while ($carrier->fetch()) {
$this->element('option', array('value' => $carrier->id),
@@ -473,6 +520,8 @@ class SmssettingsAction extends ConnectSettingsAction
}
$this->elementEnd('select');
$this->element('p', 'form_guide',
+ // TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+ // TRANS: %s is an administrative contact's e-mail address.
sprintf(_('Mobile carrier for your phone. '.
'If you know a carrier that accepts ' .
'SMS over email but isn\'t listed here, ' .
@@ -495,6 +544,7 @@ class SmssettingsAction extends ConnectSettingsAction
$code = $this->trimmed('code');
if (!$code) {
+ // TRANS: Message given saving SMS phone number confirmation code without having provided one.
$this->showForm(_('No code entered'));
return;
}
diff --git a/actions/snapshotadminpanel.php b/actions/snapshotadminpanel.php
index a0c2315bc..be0a793e5 100644
--- a/actions/snapshotadminpanel.php
+++ b/actions/snapshotadminpanel.php
@@ -124,13 +124,13 @@ class SnapshotadminpanelAction extends AdminPanelAction
// Validate snapshot run value
if (!in_array($values['snapshot']['run'], array('web', 'cron', 'never'))) {
- $this->clientError(_("Invalid snapshot run value."));
+ $this->clientError(_('Invalid snapshot run value.'));
}
// Validate snapshot frequency value
if (!Validate::number($values['snapshot']['frequency'])) {
- $this->clientError(_("Snapshot frequency must be a number."));
+ $this->clientError(_('Snapshot frequency must be a number.'));
}
// Validate report URL
@@ -141,7 +141,7 @@ class SnapshotadminpanelAction extends AdminPanelAction
array('allowed_schemes' => array('http', 'https')
)
)) {
- $this->clientError(_("Invalid snapshot report URL."));
+ $this->clientError(_('Invalid snapshot report URL.'));
}
}
}
@@ -197,7 +197,7 @@ class SnapshotAdminPanelForm extends AdminForm
$this->out->elementStart('ul', 'form_data');
$this->li();
$snapshot = array(
- 'web' => _('Randomly during Web hit'),
+ 'web' => _('Randomly during web hit'),
'cron' => _('In a scheduled job'),
'never' => _('Never')
);
diff --git a/actions/subscribers.php b/actions/subscribers.php
index 4bced6284..2845a498e 100644
--- a/actions/subscribers.php
+++ b/actions/subscribers.php
@@ -157,10 +157,36 @@ class SubscribersListItem extends SubscriptionListItem
$user = common_current_user();
if (!empty($user) && $this->owner->id == $user->id) {
- $bf = new BlockForm($this->out, $this->profile,
- array('action' => 'subscribers',
- 'nickname' => $this->owner->nickname));
+ $returnto = array('action' => 'subscribers',
+ 'nickname' => $this->owner->nickname);
+ $page = $this->out->arg('page');
+ if ($page) {
+ $returnto['param-page'] = $page;
+ }
+ $bf = new BlockForm($this->out, $this->profile, $returnto);
$bf->show();
}
}
+
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'subscribers')) {
+ $aAttrs['rel'] .= ' nofollow';
+ }
+
+ return $aAttrs;
+ }
+
+ function homepageAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ if (common_config('nofollow', 'subscribers')) {
+ $aAttrs['rel'] = 'nofollow';
+ }
+
+ return $aAttrs;
+ }
}
diff --git a/actions/subscriptions.php b/actions/subscriptions.php
index ba6171ef4..7b10b3425 100644
--- a/actions/subscriptions.php
+++ b/actions/subscriptions.php
@@ -196,12 +196,30 @@ class SubscriptionsListItem extends SubscriptionListItem
$this->out->hidden('token', common_session_token());
$this->out->hidden('profile', $this->profile->id);
if (common_config('xmpp', 'enabled')) {
- $this->out->checkbox('jabber', _('Jabber'), $sub->jabber);
+ $attrs = array('name' => 'jabber',
+ 'type' => 'checkbox',
+ 'class' => 'checkbox',
+ 'id' => 'jabber-'.$this->profile->id);
+ if ($sub->jabber) {
+ $attrs['checked'] = 'checked';
+ }
+
+ $this->out->element('input', $attrs);
+ $this->out->element('label', array('for' => 'jabber-'.$this->profile->id), _('Jabber'));
} else {
$this->out->hidden('jabber', $sub->jabber);
}
if (common_config('sms', 'enabled')) {
- $this->out->checkbox('sms', _('SMS'), $sub->sms);
+ $attrs = array('name' => 'sms',
+ 'type' => 'checkbox',
+ 'class' => 'checkbox',
+ 'id' => 'sms-'.$this->profile->id);
+ if ($sub->sms) {
+ $attrs['checked'] = 'checked';
+ }
+
+ $this->out->element('input', $attrs);
+ $this->out->element('label', array('for' => 'sms-'.$this->profile->id), _('SMS'));
} else {
$this->out->hidden('sms', $sub->sms);
}
diff --git a/actions/tag.php b/actions/tag.php
index ee9617b66..7c6f99d92 100644
--- a/actions/tag.php
+++ b/actions/tag.php
@@ -49,7 +49,7 @@ class TagAction extends Action
if($this->page > 1 && $this->notice->N == 0){
// TRANS: Server error when page not found (404)
- $this->serverError(_('No such page'),$code=404);
+ $this->serverError(_('No such page.'),$code=404);
}
return true;
@@ -102,12 +102,17 @@ class TagAction extends Action
function showContent()
{
- $nl = new NoticeList($this->notice, $this);
+ if(Event::handle('StartTagShowContent', array($this))) {
+
+ $nl = new NoticeList($this->notice, $this);
- $cnt = $nl->show();
+ $cnt = $nl->show();
- $this->pagination($this->page > 1, $cnt > NOTICES_PER_PAGE,
- $this->page, 'tag', array('tag' => $this->tag));
+ $this->pagination($this->page > 1, $cnt > NOTICES_PER_PAGE,
+ $this->page, 'tag', array('tag' => $this->tag));
+
+ Event::handle('EndTagShowContent', array($this));
+ }
}
function isReadOnly($args)
diff --git a/actions/unsandbox.php b/actions/unsandbox.php
index 22f4d8e76..d50b5072e 100644
--- a/actions/unsandbox.php
+++ b/actions/unsandbox.php
@@ -62,14 +62,14 @@ class UnsandboxAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::SANDBOXUSER)) {
- $this->clientError(_("You cannot sandbox users on this site."));
+ $this->clientError(_('You cannot sandbox users on this site.'));
return false;
}
assert(!empty($this->profile)); // checked by parent
if (!$this->profile->isSandboxed()) {
- $this->clientError(_("User is not sandboxed."));
+ $this->clientError(_('User is not sandboxed.'));
return false;
}
diff --git a/actions/unsilence.php b/actions/unsilence.php
index 9ff1b828b..7d282c366 100644
--- a/actions/unsilence.php
+++ b/actions/unsilence.php
@@ -62,14 +62,14 @@ class UnsilenceAction extends ProfileFormAction
assert(!empty($cur)); // checked by parent
if (!$cur->hasRight(Right::SILENCEUSER)) {
- $this->clientError(_("You cannot silence users on this site."));
+ $this->clientError(_('You cannot silence users on this site.'));
return false;
}
assert(!empty($this->profile)); // checked by parent
if (!$this->profile->isSilenced()) {
- $this->clientError(_("User is not silenced."));
+ $this->clientError(_('User is not silenced.'));
return false;
}
diff --git a/actions/unsubscribe.php b/actions/unsubscribe.php
index 6bb10d448..57ca15d68 100644
--- a/actions/unsubscribe.php
+++ b/actions/unsubscribe.php
@@ -74,7 +74,7 @@ class UnsubscribeAction extends Action
$other_id = $this->arg('unsubscribeto');
if (!$other_id) {
- $this->clientError(_('No profile id in request.'));
+ $this->clientError(_('No profile ID in request.'));
return;
}
diff --git a/actions/userauthorization.php b/actions/userauthorization.php
index 7f71c60db..e896ff96c 100644
--- a/actions/userauthorization.php
+++ b/actions/userauthorization.php
@@ -69,7 +69,7 @@ class UserauthorizationAction extends Action
$profile = $user->getProfile();
if (!$profile) {
common_log_db_error($user, 'SELECT', __FILE__);
- $this->serverError(_('User without matching profile'));
+ $this->serverError(_('User without matching profile.'));
return;
}
diff --git a/actions/usergroups.php b/actions/usergroups.php
index 29bda0a76..6606e76cd 100644
--- a/actions/usergroups.php
+++ b/actions/usergroups.php
@@ -59,8 +59,10 @@ class UsergroupsAction extends OwnerDesignAction
function title()
{
if ($this->page == 1) {
+ // TRANS: Message is used as a page title. %s is a nick name.
return sprintf(_('%s groups'), $this->user->nickname);
} else {
+ // TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
return sprintf(_('%1$s groups, page %2$d'),
$this->user->nickname,
$this->page);
diff --git a/actions/userrss.php b/actions/userrss.php
index e03eb9356..b7078fcaf 100644
--- a/actions/userrss.php
+++ b/actions/userrss.php
@@ -72,7 +72,7 @@ class UserrssAction extends Rss10Action
{
$notice = $this->user->getNotices(
0,
- ($limit == 0) ? NOTICES_PER_PAGE : $limit
+ ($this->limit == 0) ? NOTICES_PER_PAGE : $this->limit
);
$notices = array();
@@ -90,8 +90,10 @@ class UserrssAction extends Rss10Action
$c = array('url' => common_local_url('userrss',
array('nickname' =>
$user->nickname)),
+ // TRANS: Message is used as link title. %s is a user nickname.
'title' => sprintf(_('%s timeline'), $user->nickname),
'link' => $profile->profileurl,
+ // TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
'description' => sprintf(_('Updates from %1$s on %2$s!'),
$user->nickname, common_config('site', 'name')));
return $c;
@@ -103,7 +105,7 @@ class UserrssAction extends Rss10Action
$profile = $user->getProfile();
if (!$profile) {
common_log_db_error($user, 'SELECT', __FILE__);
- $this->serverError(_('User without matching profile'));
+ $this->serverError(_('User without matching profile.'));
return null;
}
$avatar = $profile->getAvatar(AVATAR_PROFILE_SIZE);
diff --git a/actions/version.php b/actions/version.php
index b6593e5ed..9e4e836d2 100644
--- a/actions/version.php
+++ b/actions/version.php
@@ -41,6 +41,8 @@ if (!defined('STATUSNET')) {
* @category Info
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
* @link http://status.net/
*/
diff --git a/avatar/.gitignore b/avatar/.gitignore
index e69de29bb..e69de29bb 100644..100755
--- a/avatar/.gitignore
+++ b/avatar/.gitignore
diff --git a/classes/Conversation.php b/classes/Conversation.php
index ea8bd87b5..f540004ef 100755
--- a/classes/Conversation.php
+++ b/classes/Conversation.php
@@ -63,7 +63,8 @@ class Conversation extends Memcached_DataObject
}
$orig = clone($conv);
- $orig->uri = common_local_url('conversation', array('id' => $id));
+ $orig->uri = common_local_url('conversation', array('id' => $id),
+ null, null, false);
$result = $orig->update($conv);
if (empty($result)) {
diff --git a/classes/Fave.php b/classes/Fave.php
index a04f15e9c..ed4f56aee 100644
--- a/classes/Fave.php
+++ b/classes/Fave.php
@@ -21,7 +21,15 @@ class Fave extends Memcached_DataObject
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
- static function addNew($profile, $notice) {
+ /**
+ * Save a favorite record.
+ * @fixme post-author notification should be moved here
+ *
+ * @param Profile $profile the local or remote user who likes
+ * @param Notice $notice the notice that is liked
+ * @return mixed false on failure, or Fave record on success
+ */
+ static function addNew(Profile $profile, Notice $notice) {
$fave = null;
@@ -67,13 +75,13 @@ class Fave extends Memcached_DataObject
return Memcached_DataObject::pkeyGet('Fave', $kv);
}
- function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false)
+ function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $own=false, $since_id=0, $max_id=0)
{
$ids = Notice::stream(array('Fave', '_streamDirect'),
array($user_id, $own),
($own) ? 'fave:ids_by_user_own:'.$user_id :
'fave:ids_by_user:'.$user_id,
- $offset, $limit);
+ $offset, $limit, $since_id, $max_id);
return $ids;
}
diff --git a/classes/File.php b/classes/File.php
index 33273bbdc..407fd3211 100644
--- a/classes/File.php
+++ b/classes/File.php
@@ -116,7 +116,11 @@ class File extends Memcached_DataObject
return false;
}
- function processNew($given_url, $notice_id=null) {
+ /**
+ * @fixme refactor this mess, it's gotten pretty scary.
+ * @param bool $followRedirects
+ */
+ function processNew($given_url, $notice_id=null, $followRedirects=true) {
if (empty($given_url)) return -1; // error, no url to process
$given_url = File_redirection::_canonUrl($given_url);
if (empty($given_url)) return -1; // error, no url to process
@@ -124,6 +128,10 @@ class File extends Memcached_DataObject
if (empty($file)) {
$file_redir = File_redirection::staticGet('url', $given_url);
if (empty($file_redir)) {
+ // @fixme for new URLs this also looks up non-redirect data
+ // such as target content type, size, etc, which we need
+ // for File::saveNew(); so we call it even if not following
+ // new redirects.
$redir_data = File_redirection::where($given_url);
if (is_array($redir_data)) {
$redir_url = $redir_data['url'];
@@ -131,14 +139,23 @@ class File extends Memcached_DataObject
$redir_url = $redir_data;
$redir_data = array();
} else {
- throw new ServerException("Can't process url '$given_url'");
+ // TRANS: Server exception thrown when a URL cannot be processed.
+ throw new ServerException(sprintf(_("Cannot process URL '%s'"), $given_url));
}
// TODO: max field length
- if ($redir_url === $given_url || strlen($redir_url) > 255) {
+ if ($redir_url === $given_url || strlen($redir_url) > 255 || !$followRedirects) {
$x = File::saveNew($redir_data, $given_url);
$file_id = $x->id;
} else {
- $x = File::processNew($redir_url, $notice_id);
+ // This seems kind of messed up... for now skipping this part
+ // if we're already under a redirect, so we don't go into
+ // horrible infinite loops if we've been given an unstable
+ // redirect (where the final destination of the first request
+ // doesn't match what we get when we ask for it again).
+ //
+ // Seen in the wild with clojure.org, which redirects through
+ // wikispaces for auth and appends session data in the URL params.
+ $x = File::processNew($redir_url, $notice_id, /*followRedirects*/false);
$file_id = $x->id;
File_redirection::saveNew($redir_data, $file_id, $given_url);
}
@@ -153,7 +170,9 @@ class File extends Memcached_DataObject
if (empty($x)) {
$x = File::staticGet($file_id);
if (empty($x)) {
- throw new ServerException("Robin thinks something is impossible.");
+ // FIXME: This could possibly be a clearer message :)
+ // TRANS: Server exception thrown when... Robin thinks something is impossible!
+ throw new ServerException(_("Robin thinks something is impossible."));
}
}
@@ -166,8 +185,10 @@ class File extends Memcached_DataObject
function isRespectsQuota($user,$fileSize) {
if ($fileSize > common_config('attachments', 'file_quota')) {
- return sprintf(_('No file may be larger than %d bytes ' .
- 'and the file you sent was %d bytes. Try to upload a smaller version.'),
+ // TRANS: Message given if an upload is larger than the configured maximum.
+ // TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+ return sprintf(_('No file may be larger than %1$d bytes ' .
+ 'and the file you sent was %2$d bytes. Try to upload a smaller version.'),
common_config('attachments', 'file_quota'), $fileSize);
}
@@ -176,6 +197,8 @@ class File extends Memcached_DataObject
$this->fetch();
$total = $this->total + $fileSize;
if ($total > common_config('attachments', 'user_quota')) {
+ // TRANS: Message given if an upload would exceed user quota.
+ // TRANS: %d (number) is the user quota in bytes.
return sprintf(_('A file this large would exceed your user quota of %d bytes.'), common_config('attachments', 'user_quota'));
}
$query .= ' AND EXTRACT(month FROM file.modified) = EXTRACT(month FROM now()) and EXTRACT(year FROM file.modified) = EXTRACT(year FROM now())';
@@ -183,6 +206,8 @@ class File extends Memcached_DataObject
$this->fetch();
$total = $this->total + $fileSize;
if ($total > common_config('attachments', 'monthly_quota')) {
+ // TRANS: Message given id an upload would exceed a user's monthly quota.
+ // TRANS: $d (number) is the monthly user quota in bytes.
return sprintf(_('A file this large would exceed your monthly quota of %d bytes.'), common_config('attachments', 'monthly_quota'));
}
return true;
@@ -219,7 +244,8 @@ class File extends Memcached_DataObject
static function path($filename)
{
if (!self::validFilename($filename)) {
- throw new ClientException("Invalid filename");
+ // TRANS: Client exception thrown if a file upload does not have a valid name.
+ throw new ClientException(_("Invalid filename."));
}
$dir = common_config('attachments', 'dir');
@@ -233,7 +259,8 @@ class File extends Memcached_DataObject
static function url($filename)
{
if (!self::validFilename($filename)) {
- throw new ClientException("Invalid filename");
+ // TRANS: Client exception thrown if a file upload does not have a valid name.
+ throw new ClientException(_("Invalid filename."));
}
if(common_config('site','private')) {
@@ -286,7 +313,10 @@ class File extends Memcached_DataObject
if(! isset($this->filename)){
$notEnclosureMimeTypes = array(null,'text/html','application/xhtml+xml');
- $mimetype = strtolower($this->mimetype);
+ $mimetype = $this->mimetype;
+ if($mimetype != null){
+ $mimetype = strtolower($this->mimetype);
+ }
$semicolon = strpos($mimetype,';');
if($semicolon){
$mimetype = substr($mimetype,0,$semicolon);
@@ -323,4 +353,3 @@ class File extends Memcached_DataObject
return !empty($enclosure);
}
}
-
diff --git a/classes/Foreign_user.php b/classes/Foreign_user.php
index 0dd94ffb9..e98a16064 100644
--- a/classes/Foreign_user.php
+++ b/classes/Foreign_user.php
@@ -39,6 +39,22 @@ class Foreign_user extends Memcached_DataObject
return null;
}
+ static function getByNickname($nickname, $service)
+ {
+ if (empty($nickname) || empty($service)) {
+ return null;
+ } else {
+ $fuser = new Foreign_user();
+ $fuser->service = $service;
+ $fuser->nickname = $nickname;
+ $fuser->limit(1);
+
+ $result = $fuser->find(true);
+
+ return empty($result) ? null : $fuser;
+ }
+ }
+
function updateKeys(&$orig)
{
$this->_connect();
diff --git a/classes/Group_member.php b/classes/Group_member.php
index 7b1760f76..2239461be 100644
--- a/classes/Group_member.php
+++ b/classes/Group_member.php
@@ -38,6 +38,7 @@ class Group_member extends Memcached_DataObject
if (!$result) {
common_log_db_error($member, 'INSERT', __FILE__);
+ // TRANS: Exception thrown when joining a group fails.
throw new Exception(_("Group join failed."));
}
@@ -50,6 +51,7 @@ class Group_member extends Memcached_DataObject
'profile_id' => $profile_id));
if (empty($member)) {
+ // TRANS: Exception thrown when trying to leave a group the user is not a member of.
throw new Exception(_("Not part of group."));
}
@@ -57,6 +59,7 @@ class Group_member extends Memcached_DataObject
if (!$result) {
common_log_db_error($member, 'INSERT', __FILE__);
+ // TRANS: Exception thrown when trying to leave a group fails.
throw new Exception(_("Group leave failed."));
}
diff --git a/classes/Inbox.php b/classes/Inbox.php
index 014ba3d82..430419ba5 100644
--- a/classes/Inbox.php
+++ b/classes/Inbox.php
@@ -96,17 +96,31 @@ class Inbox extends Memcached_DataObject
$inbox = new Inbox();
$inbox->user_id = $user_id;
- $inbox->notice_ids = call_user_func_array('pack', array_merge(array('N*'), $ids));
+ $inbox->pack($ids);
$inbox->fake = true;
return $inbox;
}
+ /**
+ * Append the given notice to the given user's inbox.
+ * Caching updates are managed for the inbox itself.
+ *
+ * If the notice is already in this inbox, the second
+ * add will be silently dropped.
+ *
+ * @param int @user_id
+ * @param int $notice_id
+ * @return boolean success
+ */
static function insertNotice($user_id, $notice_id)
{
- $inbox = DB_DataObject::staticGet('inbox', 'user_id', $user_id);
-
- if (empty($inbox)) {
+ // Going straight to the DB rather than trusting our caching
+ // during an update. Note: not using DB_DataObject::staticGet,
+ // which is unsafe to use directly (in-process caching causes
+ // memory leaks, which accumulate in queue processes).
+ $inbox = new Inbox();
+ if (!$inbox->get('user_id', $user_id)) {
$inbox = Inbox::initialize($user_id);
}
@@ -114,6 +128,13 @@ class Inbox extends Memcached_DataObject
return false;
}
+ $ids = $inbox->unpack();
+ if (in_array(intval($notice_id), $ids)) {
+ // Already in there, we probably re-ran some inbox adds
+ // due to an error. Skip the dupe silently.
+ return true;
+ }
+
$result = $inbox->query(sprintf('UPDATE inbox '.
'set notice_ids = concat(cast(0x%08x as binary(4)), '.
'substr(notice_ids, 1, %d)) '.
@@ -150,7 +171,7 @@ class Inbox extends Memcached_DataObject
}
}
- $ids = unpack('N*', $inbox->notice_ids);
+ $ids = $inbox->unpack();
if (!empty($since_id)) {
$newids = array();
@@ -229,4 +250,21 @@ class Inbox extends Memcached_DataObject
}
return new ArrayWrapper($items);
}
+
+ /**
+ * Saves a list of integer notice_ids into a packed blob in this object.
+ * @param array $ids list of integer notice_ids
+ */
+ protected function pack(array $ids)
+ {
+ $this->notice_ids = call_user_func_array('pack', array_merge(array('N*'), $ids));
+ }
+
+ /**
+ * @return array of integer notice_ids
+ */
+ protected function unpack()
+ {
+ return unpack('N*', $this->notice_ids);
+ }
}
diff --git a/classes/Local_group.php b/classes/Local_group.php
index 42312ec63..ccd0125cf 100644
--- a/classes/Local_group.php
+++ b/classes/Local_group.php
@@ -38,6 +38,7 @@ class Local_group extends Memcached_DataObject
$this->encache();
} else {
common_log_db_error($local, 'UPDATE', __FILE__);
+ // TRANS: Server exception thrown when updating a local group fails.
throw new ServerException(_('Could not update local group.'));
}
diff --git a/classes/Login_token.php b/classes/Login_token.php
index 51dc61262..20d5d9dbc 100644
--- a/classes/Login_token.php
+++ b/classes/Login_token.php
@@ -73,6 +73,8 @@ class Login_token extends Memcached_DataObject
if (!$result) {
common_log_db_error($login_token, 'INSERT', __FILE__);
+ // TRANS: Exception thrown when trying creating a login token failed.
+ // TRANS: %s is the user nickname for which token creation failed.
throw new Exception(sprintf(_('Could not create login token for %s'),
$user->nickname));
}
diff --git a/classes/Memcached_DataObject.php b/classes/Memcached_DataObject.php
index bc4c3a000..0f1ed0489 100644
--- a/classes/Memcached_DataObject.php
+++ b/classes/Memcached_DataObject.php
@@ -128,12 +128,13 @@ class Memcached_DataObject extends Safe_DataObject
}
static function cacheKey($cls, $k, $v) {
- if (is_object($cls) || is_object($k) || is_object($v)) {
+ if (is_object($cls) || is_object($k) || (is_object($v) && !($v instanceof DB_DataObject_Cast))) {
$e = new Exception();
common_log(LOG_ERR, __METHOD__ . ' object in param: ' .
str_replace("\n", " ", $e->getTraceAsString()));
}
- return common_cache_key(strtolower($cls).':'.$k.':'.$v);
+ $vstr = self::valueString($v);
+ return common_cache_key(strtolower($cls).':'.$k.':'.$vstr);
}
static function getcached($cls, $k, $v) {
@@ -229,11 +230,12 @@ class Memcached_DataObject extends Safe_DataObject
if (empty($this->$key)) {
continue;
}
- $ckeys[] = $this->cacheKey($this->tableName(), $key, $this->$key);
+ $ckeys[] = $this->cacheKey($this->tableName(), $key, self::valueString($this->$key));
} else if ($type == 'K' || $type == 'N') {
$pkey[] = $key;
- $pval[] = $this->$key;
+ $pval[] = self::valueString($this->$key);
} else {
+ // Low level exception. No need for i18n as discussed with Brion.
throw new Exception("Unknown key type $key => $type for " . $this->tableName());
}
}
@@ -281,6 +283,7 @@ class Memcached_DataObject extends Safe_DataObject
} else if ($type == 'fulltext') {
$search_engine = new MySQLSearch($this, $table);
} else {
+ // Low level exception. No need for i18n as discussed with Brion.
throw new ServerException('Unknown search type: ' . $type);
}
} else {
@@ -330,6 +333,10 @@ class Memcached_DataObject extends Safe_DataObject
*/
function _query($string)
{
+ if (common_config('db', 'annotate_queries')) {
+ $string = $this->annotateQuery($string);
+ }
+
$start = microtime(true);
$result = parent::_query($string);
$delta = microtime(true) - $start;
@@ -342,6 +349,70 @@ class Memcached_DataObject extends Safe_DataObject
return $result;
}
+ /**
+ * Find the first caller in the stack trace that's not a
+ * low-level database function and add a comment to the
+ * query string. This should then be visible in process lists
+ * and slow query logs, to help identify problem areas.
+ *
+ * Also marks whether this was a web GET/POST or which daemon
+ * was running it.
+ *
+ * @param string $string SQL query string
+ * @return string SQL query string, with a comment in it
+ */
+ function annotateQuery($string)
+ {
+ $ignore = array('annotateQuery',
+ '_query',
+ 'query',
+ 'get',
+ 'insert',
+ 'delete',
+ 'update',
+ 'find');
+ $ignoreStatic = array('staticGet',
+ 'pkeyGet',
+ 'cachedQuery');
+ $here = get_class($this); // if we get confused
+ $bt = debug_backtrace();
+
+ // Find the first caller that's not us?
+ foreach ($bt as $frame) {
+ $func = $frame['function'];
+ if (isset($frame['type']) && $frame['type'] == '::') {
+ if (in_array($func, $ignoreStatic)) {
+ continue;
+ }
+ $here = $frame['class'] . '::' . $func;
+ break;
+ } else if (isset($frame['type']) && $frame['type'] == '->') {
+ if ($frame['object'] === $this && in_array($func, $ignore)) {
+ continue;
+ }
+ if (in_array($func, $ignoreStatic)) {
+ continue; // @fixme this shouldn't be needed?
+ }
+ $here = get_class($frame['object']) . '->' . $func;
+ break;
+ }
+ $here = $func;
+ break;
+ }
+
+ if (php_sapi_name() == 'cli') {
+ $context = basename($_SERVER['PHP_SELF']);
+ } else {
+ $context = $_SERVER['REQUEST_METHOD'];
+ }
+
+ // Slip the comment in after the first command,
+ // or DB_DataObject gets confused about handling inserts and such.
+ $parts = explode(' ', $string, 2);
+ $parts[0] .= " /* $context $here */";
+ return implode(' ', $parts);
+ }
+
// Sanitize a query for logging
// @fixme don't trim spaces in string literals
function sanitizeQuery($string)
@@ -458,7 +529,8 @@ class Memcached_DataObject extends Safe_DataObject
}
if (!$dsn) {
- throw new Exception("No database name / dsn found anywhere");
+ // TRANS: Exception thrown when database name or Data Source Name could not be found.
+ throw new Exception(_("No database name or DSN found anywhere."));
}
return $dsn;
@@ -502,9 +574,13 @@ class Memcached_DataObject extends Safe_DataObject
function raiseError($message, $type = null, $behaviour = null)
{
$id = get_class($this);
- if ($this->id) {
+ if (!empty($this->id)) {
$id .= ':' . $this->id;
}
+ if ($message instanceof PEAR_Error) {
+ $message = $message->getMessage();
+ }
+ // Low level exception. No need for i18n as discussed with Brion.
throw new ServerException("[$id] DB_DataObject error [$type]: $message");
}
@@ -521,7 +597,7 @@ class Memcached_DataObject extends Safe_DataObject
return $c->get($cacheKey);
}
- static function cacheSet($keyPart, $value)
+ static function cacheSet($keyPart, $value, $flag=null, $expiry=null)
{
$c = self::memcache();
@@ -531,7 +607,34 @@ class Memcached_DataObject extends Safe_DataObject
$cacheKey = common_cache_key($keyPart);
- return $c->set($cacheKey, $value);
+ return $c->set($cacheKey, $value, $flag, $expiry);
+ }
+
+ static function valueString($v)
+ {
+ $vstr = null;
+ if (is_object($v) && $v instanceof DB_DataObject_Cast) {
+ switch ($v->type) {
+ case 'date':
+ $vstr = $v->year . '-' . $v->month . '-' . $v->day;
+ break;
+ case 'blob':
+ case 'string':
+ case 'sql':
+ case 'datetime':
+ case 'time':
+ // Low level exception. No need for i18n as discussed with Brion.
+ throw new ServerException("Unhandled DB_DataObject_Cast type passed as cacheKey value: '$v->type'");
+ break;
+ default:
+ // Low level exception. No need for i18n as discussed with Brion.
+ throw new ServerException("Unknown DB_DataObject_Cast type passed as cacheKey value: '$v->type'");
+ break;
+ }
+ } else {
+ $vstr = strval($v);
+ }
+ return $vstr;
}
}
diff --git a/classes/Message.php b/classes/Message.php
index 16d0c60b3..fa0c5b318 100644
--- a/classes/Message.php
+++ b/classes/Message.php
@@ -42,6 +42,7 @@ class Message extends Memcached_DataObject
$sender = Profile::staticGet('id', $from);
if (!$sender->hasRight(Right::NEWMESSAGE)) {
+ // TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
throw new ClientException(_('You are banned from sending direct messages.'));
}
@@ -58,6 +59,7 @@ class Message extends Memcached_DataObject
if (!$result) {
common_log_db_error($msg, 'INSERT', __FILE__);
+ // TRANS: Message given when a message could not be stored on the server.
return _('Could not insert message.');
}
@@ -68,6 +70,7 @@ class Message extends Memcached_DataObject
if (!$result) {
common_log_db_error($msg, 'UPDATE', __FILE__);
+ // TRANS: Message given when a message could not be updated on the server.
return _('Could not update message with new URI.');
}
diff --git a/classes/Notice.php b/classes/Notice.php
index f7194e339..0eeebfadf 100644
--- a/classes/Notice.php
+++ b/classes/Notice.php
@@ -29,6 +29,7 @@
* @author Robin Millette <millette@controlyourself.ca>
* @author Sarven Capadisli <csarven@controlyourself.ca>
* @author Tom Adams <tom@holizz.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license GNU Affero General Public License http://www.gnu.org/licenses/
*/
@@ -41,10 +42,10 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
*/
require_once INSTALLDIR.'/classes/Memcached_DataObject.php';
-/* We keep the first three 20-notice pages, plus one for pagination check,
+/* We keep 200 notices, the max number of notices available per API request,
* in the memcached cache. */
-define('NOTICE_CACHE_WINDOW', 61);
+define('NOTICE_CACHE_WINDOW', 200);
define('MAX_BOXCARS', 128);
@@ -89,7 +90,15 @@ class Notice extends Memcached_DataObject
function getProfile()
{
- return Profile::staticGet('id', $this->profile_id);
+ $profile = Profile::staticGet('id', $this->profile_id);
+
+ if (empty($profile)) {
+ // TRANS: Server exception thrown when a user profile for a notice cannot be found.
+ // TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+ throw new ServerException(sprintf(_('No such profile (%1$d) for notice (%2$d).'), $this->profile_id, $this->id));
+ }
+
+ return $profile;
}
function delete()
@@ -97,15 +106,20 @@ class Notice extends Memcached_DataObject
// For auditing purposes, save a record that the notice
// was deleted.
- $deleted = new Deleted_notice();
+ // @fixme we have some cases where things get re-run and so the
+ // insert fails.
+ $deleted = Deleted_notice::staticGet('id', $this->id);
+ if (!$deleted) {
+ $deleted = new Deleted_notice();
- $deleted->id = $this->id;
- $deleted->profile_id = $this->profile_id;
- $deleted->uri = $this->uri;
- $deleted->created = $this->created;
- $deleted->deleted = common_sql_now();
+ $deleted->id = $this->id;
+ $deleted->profile_id = $this->profile_id;
+ $deleted->uri = $this->uri;
+ $deleted->created = $this->created;
+ $deleted->deleted = common_sql_now();
- $deleted->insert();
+ $deleted->insert();
+ }
// Clear related records
@@ -148,11 +162,11 @@ class Notice extends Memcached_DataObject
//turn each into their canonical tag
//this is needed to remove dupes before saving e.g. #hash.tag = #hashtag
for($i=0; $i<count($hashtags); $i++) {
+ /* elide characters we don't want in the tag */
$hashtags[$i] = common_canonical_tag($hashtags[$i]);
}
foreach(array_unique($hashtags) as $hashtag) {
- /* elide characters we don't want in the tag */
$this->saveTag($hashtag);
self::blow('profile:notice_ids_tagged:%d:%s', $this->profile_id, $hashtag);
}
@@ -172,7 +186,8 @@ class Notice extends Memcached_DataObject
$id = $tag->insert();
if (!$id) {
- throw new ServerException(sprintf(_('DB error inserting hashtag: %s'),
+ // TRANS: Server exception. %s are the error details.
+ throw new ServerException(sprintf(_('Database error inserting hashtag: %s'),
$last_error->message));
return;
}
@@ -241,28 +256,34 @@ class Notice extends Memcached_DataObject
$final = common_shorten_links($content);
if (Notice::contentTooLong($final)) {
+ // TRANS: Client exception thrown if a notice contains too many characters.
throw new ClientException(_('Problem saving notice. Too long.'));
}
if (empty($profile)) {
+ // TRANS: Client exception thrown when trying to save a notice for an unknown user.
throw new ClientException(_('Problem saving notice. Unknown user.'));
}
if (common_config('throttle', 'enabled') && !Notice::checkEditThrottle($profile_id)) {
common_log(LOG_WARNING, 'Excessive posting by profile #' . $profile_id . '; throttled.');
+ // TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
throw new ClientException(_('Too many notices too fast; take a breather '.
'and post again in a few minutes.'));
}
if (common_config('site', 'dupelimit') > 0 && !Notice::checkDupes($profile_id, $final)) {
common_log(LOG_WARNING, 'Dupe posting by profile #' . $profile_id . '; throttled.');
+ // TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
throw new ClientException(_('Too many duplicate messages too quickly;'.
' take a breather and post again in a few minutes.'));
}
if (!$profile->hasRight(Right::NEWNOTICE)) {
common_log(LOG_WARNING, "Attempted post from user disallowed to post: " . $profile->nickname);
- throw new ClientException(_('You are banned from posting notices on this site.'));
+
+ // TRANS: Client exception thrown when a user tries to post while being banned.
+ throw new ClientException(_('You are banned from posting notices on this site.'), 403);
}
$notice = new Notice();
@@ -328,6 +349,7 @@ class Notice extends Memcached_DataObject
if (!$id) {
common_log_db_error($notice, 'INSERT', __FILE__);
+ // TRANS: Server exception thrown when a notice cannot be saved.
throw new ServerException(_('Problem saving notice.'));
}
@@ -354,6 +376,7 @@ class Notice extends Memcached_DataObject
if ($changed) {
if (!$notice->update($orig)) {
common_log_db_error($notice, 'UPDATE', __FILE__);
+ // TRANS: Server exception thrown when a notice cannot be updated.
throw new ServerException(_('Problem saving notice.'));
}
}
@@ -373,18 +396,20 @@ class Notice extends Memcached_DataObject
$notice->saveReplies();
}
- if (isset($groups)) {
- $notice->saveKnownGroups($groups);
- } else {
- $notice->saveGroups();
- }
-
if (isset($tags)) {
$notice->saveKnownTags($tags);
} else {
$notice->saveTags();
}
+ // Note: groups may save tags, so must be run after tags are saved
+ // to avoid errors on duplicates.
+ if (isset($groups)) {
+ $notice->saveKnownGroups($groups);
+ } else {
+ $notice->saveGroups();
+ }
+
if (isset($urls)) {
$notice->saveKnownUrls($urls);
} else {
@@ -421,7 +446,9 @@ class Notice extends Memcached_DataObject
}
$profile = Profile::staticGet($this->profile_id);
- $profile->blowNoticeCount();
+ if (!empty($profile)) {
+ $profile->blowNoticeCount();
+ }
}
/**
@@ -458,7 +485,7 @@ class Notice extends Memcached_DataObject
function saveKnownUrls($urls)
{
// @fixme validation?
- foreach ($urls as $url) {
+ foreach (array_unique($urls) as $url) {
File::processNew($url, $this->id);
}
}
@@ -698,6 +725,27 @@ class Notice extends Memcached_DataObject
}
/**
+ * Is this notice part of an active conversation?
+ *
+ * @return boolean true if other messages exist in the same
+ * conversation, false if this is the only one
+ */
+ function hasConversation()
+ {
+ if (!empty($this->conversation)) {
+ $conversation = Notice::conversationStream(
+ $this->conversation,
+ 1,
+ 1
+ );
+ if ($conversation->N > 0) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
* @param $groups array of Group *objects*
* @param $recipients array of profile *ids*
*/
@@ -840,11 +888,12 @@ class Notice extends Memcached_DataObject
function saveKnownGroups($group_ids)
{
if (!is_array($group_ids)) {
- throw new ServerException("Bad type provided to saveKnownGroups");
+ // TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+ throw new ServerException(_("Bad type provided to saveKnownGroups"));
}
$groups = array();
- foreach ($group_ids as $id) {
+ foreach (array_unique($group_ids) as $id) {
$group = User_group::staticGet('id', $id);
if ($group) {
common_log(LOG_ERR, "Local delivery to group id $id, $group->nickname");
@@ -938,6 +987,7 @@ class Notice extends Memcached_DataObject
if (!$result) {
common_log_db_error($gi, 'INSERT', __FILE__);
+ // TRANS: Server exception thrown when an update for a group inbox fails.
throw new ServerException(_('Problem saving group inbox.'));
}
@@ -955,27 +1005,33 @@ class Notice extends Memcached_DataObject
* messages, we won't deliver to any remote targets as that's the
* source service's responsibility.
*
- * @fixme Unlike saveReplies() there's no mail notification here.
- * Move that to distrib queue handler?
+ * Mail notifications etc will be handled later.
*
* @param array of unique identifier URIs for recipients
*/
function saveKnownReplies($uris)
{
- foreach ($uris as $uri) {
+ if (empty($uris)) {
+ return;
+ }
+ $sender = Profile::staticGet($this->profile_id);
+
+ foreach (array_unique($uris) as $uri) {
$user = User::staticGet('uri', $uri);
if (!empty($user)) {
+ if ($user->hasBlocked($sender)) {
+ continue;
+ }
$reply = new Reply();
$reply->notice_id = $this->id;
$reply->profile_id = $user->id;
+ common_log(LOG_INFO, __METHOD__ . ": saving reply: notice $this->id to profile $user->id");
$id = $reply->insert();
-
- self::blow('reply:stream:%d', $user->id);
}
}
@@ -987,8 +1043,7 @@ class Notice extends Memcached_DataObject
* and save reply records indicating that this message needs to be
* delivered to those users.
*
- * Side effect: local recipients get e-mail notifications here.
- * @fixme move mail notifications to distrib?
+ * Mail notifications to local profiles will be sent later.
*
* @return array of integer profile IDs
*/
@@ -1039,26 +1094,26 @@ class Notice extends Memcached_DataObject
if (!$id) {
common_log_db_error($reply, 'INSERT', __FILE__);
- throw new ServerException("Couldn't save reply for {$this->id}, {$mentioned->id}");
+ // TRANS: Server exception thrown when a reply cannot be saved.
+ // TRANS: %1$d is a notice ID, %2$d is the ID of the mentioned user.
+ throw new ServerException(sprintf(_("Could not save reply for %1$d, %2$d."), $this->id, $mentioned->id));
} else {
$replied[$mentioned->id] = 1;
+ self::blow('reply:stream:%d', $mentioned->id);
}
}
}
$recipientIds = array_keys($replied);
- foreach ($recipientIds as $recipientId) {
- $user = User::staticGet('id', $recipientId);
- if (!empty($user)) {
- self::blow('reply:stream:%d', $reply->profile_id);
- mail_notify_attn($user, $this);
- }
- }
-
return $recipientIds;
}
+ /**
+ * Pull the complete list of @-reply targets for this notice.
+ *
+ * @return array of integer profile ids
+ */
function getReplies()
{
// XXX: cache me
@@ -1082,6 +1137,30 @@ class Notice extends Memcached_DataObject
}
/**
+ * Send e-mail notifications to local @-reply targets.
+ *
+ * Replies must already have been saved; this is expected to be run
+ * from the distrib queue handler.
+ */
+ function sendReplyNotifications()
+ {
+ // Don't send reply notifications for repeats
+
+ if (!empty($this->repeat_of)) {
+ return array();
+ }
+
+ $recipientIds = $this->getReplies();
+
+ foreach ($recipientIds as $recipientId) {
+ $user = User::staticGet('id', $recipientId);
+ if (!empty($user)) {
+ mail_notify_attn($user, $this);
+ }
+ }
+ }
+
+ /**
* Pull list of groups this notice needs to be delivered to,
* as previously recorded by saveGroups() or saveKnownGroups().
*
@@ -1120,7 +1199,10 @@ class Notice extends Memcached_DataObject
return $groups;
}
- function asAtomEntry($namespace=false, $source=false, $author=true)
+ // This has gotten way too long. Needs to be sliced up into functional bits
+ // or ideally exported to a utility class.
+
+ function asAtomEntry($namespace=false, $source=false, $author=true, $cur=null)
{
$profile = $this->getProfile();
@@ -1133,149 +1215,332 @@ class Notice extends Memcached_DataObject
'xmlns:activity' => 'http://activitystrea.ms/spec/1.0/',
'xmlns:media' => 'http://purl.org/syndication/atommedia',
'xmlns:poco' => 'http://portablecontacts.net/spec/1.0',
- 'xmlns:ostatus' => 'http://ostatus.org/schema/1.0');
+ 'xmlns:ostatus' => 'http://ostatus.org/schema/1.0',
+ 'xmlns:statusnet' => 'http://status.net/schema/api/1/');
} else {
$attrs = array();
}
- $xs->elementStart('entry', $attrs);
+ if (Event::handle('StartActivityStart', array(&$this, &$xs, &$attrs))) {
+ $xs->elementStart('entry', $attrs);
+ Event::handle('EndActivityStart', array(&$this, &$xs, &$attrs));
+ }
- if ($source) {
- $xs->elementStart('source');
- $xs->element('id', null, $profile->profileurl);
- $xs->element('title', null, $profile->nickname . " - " . common_config('site', 'name'));
- $xs->element('link', array('href' => $profile->profileurl));
- $user = User::staticGet('id', $profile->id);
- if (!empty($user)) {
- $atom_feed = common_local_url('ApiTimelineUser',
- array('format' => 'atom',
- 'id' => $profile->nickname));
- $xs->element('link', array('rel' => 'self',
- 'type' => 'application/atom+xml',
- 'href' => $profile->profileurl));
- $xs->element('link', array('rel' => 'license',
- 'href' => common_config('license', 'url')));
+ if (Event::handle('StartActivitySource', array(&$this, &$xs))) {
+
+ if ($source) {
+
+ $atom_feed = $profile->getAtomFeed();
+
+ if (!empty($atom_feed)) {
+
+ $xs->elementStart('source');
+
+ // XXX: we should store the actual feed ID
+
+ $xs->element('id', null, $atom_feed);
+
+ // XXX: we should store the actual feed title
+
+ $xs->element('title', null, $profile->getBestName());
+
+ $xs->element('link', array('rel' => 'alternate',
+ 'type' => 'text/html',
+ 'href' => $profile->profileurl));
+
+ $xs->element('link', array('rel' => 'self',
+ 'type' => 'application/atom+xml',
+ 'href' => $atom_feed));
+
+ $xs->element('icon', null, $profile->avatarUrl(AVATAR_PROFILE_SIZE));
+
+ $notice = $profile->getCurrentNotice();
+
+ if (!empty($notice)) {
+ $xs->element('updated', null, self::utcDate($notice->created));
+ }
+
+ $user = User::staticGet('id', $profile->id);
+
+ if (!empty($user)) {
+ $xs->element('link', array('rel' => 'license',
+ 'href' => common_config('license', 'url')));
+ }
+
+ $xs->elementEnd('source');
+ }
}
+ Event::handle('EndActivitySource', array(&$this, &$xs));
+ }
+
+ $title = common_xml_safe_str($this->content);
+
+ if (Event::handle('StartActivityTitle', array(&$this, &$xs, &$title))) {
+ $xs->element('title', null, $title);
+ Event::handle('EndActivityTitle', array($this, &$xs, $title));
+ }
+
+ $atomAuthor = '';
- $xs->element('icon', null, $profile->avatarUrl(AVATAR_PROFILE_SIZE));
- $xs->element('updated', null, common_date_w3dtf($this->created));
+ if ($author) {
+ $atomAuthor = $profile->asAtomAuthor($cur);
}
- if ($source) {
- $xs->elementEnd('source');
+ if (Event::handle('StartActivityAuthor', array(&$this, &$xs, &$atomAuthor))) {
+ if (!empty($atomAuthor)) {
+ $xs->raw($atomAuthor);
+ Event::handle('EndActivityAuthor', array(&$this, &$xs, &$atomAuthor));
+ }
}
- $xs->element('title', null, common_xml_safe_str($this->content));
+ $actor = '';
if ($author) {
- $xs->raw($profile->asAtomAuthor());
- $xs->raw($profile->asActivityActor());
+ $actor = $profile->asActivityActor();
+ }
+
+ if (Event::handle('StartActivityActor', array(&$this, &$xs, &$actor))) {
+ if (!empty($actor)) {
+ $xs->raw($actor);
+ Event::handle('EndActivityActor', array(&$this, &$xs, &$actor));
+ }
+ }
+
+ $url = $this->bestUrl();
+
+ if (Event::handle('StartActivityLink', array(&$this, &$xs, &$url))) {
+ $xs->element('link', array('rel' => 'alternate',
+ 'type' => 'text/html',
+ 'href' => $url));
+ Event::handle('EndActivityLink', array(&$this, &$xs, $url));
+ }
+
+ $id = $this->uri;
+
+ if (Event::handle('StartActivityId', array(&$this, &$xs, &$id))) {
+ $xs->element('id', null, $id);
+ Event::handle('EndActivityId', array(&$this, &$xs, $id));
+ }
+
+ $published = self::utcDate($this->created);
+
+ if (Event::handle('StartActivityPublished', array(&$this, &$xs, &$published))) {
+ $xs->element('published', null, $published);
+ Event::handle('EndActivityPublished', array(&$this, &$xs, $published));
+ }
+
+ $updated = $published; // XXX: notices are usually immutable
+
+ if (Event::handle('StartActivityUpdated', array(&$this, &$xs, &$updated))) {
+ $xs->element('updated', null, $updated);
+ Event::handle('EndActivityUpdated', array(&$this, &$xs, $updated));
+ }
+
+ $content = common_xml_safe_str($this->rendered);
+
+ if (Event::handle('StartActivityContent', array(&$this, &$xs, &$content))) {
+ $xs->element('content', array('type' => 'html'), $content);
+ Event::handle('EndActivityContent', array(&$this, &$xs, $content));
}
- $xs->element('link', array('rel' => 'alternate',
- 'type' => 'text/html',
- 'href' => $this->bestUrl()));
+ // Most of our notices represent POSTing a NOTE. This is the default verb
+ // for activity streams, so we normally just leave it out.
- $xs->element('id', null, $this->uri);
+ $verb = ActivityVerb::POST;
- $xs->element('published', null, common_date_w3dtf($this->created));
- $xs->element('updated', null, common_date_w3dtf($this->created));
+ if (Event::handle('StartActivityVerb', array(&$this, &$xs, &$verb))) {
+ $xs->element('activity:verb', null, $verb);
+ Event::handle('EndActivityVerb', array(&$this, &$xs, $verb));
+ }
+
+ // We use the default behavior for activity streams: if there's no activity:object,
+ // then treat the entry itself as the object. Here, you can set the type of that object,
+ // which is normally a NOTE.
+
+ $type = ActivityObject::NOTE;
+
+ if (Event::handle('StartActivityDefaultObjectType', array(&$this, &$xs, &$type))) {
+ $xs->element('activity:object-type', null, $type);
+ Event::handle('EndActivityDefaultObjectType', array(&$this, &$xs, $type));
+ }
+
+ // Since we usually use the entry itself as an object, we don't have an explicit
+ // object. Some extensions may want to add them (for photo, event, music, etc.).
+
+ $objects = array();
+
+ if (Event::handle('StartActivityObjects', array(&$this, &$xs, &$objects))) {
+ foreach ($objects as $object) {
+ $xs->raw($object->asString());
+ }
+ Event::handle('EndActivityObjects', array(&$this, &$xs, $objects));
+ }
+
+ $noticeInfoAttr = array('local_id' => $this->id); // local notice ID (useful to clients for ordering)
+
+ $ns = $this->getSource();
+
+ if (!empty($ns)) {
+ $noticeInfoAttr['source'] = $ns->code;
+ if (!empty($ns->url)) {
+ $noticeInfoAttr['source_link'] = $ns->url;
+ if (!empty($ns->name)) {
+ $noticeInfoAttr['source'] = '<a href="'
+ . htmlspecialchars($ns->url)
+ . '" rel="nofollow">'
+ . htmlspecialchars($ns->name)
+ . '</a>';
+ }
+ }
+ }
+
+ if (!empty($cur)) {
+ $noticeInfoAttr['favorite'] = ($cur->hasFave($this)) ? "true" : "false";
+ $profile = $cur->getProfile();
+ $noticeInfoAttr['repeated'] = ($profile->hasRepeated($this->id)) ? "true" : "false";
+ }
+
+ if (!empty($this->repeat_of)) {
+ $noticeInfoAttr['repeat_of'] = $this->repeat_of;
+ }
+
+ if (Event::handle('StartActivityNoticeInfo', array(&$this, &$xs, &$noticeInfoAttr))) {
+ $xs->element('statusnet:notice_info', $noticeInfoAttr, null);
+ Event::handle('EndActivityNoticeInfo', array(&$this, &$xs, $noticeInfoAttr));
+ }
+
+ $replyNotice = null;
if ($this->reply_to) {
- $reply_notice = Notice::staticGet('id', $this->reply_to);
- if (!empty($reply_notice)) {
+ $replyNotice = Notice::staticGet('id', $this->reply_to);
+ }
+
+ if (Event::handle('StartActivityInReplyTo', array(&$this, &$xs, &$replyNotice))) {
+ if (!empty($replyNotice)) {
$xs->element('link', array('rel' => 'related',
- 'href' => $reply_notice->bestUrl()));
+ 'href' => $replyNotice->bestUrl()));
$xs->element('thr:in-reply-to',
- array('ref' => $reply_notice->uri,
- 'href' => $reply_notice->bestUrl()));
+ array('ref' => $replyNotice->uri,
+ 'href' => $replyNotice->bestUrl()));
+ Event::handle('EndActivityInReplyTo', array(&$this, &$xs, $replyNotice));
}
}
- if (!empty($this->conversation)) {
+ $conv = null;
+ if (!empty($this->conversation)) {
$conv = Conversation::staticGet('id', $this->conversation);
+ }
+ if (Event::handle('StartActivityConversation', array(&$this, &$xs, &$conv))) {
if (!empty($conv)) {
- $xs->element(
- 'link', array(
- 'rel' => 'ostatus:conversation',
- 'href' => $conv->uri
- )
- );
+ $xs->element('link', array('rel' => 'ostatus:conversation',
+ 'href' => $conv->uri));
}
+ Event::handle('EndActivityConversation', array(&$this, &$xs, $conv));
}
+ $replyProfiles = array();
+
$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->getUri()
- )
- );
+ if (!empty($profile)) {
+ $replyProfiles[] = $profile;
+ }
+ }
+
+ if (Event::handle('StartActivityAttentionProfiles', array(&$this, &$xs, &$replyProfiles))) {
+ foreach ($replyProfiles as $profile) {
+ $xs->element('link', array('rel' => 'ostatus:attention',
+ 'href' => $profile->getUri()));
+ $xs->element('link', array('rel' => 'mentioned',
+ 'href' => $profile->getUri()));
}
+ Event::handle('EndActivityAttentionProfiles', array(&$this, &$xs, $replyProfiles));
}
$groups = $this->getGroups();
- foreach ($groups as $group) {
- $xs->element(
- 'link', array(
- 'rel' => 'ostatus:attention',
- 'href' => $group->permalink()
- )
- );
+ if (Event::handle('StartActivityAttentionGroups', array(&$this, &$xs, &$groups))) {
+ foreach ($groups as $group) {
+ $xs->element('link', array('rel' => 'ostatus:attention',
+ 'href' => $group->permalink()));
+ $xs->element('link', array('rel' => 'mentioned',
+ 'href' => $group->permalink()));
+ }
+ Event::handle('EndActivityAttentionGroups', array(&$this, &$xs, $groups));
}
+ $repeat = null;
+
if (!empty($this->repeat_of)) {
$repeat = Notice::staticGet('id', $this->repeat_of);
+ }
+
+ if (Event::handle('StartActivityForward', array(&$this, &$xs, &$repeat))) {
if (!empty($repeat)) {
- $xs->element(
- 'ostatus:forward',
- array('ref' => $repeat->uri, 'href' => $repeat->bestUrl())
- );
+ $xs->element('ostatus:forward',
+ array('ref' => $repeat->uri,
+ 'href' => $repeat->bestUrl()));
}
+
+ Event::handle('EndActivityForward', array(&$this, &$xs, $repeat));
}
- $xs->element(
- 'content',
- array('type' => 'html'),
- common_xml_safe_str($this->rendered)
- );
+ $tags = $this->getTags();
- $tag = new Notice_tag();
- $tag->notice_id = $this->id;
- if ($tag->find()) {
- while ($tag->fetch()) {
- $xs->element('category', array('term' => $tag->tag));
+ if (Event::handle('StartActivityCategories', array(&$this, &$xs, &$tags))) {
+ foreach ($tags as $tag) {
+ $xs->element('category', array('term' => $tag));
}
+ Event::handle('EndActivityCategories', array(&$this, &$xs, $tags));
}
- $tag->free();
- # Enclosures
+ // Enclosures
+
+ $enclosures = array();
+
$attachments = $this->attachments();
- if($attachments){
- foreach($attachments as $attachment){
- $enclosure=$attachment->getEnclosure();
- if ($enclosure) {
- $attributes = array('rel'=>'enclosure','href'=>$enclosure->url,'type'=>$enclosure->mimetype,'length'=>$enclosure->size);
- if($enclosure->title){
- $attributes['title']=$enclosure->title;
- }
- $xs->element('link', $attributes, null);
+
+ foreach ($attachments as $attachment) {
+ $enclosure = $attachment->getEnclosure();
+ if ($enclosure) {
+ $enclosures[] = $enclosure;
+ }
+ }
+
+ if (Event::handle('StartActivityEnclosures', array(&$this, &$xs, &$enclosures))) {
+ foreach ($enclosures as $enclosure) {
+ $attributes = array('rel' => 'enclosure',
+ 'href' => $enclosure->url,
+ 'type' => $enclosure->mimetype,
+ 'length' => $enclosure->size);
+
+ if ($enclosure->title) {
+ $attributes['title'] = $enclosure->title;
}
+
+ $xs->element('link', $attributes, null);
}
+ Event::handle('EndActivityEnclosures', array(&$this, &$xs, $enclosures));
}
- if (!empty($this->lat) && !empty($this->lon)) {
- $xs->element('georss:point', null, $this->lat . ' ' . $this->lon);
+ $lat = $this->lat;
+ $lon = $this->lon;
+
+ if (Event::handle('StartActivityGeo', array(&$this, &$xs, &$lat, &$lon))) {
+ if (!empty($lat) && !empty($lon)) {
+ $xs->element('georss:point', null, $lat . ' ' . $lon);
+ }
+ Event::handle('EndActivityGeo', array(&$this, &$xs, $lat, $lon));
}
- $xs->elementEnd('entry');
+ if (Event::handle('StartActivityEnd', array(&$this, &$xs))) {
+ $xs->elementEnd('entry');
+ Event::handle('EndActivityEnd', array(&$this, &$xs));
+ }
return $xs->getString();
}
@@ -1476,6 +1741,8 @@ class Notice extends Memcached_DataObject
{
$author = Profile::staticGet('id', $this->profile_id);
+ // TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+ // TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
$content = sprintf(_('RT @%1$s %2$s'),
$author->nickname,
$this->content);
@@ -1745,4 +2012,73 @@ class Notice extends Memcached_DataObject
return $result;
}
+
+ /**
+ * Get the source of the notice
+ *
+ * @return Notice_source $ns A notice source object. 'code' is the only attribute
+ * guaranteed to be populated.
+ */
+ function getSource()
+ {
+ $ns = new Notice_source();
+ if (!empty($this->source)) {
+ switch ($this->source) {
+ case 'web':
+ case 'xmpp':
+ case 'mail':
+ case 'omb':
+ case 'system':
+ case 'api':
+ $ns->code = $this->source;
+ break;
+ default:
+ $ns = Notice_source::staticGet($this->source);
+ if (!$ns) {
+ $ns = new Notice_source();
+ $ns->code = $this->source;
+ $app = Oauth_application::staticGet('name', $this->source);
+ if ($app) {
+ $ns->name = $app->name;
+ $ns->url = $app->source_url;
+ }
+ }
+ break;
+ }
+ }
+ return $ns;
+ }
+
+ /**
+ * Determine whether the notice was locally created
+ *
+ * @return boolean locality
+ */
+
+ public function isLocal()
+ {
+ return ($this->is_local == Notice::LOCAL_PUBLIC ||
+ $this->is_local == Notice::LOCAL_NONPUBLIC);
+ }
+
+ public function getTags()
+ {
+ $tags = array();
+ $tag = new Notice_tag();
+ $tag->notice_id = $this->id;
+ if ($tag->find()) {
+ while ($tag->fetch()) {
+ $tags[] = $tag->tag;
+ }
+ }
+ $tag->free();
+ return $tags;
+ }
+
+ static private function utcDate($dt)
+ {
+ $dateStr = date('d F Y H:i:s', strtotime($dt));
+ $d = new DateTime($dateStr, new DateTimeZone('UTC'));
+ return $d->format(DATE_W3C);
+ }
}
diff --git a/classes/Profile.php b/classes/Profile.php
index eded1ff71..d7617f0b7 100644
--- a/classes/Profile.php
+++ b/classes/Profile.php
@@ -152,17 +152,16 @@ class Profile extends Memcached_DataObject
*
* @return mixed Notice or null
*/
+
function getCurrentNotice()
{
- $notice = new Notice();
- $notice->profile_id = $this->id;
- // @fixme change this to sort on notice.id only when indexes are updated
- $notice->orderBy('created DESC, notice.id DESC');
- $notice->limit(1);
- if ($notice->find(true)) {
+ $notice = $this->getNotices(0, 1);
+
+ if ($notice->fetch()) {
return $notice;
+ } else {
+ return null;
}
- return null;
}
function getTaggedNotices($tag, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0)
@@ -225,31 +224,62 @@ class Profile extends Memcached_DataObject
{
$notice = new Notice();
- $notice->profile_id = $this->id;
+ // Temporary hack until notice_profile_id_idx is updated
+ // to (profile_id, id) instead of (profile_id, created, id).
+ // It's been falling back to PRIMARY instead, which is really
+ // very inefficient for a profile that hasn't posted in a few
+ // months. Even though forcing the index will cause a filesort,
+ // it's usually going to be better.
+ if (common_config('db', 'type') == 'mysql') {
+ $index = '';
+ $query =
+ "select id from notice force index (notice_profile_id_idx) ".
+ "where profile_id=" . $notice->escape($this->id);
+
+ if ($since_id != 0) {
+ $query .= " and id > $since_id";
+ }
- $notice->selectAdd();
- $notice->selectAdd('id');
+ if ($max_id != 0) {
+ $query .= " and id < $max_id";
+ }
- if ($since_id != 0) {
- $notice->whereAdd('id > ' . $since_id);
- }
+ $query .= ' order by id DESC';
- if ($max_id != 0) {
- $notice->whereAdd('id <= ' . $max_id);
- }
+ if (!is_null($offset)) {
+ $query .= " LIMIT $limit OFFSET $offset";
+ }
- $notice->orderBy('id DESC');
+ $notice->query($query);
+ } else {
+ $index = '';
- if (!is_null($offset)) {
- $notice->limit($offset, $limit);
+ $notice->profile_id = $this->id;
+
+ $notice->selectAdd();
+ $notice->selectAdd('id');
+
+ if ($since_id != 0) {
+ $notice->whereAdd('id > ' . $since_id);
+ }
+
+ if ($max_id != 0) {
+ $notice->whereAdd('id <= ' . $max_id);
+ }
+
+ $notice->orderBy('id DESC');
+
+ if (!is_null($offset)) {
+ $notice->limit($offset, $limit);
+ }
+
+ $notice->find();
}
$ids = array();
- if ($notice->find()) {
- while ($notice->fetch()) {
- $ids[] = $notice->id;
- }
+ while ($notice->fetch()) {
+ $ids[] = $notice->id;
}
return $ids;
@@ -434,11 +464,9 @@ class Profile extends Memcached_DataObject
$sub = new Subscription();
$sub->subscribed = $this->id;
-
+ $sub->whereAdd('subscriber != subscribed');
$cnt = (int) $sub->count('distinct subscriber');
- $cnt = ($cnt > 0) ? $cnt - 1 : $cnt;
-
if (!empty($c)) {
$c->set(common_cache_key('profile:subscriber_count:'.$this->id), $cnt);
}
@@ -577,11 +605,41 @@ class Profile extends Memcached_DataObject
{
$sub = new Subscription();
$sub->subscriber = $this->id;
- $sub->delete();
+
+ $sub->find();
+
+ while ($sub->fetch()) {
+ $other = Profile::staticGet('id', $sub->subscribed);
+ if (empty($other)) {
+ continue;
+ }
+ if ($other->id == $this->id) {
+ continue;
+ }
+ Subscription::cancel($this, $other);
+ }
$subd = new Subscription();
$subd->subscribed = $this->id;
- $subd->delete();
+ $subd->find();
+
+ while ($subd->fetch()) {
+ $other = Profile::staticGet('id', $subd->subscriber);
+ if (empty($other)) {
+ continue;
+ }
+ if ($other->id == $this->id) {
+ continue;
+ }
+ Subscription::cancel($other, $this);
+ }
+
+ $self = new Subscription();
+
+ $self->subscriber = $this->id;
+ $self->subscribed = $this->id;
+
+ $self->delete();
}
function _deleteMessages()
@@ -674,14 +732,18 @@ class Profile extends Memcached_DataObject
'role' => $name));
if (empty($role)) {
- throw new Exception('Cannot revoke role "'.$name.'" for user #'.$this->id.'; does not exist.');
+ // TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+ // TRANS: %1$s is the role name, %2$s is the user ID (number).
+ throw new Exception(sprintf(_('Cannot revoke role "%1$s" for user #%2$d; does not exist.'),$name, $this->id));
}
$result = $role->delete();
if (!$result) {
common_log_db_error($role, 'DELETE', __FILE__);
- throw new Exception('Cannot revoke role "'.$name.'" for user #'.$this->id.'; database error.');
+ // TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+ // TRANS: %1$s is the role name, %2$s is the user ID (number).
+ throw new Exception(sprintf(_('Cannot revoke role "%1$s" for user #%2$d; database error.'),$name, $this->id));
}
return true;
@@ -788,15 +850,23 @@ class Profile extends Memcached_DataObject
*
* Assumes that Atom has been previously set up as the base namespace.
*
+ * @param Profile $cur the current authenticated user
+ *
* @return string
*/
- function asAtomAuthor()
+ function asAtomAuthor($cur = null)
{
$xs = new XMLStringer(true);
$xs->elementStart('author');
$xs->element('name', null, $this->nickname);
$xs->element('uri', null, $this->getUri());
+ if ($cur != null) {
+ $attrs = Array();
+ $attrs['following'] = $cur->isSubscribed($this) ? 'true' : 'false';
+ $attrs['blocking'] = $cur->hasBlocked($this) ? 'true' : 'false';
+ $xs->element('statusnet:profile_info', $attrs, null);
+ }
$xs->elementEnd('author');
return $xs->getString();
@@ -874,4 +944,20 @@ class Profile extends Memcached_DataObject
return $result;
}
+
+ function getAtomFeed()
+ {
+ $feed = null;
+
+ if (Event::handle('StartProfileGetAtomFeed', array($this, &$feed))) {
+ $user = User::staticGet('id', $this->id);
+ if (!empty($user)) {
+ $feed = common_local_url('ApiTimelineUser', array('id' => $user->id,
+ 'format' => 'atom'));
+ }
+ Event::handle('EndProfileGetAtomFeed', array($this, $feed));
+ }
+
+ return $feed;
+ }
}
diff --git a/classes/Queue_item.php b/classes/Queue_item.php
index f83c2cef1..c7e17be6e 100644
--- a/classes/Queue_item.php
+++ b/classes/Queue_item.php
@@ -64,4 +64,17 @@ class Queue_item extends Memcached_DataObject
$qi = null;
return null;
}
+
+ /**
+ * Release a claimed item.
+ */
+ function releaseCLaim()
+ {
+ // DB_DataObject doesn't let us save nulls right now
+ $sql = sprintf("UPDATE queue_item SET claimed=NULL WHERE id=%d", $this->id);
+ $this->query($sql);
+
+ $this->claimed = null;
+ $this->encache();
+ }
}
diff --git a/classes/Remote_profile.php b/classes/Remote_profile.php
index 0a1676a6a..77bfbcd99 100644
--- a/classes/Remote_profile.php
+++ b/classes/Remote_profile.php
@@ -50,7 +50,8 @@ class Remote_profile extends Memcached_DataObject
if ($profile) {
return $profile->hasright($right);
} else {
- throw new Exception("Missing profile");
+ // TRANS: Exception thrown when a right for a non-existing user profile is checked.
+ throw new Exception(_("Missing profile."));
}
}
}
diff --git a/classes/Reply.php b/classes/Reply.php
index 659e04c92..dc6296bda 100644
--- a/classes/Reply.php
+++ b/classes/Reply.php
@@ -22,6 +22,20 @@ class Reply extends Memcached_DataObject
/* the code above is auto generated do not remove the tag below */
###END_AUTOCODE
+ /**
+ * Wrapper for record insertion to update related caches
+ */
+ function insert()
+ {
+ $result = parent::insert();
+
+ if ($result) {
+ self::blow('reply:stream:%d', $this->profile_id);
+ }
+
+ return $result;
+ }
+
function stream($user_id, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0)
{
$ids = Notice::stream(array('Reply', '_streamDirect'),
diff --git a/classes/Safe_DataObject.php b/classes/Safe_DataObject.php
index 08bc6846f..f0ea6b136 100644
--- a/classes/Safe_DataObject.php
+++ b/classes/Safe_DataObject.php
@@ -96,12 +96,37 @@ class Safe_DataObject extends DB_DataObject
$this->_link_loaded = false;
}
+ /**
+ * Magic function called when someone attempts to call a method
+ * that doesn't exist. DB_DataObject uses this to implement
+ * setters and getters for fields, but neglects to throw an error
+ * when you just misspell an actual method name. This leads to
+ * silent failures which can cause all kinds of havoc.
+ *
+ * @param string $method
+ * @param array $params
+ * @return mixed
+ * @throws Exception
+ */
+ function __call($method, $params)
+ {
+ $return = null;
+ // Yes, that's _call with one underscore, which does the
+ // actual implementation.
+ if ($this->_call($method, $params, $return)) {
+ return $return;
+ } else {
+ // Low level exception. No need for i18n as discussed with Brion.
+ throw new Exception('Call to undefined method ' .
+ get_class($this) . '::' . $method);
+ }
+ }
/**
* Work around memory-leak bugs...
* Had to copy-paste the whole function in order to patch a couple lines of it.
* Would be nice if this code was better factored.
- *
+ *
* @param optional string name of database to assign / read
* @param optional array structure of database, and keys
* @param optional array table links
@@ -112,108 +137,103 @@ class Safe_DataObject extends DB_DataObject
*/
function databaseStructure()
{
-
global $_DB_DATAOBJECT;
-
- // Assignment code
-
+
+ // Assignment code
+
if ($args = func_get_args()) {
-
+
if (count($args) == 1) {
-
+
// this returns all the tables and their structure..
if (!empty($_DB_DATAOBJECT['CONFIG']['debug'])) {
$this->debug("Loading Generator as databaseStructure called with args",1);
}
-
+
$x = new DB_DataObject;
$x->_database = $args[0];
$this->_connect();
$DB = &$_DB_DATAOBJECT['CONNECTIONS'][$this->_database_dsn_md5];
-
+
$tables = $DB->getListOf('tables');
- class_exists('DB_DataObject_Generator') ? '' :
+ class_exists('DB_DataObject_Generator') ? '' :
require_once 'DB/DataObject/Generator.php';
-
+
foreach($tables as $table) {
$y = new DB_DataObject_Generator;
$y->fillTableSchema($x->_database,$table);
}
- return $_DB_DATAOBJECT['INI'][$x->_database];
+ return $_DB_DATAOBJECT['INI'][$x->_database];
} else {
-
+
$_DB_DATAOBJECT['INI'][$args[0]] = isset($_DB_DATAOBJECT['INI'][$args[0]]) ?
$_DB_DATAOBJECT['INI'][$args[0]] + $args[1] : $args[1];
-
+
if (isset($args[1])) {
$_DB_DATAOBJECT['LINKS'][$args[0]] = isset($_DB_DATAOBJECT['LINKS'][$args[0]]) ?
$_DB_DATAOBJECT['LINKS'][$args[0]] + $args[2] : $args[2];
}
return true;
}
-
+
}
-
-
-
+
if (!$this->_database) {
$this->_connect();
}
-
+
// loaded already?
if (!empty($_DB_DATAOBJECT['INI'][$this->_database])) {
-
+
// database loaded - but this is table is not available..
if (
- empty($_DB_DATAOBJECT['INI'][$this->_database][$this->__table])
+ empty($_DB_DATAOBJECT['INI'][$this->_database][$this->__table])
&& !empty($_DB_DATAOBJECT['CONFIG']['proxy'])
) {
if (!empty($_DB_DATAOBJECT['CONFIG']['debug'])) {
$this->debug("Loading Generator to fetch Schema",1);
}
- class_exists('DB_DataObject_Generator') ? '' :
+ class_exists('DB_DataObject_Generator') ? '' :
require_once 'DB/DataObject/Generator.php';
-
-
+
+
$x = new DB_DataObject_Generator;
$x->fillTableSchema($this->_database,$this->__table);
}
return true;
}
-
-
+
if (empty($_DB_DATAOBJECT['CONFIG'])) {
DB_DataObject::_loadConfig();
}
-
+
// if you supply this with arguments, then it will take those
// as the database and links array...
-
+
$schemas = isset($_DB_DATAOBJECT['CONFIG']['schema_location']) ?
array("{$_DB_DATAOBJECT['CONFIG']['schema_location']}/{$this->_database}.ini") :
array() ;
-
+
if (isset($_DB_DATAOBJECT['CONFIG']["ini_{$this->_database}"])) {
$schemas = is_array($_DB_DATAOBJECT['CONFIG']["ini_{$this->_database}"]) ?
$_DB_DATAOBJECT['CONFIG']["ini_{$this->_database}"] :
explode(PATH_SEPARATOR,$_DB_DATAOBJECT['CONFIG']["ini_{$this->_database}"]);
}
-
-
+
/* BEGIN CHANGED FROM UPSTREAM */
$_DB_DATAOBJECT['INI'][$this->_database] = $this->parseIniFiles($schemas);
/* END CHANGED FROM UPSTREAM */
- // now have we loaded the structure..
-
+ // now have we loaded the structure..
+
if (!empty($_DB_DATAOBJECT['INI'][$this->_database][$this->__table])) {
return true;
}
// - if not try building it..
if (!empty($_DB_DATAOBJECT['CONFIG']['proxy'])) {
- class_exists('DB_DataObject_Generator') ? '' :
+ class_exists('DB_DataObject_Generator') ? '' :
require_once 'DB/DataObject/Generator.php';
-
+
$x = new DB_DataObject_Generator;
$x->fillTableSchema($this->_database,$this->__table);
// should this fail!!!???
@@ -221,7 +241,8 @@ class Safe_DataObject extends DB_DataObject
}
$this->debug("Cant find database schema: {$this->_database}/{$this->__table} \n".
"in links file data: " . print_r($_DB_DATAOBJECT['INI'],true),"databaseStructure",5);
- // we have to die here!! - it causes chaos if we dont (including looping forever!)
+ // we have to die here!! - it causes chaos if we don't (including looping forever!)
+ // Low level exception. No need for i18n as discussed with Brion.
$this->raiseError( "Unable to load schema for database and table (turn debugging up to 5 for full error message)", DB_DATAOBJECT_ERROR_INVALIDARGS, PEAR_ERROR_DIE);
return false;
}
@@ -247,7 +268,7 @@ class Safe_DataObject extends DB_DataObject
if (file_exists($ini) && is_file($ini)) {
$data = array_merge($data, parse_ini_file($ini, true));
- if (!empty($_DB_DATAOBJECT['CONFIG']['debug'])) {
+ if (!empty($_DB_DATAOBJECT['CONFIG']['debug'])) {
if (!is_readable ($ini)) {
$this->debug("ini file is not readable: $ini","databaseStructure",1);
} else {
diff --git a/classes/Status_network.php b/classes/Status_network.php
index a452c32ce..5680c1458 100644
--- a/classes/Status_network.php
+++ b/classes/Status_network.php
@@ -27,7 +27,8 @@ class Status_network extends Safe_DataObject
/* the code below is auto generated do not remove the above tag */
public $__table = 'status_network'; // table name
- public $nickname; // varchar(64) primary_key not_null
+ public $site_id; // int(4) primary_key not_null
+ public $nickname; // varchar(64) unique_key not_null
public $hostname; // varchar(255) unique_key
public $pathname; // varchar(255) unique_key
public $dbhost; // varchar(255)
@@ -39,7 +40,6 @@ class Status_network extends Safe_DataObject
public $logo; // varchar(255)
public $created; // datetime() not_null
public $modified; // timestamp() not_null default_CURRENT_TIMESTAMP
- public $tags; // text
/* Static get */
function staticGet($k,$v=NULL) {
@@ -144,26 +144,49 @@ class Status_network extends Safe_DataObject
return parent::update($orig);
}
+ /**
+ * DB_DataObject doesn't allow updating keys (even non-primary)
+ */
+ function updateKeys(&$orig)
+ {
+ $this->_connect();
+ foreach (array('hostname', 'pathname') as $k) {
+ if (strcmp($this->$k, $orig->$k) != 0) {
+ $parts[] = $k . ' = ' . $this->_quote($this->$k);
+ }
+ }
+ if (count($parts) == 0) {
+ // No changes
+ return true;
+ }
+
+ $toupdate = implode(', ', $parts);
+
+ $table = common_database_tablename($this->tableName());
+ $qry = 'UPDATE ' . $table . ' SET ' . $toupdate .
+ ' WHERE nickname = ' . $this->_quote($this->nickname);
+ $orig->decache();
+ $result = $this->query($qry);
+ if ($result) {
+ $this->encache();
+ }
+ return $result;
+ }
+
function delete()
{
$this->decache(); # while we still have the values!
return parent::delete();
}
-
+
/**
* @param string $servername hostname
- * @param string $pathname URL base path
* @param string $wildcard hostname suffix to match wildcard config
+ * @return mixed Status_network or null
*/
- static function setupSite($servername, $pathname, $wildcard)
+ static function getFromHostname($servername, $wildcard)
{
- global $config;
-
$sn = null;
-
- // XXX I18N, probably not crucial for hostnames
- // XXX This probably needs a tune up
-
if (0 == strncasecmp(strrev($wildcard), strrev($servername), strlen($wildcard))) {
// special case for exact match
if (0 == strcasecmp($servername, $wildcard)) {
@@ -182,6 +205,23 @@ class Status_network extends Safe_DataObject
}
}
}
+ return $sn;
+ }
+
+ /**
+ * @param string $servername hostname
+ * @param string $pathname URL base path
+ * @param string $wildcard hostname suffix to match wildcard config
+ */
+ static function setupSite($servername, $pathname, $wildcard)
+ {
+ global $config;
+
+ $sn = null;
+
+ // XXX I18N, probably not crucial for hostnames
+ // XXX This probably needs a tune up
+ $sn = self::getFromHostname($servername, $wildcard);
if (!empty($sn)) {
@@ -268,10 +308,64 @@ class Status_network extends Safe_DataObject
*/
function getTags()
{
- return array_filter(explode("|", strval($this->tags)));
+ $result = array();
+
+ $tags = new Status_network_tag();
+ $tags->site_id = $this->site_id;
+ if ($tags->find()) {
+ while ($tags->fetch()) {
+ $result[] = $tags->tag;
+ }
+ }
+
+ // XXX : for backwards compatibility
+ if (empty($result)) {
+ return explode('|', $this->tags);
+ }
+
+ return $result;
}
/**
+ * Save a given set of tags
+ * @param array tags
+ */
+ function setTags($tags)
+ {
+ $this->clearTags();
+ foreach ($tags as $tag) {
+ if (!empty($tag)) {
+ $snt = new Status_network_tag();
+ $snt->site_id = $this->site_id;
+ $snt->tag = $tag;
+ $snt->created = common_sql_now();
+
+ $id = $snt->insert();
+ if (!$id) {
+ // TRANS: Exception thrown when a tag cannot be saved.
+ throw new Exception(_("Unable to save tag."));
+ }
+ }
+ }
+
+ return true;
+ }
+
+ function clearTags()
+ {
+ $tag = new Status_network_tag();
+ $tag->site_id = $this->site_id;
+
+ if ($tag->find()) {
+ while($tag->fetch()) {
+ $tag->delete();
+ }
+ }
+
+ $tag->free();
+ }
+
+ /**
* Check if this site record has a particular meta-info tag attached.
* @param string $tag
* @return bool
diff --git a/classes/Status_network_tag.php b/classes/Status_network_tag.php
new file mode 100644
index 000000000..18c508bc8
--- /dev/null
+++ b/classes/Status_network_tag.php
@@ -0,0 +1,69 @@
+<?php
+/*
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2008, 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/>.
+ */
+
+if (!defined('STATUSNET')) { exit(1); }
+
+class Status_network_tag extends Safe_DataObject
+{
+ ###START_AUTOCODE
+ /* the code below is auto generated do not remove the above tag */
+
+ public $__table = 'status_network_tag'; // table name
+ public $site_id; // int(4) primary_key not_null
+ public $tag; // varchar(64) primary_key not_null
+ public $created; // datetime() not_null
+
+
+ function __construct()
+ {
+ global $config;
+ global $_DB_DATAOBJECT;
+
+ $sn = new Status_network();
+ $sn->_connect();
+
+ $config['db']['table_'. $this->__table] = $sn->_database;
+
+ $this->_connect();
+ }
+
+
+ /* Static get */
+ function staticGet($k,$v=null)
+ {
+ $i = DB_DataObject::staticGet('Status_network_tag',$k,$v);
+
+ // Don't use local process cache; if we're fetching multiple
+ // times it's because we're reloading it in a long-running
+ // process; we need a fresh copy!
+ global $_DB_DATAOBJECT;
+ unset($_DB_DATAOBJECT['CACHE']['status_network_tag']);
+ return $i;
+ }
+
+ /* the code above is auto generated do not remove the tag below */
+ ###END_AUTOCODE
+
+
+
+ function pkeyGet($kv)
+ {
+ return Memcached_DataObject::pkeyGet('Status_network_tag', $kv);
+ }
+}
diff --git a/classes/Subscription.php b/classes/Subscription.php
index 60c12cccc..0225ed4df 100644
--- a/classes/Subscription.php
+++ b/classes/Subscription.php
@@ -71,14 +71,17 @@ class Subscription extends Memcached_DataObject
}
if (!$subscriber->hasRight(Right::SUBSCRIBE)) {
+ // TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
throw new Exception(_('You have been banned from subscribing.'));
}
if (self::exists($subscriber, $other)) {
+ // TRANS: Exception thrown when trying to subscribe while already subscribed.
throw new Exception(_('Already subscribed!'));
}
if ($other->hasBlocked($subscriber)) {
+ // TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
throw new Exception(_('User has blocked you.'));
}
@@ -88,8 +91,8 @@ class Subscription extends Memcached_DataObject
self::blow('user:notices_with_friends:%d', $subscriber->id);
- $subscriber->blowSubscriptionsCount();
- $other->blowSubscribersCount();
+ $subscriber->blowSubscriptionCount();
+ $other->blowSubscriberCount();
$otherUser = User::staticGet('id', $other->id);
@@ -129,6 +132,7 @@ class Subscription extends Memcached_DataObject
if (!$result) {
common_log_db_error($sub, 'INSERT', __FILE__);
+ // TRANS: Exception thrown when a subscription could not be stored on the server.
throw new Exception(_('Could not save subscription.'));
}
@@ -160,17 +164,18 @@ class Subscription extends Memcached_DataObject
* Cancel a subscription
*
*/
-
function cancel($subscriber, $other)
{
if (!self::exists($subscriber, $other)) {
+ // TRANS: Exception thrown when trying to unsibscribe without a subscription.
throw new Exception(_('Not subscribed!'));
}
// Don't allow deleting self subs
if ($subscriber->id == $other->id) {
- throw new Exception(_('Couldn\'t delete self-subscription.'));
+ // TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+ throw new Exception(_('Could not delete self-subscription.'));
}
if (Event::handle('StartUnsubscribe', array($subscriber, $other))) {
@@ -197,7 +202,8 @@ class Subscription extends Memcached_DataObject
if (!$result) {
common_log_db_error($token, 'DELETE', __FILE__);
- throw new Exception(_('Couldn\'t delete subscription OMB token.'));
+ // TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+ throw new Exception(_('Could not delete subscription OMB token.'));
}
} else {
common_log(LOG_ERR, "Couldn't find credentials with token {$token->tok}");
@@ -208,13 +214,14 @@ class Subscription extends Memcached_DataObject
if (!$result) {
common_log_db_error($sub, 'DELETE', __FILE__);
- throw new Exception(_('Couldn\'t delete subscription.'));
+ // TRANS: Exception thrown when a subscription could not be deleted on the server.
+ throw new Exception(_('Could not delete subscription.'));
}
self::blow('user:notices_with_friends:%d', $subscriber->id);
- $subscriber->blowSubscriptionsCount();
- $other->blowSubscribersCount();
+ $subscriber->blowSubscriptionCount();
+ $other->blowSubscriberCount();
Event::handle('EndUnsubscribe', array($subscriber, $other));
}
diff --git a/classes/User.php b/classes/User.php
index 8ad2ec63d..8033229c4 100644
--- a/classes/User.php
+++ b/classes/User.php
@@ -360,11 +360,12 @@ class User extends Memcached_DataObject
__FILE__);
} else {
$notice = Notice::saveNew($welcomeuser->id,
+ // TRANS: Notice given on user registration.
+ // TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
sprintf(_('Welcome to %1$s, @%2$s!'),
common_config('site', 'name'),
$user->nickname),
'system');
-
}
}
@@ -375,7 +376,6 @@ class User extends Memcached_DataObject
}
// Things we do when the email changes
-
function emailChanged()
{
@@ -464,9 +464,9 @@ class User extends Memcached_DataObject
return $profile->getNotices($offset, $limit, $since_id, $before_id);
}
- function favoriteNotices($offset=0, $limit=NOTICES_PER_PAGE, $own=false)
+ function favoriteNotices($own=false, $offset=0, $limit=NOTICES_PER_PAGE, $since_id=0, $max_id=0)
{
- $ids = Fave::stream($this->id, $offset, $limit, $own);
+ $ids = Fave::stream($this->id, $offset, $limit, $own, $since_id, $max_id);
return Notice::getStreamByIds($ids);
}
@@ -524,9 +524,9 @@ class User extends Memcached_DataObject
if ($this->id == $other->id) {
common_log(LOG_WARNING,
sprintf(
- "Profile ID %d (%s) tried to block his or herself.",
- $profile->id,
- $profile->nickname
+ "Profile ID %d (%s) tried to block themself.",
+ $this->id,
+ $this->nickname
)
);
return false;
@@ -548,12 +548,9 @@ class User extends Memcached_DataObject
return false;
}
- // Cancel their subscription, if it exists
-
- $otherUser = User::staticGet('id', $other->id);
-
- if (!empty($otherUser)) {
- subs_unsubscribe_to($otherUser, $this->getProfile());
+ $self = $this->getProfile();
+ if (Subscription::exists($other, $self)) {
+ Subscription::cancel($other, $self);
}
$block->query('COMMIT');
@@ -670,8 +667,12 @@ class User extends Memcached_DataObject
function delete()
{
- $profile = $this->getProfile();
- $profile->delete();
+ try {
+ $profile = $this->getProfile();
+ $profile->delete();
+ } catch (UserNoProfileException $unp) {
+ common_log(LOG_INFO, "User {$this->nickname} has no profile; continuing deletion.");
+ }
$related = array('Fave',
'Confirm_address',
@@ -679,6 +680,7 @@ class User extends Memcached_DataObject
'Foreign_link',
'Invitation',
);
+
Event::handle('UserDeleteRelated', array($this, &$related));
foreach ($related as $cls) {
diff --git a/classes/User_group.php b/classes/User_group.php
index 110f08301..0b83cfd47 100644
--- a/classes/User_group.php
+++ b/classes/User_group.php
@@ -154,6 +154,21 @@ class User_group extends Memcached_DataObject
return $members;
}
+ function getMemberCount()
+ {
+ // XXX: WORM cache this
+
+ $members = $this->getMembers();
+ $member_count = 0;
+
+ /** $member->count() doesn't work. */
+ while ($members->fetch()) {
+ $member_count++;
+ }
+
+ return $member_count;
+ }
+
function getAdmins($offset=0, $limit=null)
{
$qry =
@@ -477,6 +492,7 @@ class User_group extends Memcached_DataObject
if (!$result) {
common_log_db_error($group, 'INSERT', __FILE__);
+ // TRANS: Server exception thrown when creating a group failed.
throw new ServerException(_('Could not create group.'));
}
@@ -486,6 +502,7 @@ class User_group extends Memcached_DataObject
$result = $group->update($orig);
if (!$result) {
common_log_db_error($group, 'UPDATE', __FILE__);
+ // TRANS: Server exception thrown when updating a group URI failed.
throw new ServerException(_('Could not set group URI.'));
}
}
@@ -493,6 +510,7 @@ class User_group extends Memcached_DataObject
$result = $group->setAliases($aliases);
if (!$result) {
+ // TRANS: Server exception thrown when creating group aliases failed.
throw new ServerException(_('Could not create aliases.'));
}
@@ -507,6 +525,7 @@ class User_group extends Memcached_DataObject
if (!$result) {
common_log_db_error($member, 'INSERT', __FILE__);
+ // TRANS: Server exception thrown when setting group membership failed.
throw new ServerException(_('Could not set group membership.'));
}
@@ -521,6 +540,7 @@ class User_group extends Memcached_DataObject
if (!$result) {
common_log_db_error($local_group, 'INSERT', __FILE__);
+ // TRANS: Server exception thrown when saving local group information failed.
throw new ServerException(_('Could not save local group info.'));
}
}
diff --git a/classes/status_network.ini b/classes/status_network.ini
index adb71cba7..b298daae4 100644
--- a/classes/status_network.ini
+++ b/classes/status_network.ini
@@ -1,4 +1,5 @@
[status_network]
+site_id = 129
nickname = 130
hostname = 2
pathname = 2
@@ -11,9 +12,19 @@ theme = 2
logo = 2
created = 142
modified = 384
-tags = 34
[status_network__keys]
-nickname = K
+site_id = K
+nickname = U
hostname = U
pathname = U
+
+[status_network_tag]
+site_id = 129
+tag = 130
+created = 142
+
+[status_network_tag__keys]
+site_id = K
+tag = K
+
diff --git a/config.php.sample b/config.php.sample
index 20de7ffed..5481ca539 100644
--- a/config.php.sample
+++ b/config.php.sample
@@ -45,7 +45,7 @@ $config['site']['path'] = 'statusnet';
// lighttpd, nginx), you can enable X-Sendfile support for better
// performance. Presently, only attachment serving when the site is
// in private mode will use X-Sendfile.
-// $config['site']['X-Sendfile'] = false;
+// $config['site']['use_x_sendfile'] = false;
// You may also need to enable X-Sendfile support for your web server and
// allow it to access files outside of the web root. For Apache with
// mod_xsendfile, you can add these to your .htaccess or server config:
diff --git a/db/08to09_pg.sql b/db/08to09_pg.sql
index 2eac5dadf..498a94e68 100644
--- a/db/08to09_pg.sql
+++ b/db/08to09_pg.sql
@@ -81,3 +81,42 @@ ALTER TABLE profile ADD COLUMN lon decimal(10,7) /*comment 'longitude'*/;
ALTER TABLE profile ADD COLUMN location_id integer /* comment 'location id if possible'*/;
ALTER TABLE profile ADD COLUMN location_ns integer /* comment 'namespace for location'*/;
+ALTER TABLE consumer add COLUMN consumer_secret varchar(255) not null ; /*comment 'secret value'*/
+
+ALTER TABLE token ADD COLUMN verifier varchar(255); /* comment 'verifier string for OAuth 1.0a',*/
+ALTER TABLE token ADD COLUMN verified_callback varchar(255); /* comment 'verified callback URL for OAuth 1.0a',*/
+
+create table queue_item_new (
+ id serial /* comment 'unique identifier'*/,
+ frame bytea not null /* comment 'data: object reference or opaque string'*/,
+ transport varchar(8) not null /*comment 'queue for what? "email", "jabber", "sms", "irc", ...'*/,
+ created timestamp not null default CURRENT_TIMESTAMP /*comment 'date this record was created'*/,
+ claimed timestamp /*comment 'date this item was claimed'*/,
+ PRIMARY KEY (id)
+);
+
+insert into queue_item_new (frame,transport,created,claimed)
+ select ('0x' || notice_id::text)::bytea,transport,created,claimed from queue_item;
+alter table queue_item rename to queue_item_old;
+alter table queue_item_new rename to queue_item;
+
+ALTER TABLE confirm_address ALTER column sent set default CURRENT_TIMESTAMP;
+
+create table user_location_prefs (
+ user_id integer not null /*comment 'user who has the preference'*/ references "user" (id),
+ share_location int default 1 /* comment 'Whether to share location data'*/,
+ created timestamp not null /*comment 'date this record was created'*/,
+ modified timestamp /* comment 'date this record was modified'*/,
+
+ primary key (user_id)
+);
+
+create table inbox (
+
+ user_id integer not null /* comment 'user receiving the notice' */ references "user" (id),
+ notice_ids bytea /* comment 'packed list of notice ids' */,
+
+ primary key (user_id)
+
+);
+
diff --git a/db/notice_source.sql b/db/notice_source.sql
index 50660e948..6bfd5c5f1 100644
--- a/db/notice_source.sql
+++ b/db/notice_source.sql
@@ -9,13 +9,16 @@ VALUES
('bti','bti','http://gregkh.github.com/bti/', now()),
('choqok', 'Choqok', 'http://choqok.gnufolks.org/', now()),
('cliqset', 'Cliqset', 'http://www.cliqset.com/', now()),
+ ('DarterosStatus', 'Darteros Status', 'http://www.darteros.com/doc/Darteros_Status', now()),
('deskbar','Deskbar-Applet','http://www.gnome.org/projects/deskbar-applet/', now()),
('Do','Gnome Do','http://do.davebsd.com/wiki/index.php?title=Microblog_Plugin', now()),
('drupal','Drupal','http://drupal.org/', now()),
- ('eventbox','EventBox','http://thecosmicmachine.com/eventbox/ ', now()),
+ ('eventbox','EventBox','http://thecosmicmachine.com/eventbox/', now()),
+ ('identica-mode','Emacs Identica-mode','http://nongnu.org/identica-mode/', now()),
('Facebook','Facebook','http://apps.facebook.com/identica/', now()),
('feed2omb','feed2omb','http://projects.ciarang.com/p/feed2omb/', now()),
('get2gnow', 'get2gnow', 'http://uberchicgeekchick.com/?projects=get2gnow', now()),
+ ('gNewBook', 'gNewBook', 'http://www.gnewbook.org/', now()),
('gravity', 'Gravity', 'http://mobileways.de/gravity', now()),
('Gwibber','Gwibber','http://launchpad.net/gwibber', now()),
('HelloTxt','HelloTxt','http://hellotxt.com/', now()),
@@ -48,11 +51,13 @@ VALUES
('smob','SMOB','http://smob.sioc-project.org/', now()),
('socialoomphBfD4pMqz31', 'SocialOomph', 'http://www.socialoomph.com/', now()),
('spaz','Spaz','http://funkatron.com/spaz', now()),
+ ('StatusNet Desktop', 'StatusNet Desktop', 'http://status.net/desktop', now()),
('tarpipe','tarpipe','http://tarpipe.com/', now()),
('tjunar','Tjunar','http://nederflash.nl/boek/titels/tjunar-air', now()),
('tr.im','tr.im','http://tr.im/', now()),
('triklepost', 'Tricklepost', 'http://github.com/zcopley/tricklepost/tree/master', now()),
('tweenky','Tweenky','http://beta.tweenky.com/', now()),
+ ('TweetDeck', 'TweetDeck', 'http://www.tweetdeck.com/', now()),
('twhirl','Twhirl','http://www.twhirl.org/', now()),
('twibble','twibble','http://www.twibble.de/', now()),
('Twidge','Twidge','http://software.complete.org/twidge', now()),
diff --git a/db/site.sql b/db/site.sql
index 791303bd5..f87995b94 100644
--- a/db/site.sql
+++ b/db/site.sql
@@ -1,8 +1,9 @@
/* For managing multiple sites */
create table status_network (
-
- nickname varchar(64) primary key comment 'nickname',
+
+ site_id integer auto_increment primary key comment 'unique id',
+ nickname varchar(64) unique key comment 'nickname',
hostname varchar(255) unique key comment 'alternate hostname if any',
pathname varchar(255) unique key comment 'alternate pathname if any',
@@ -21,3 +22,12 @@ create table status_network (
modified timestamp comment 'date this record was modified'
) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
+
+create table status_network_tag (
+ site_id integer comment 'unique id',
+ tag varchar(64) comment 'tag name',
+ created datetime not null comment 'date the record was created',
+
+ constraint primary key (site_id, tag)
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
+
diff --git a/db/site_093to094.sql b/db/site_093to094.sql
new file mode 100644
index 000000000..30cea31df
--- /dev/null
+++ b/db/site_093to094.sql
@@ -0,0 +1,13 @@
+alter table status_network
+ drop primary key,
+ add column site_id integer auto_increment primary key first,
+ add unique key (nickname);
+
+create table status_network_tag (
+ site_id integer comment 'unique id',
+ tag varchar(64) comment 'tag name',
+ created datetime not null comment 'date the record was created',
+
+ constraint primary key (site_id, tag)
+) ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_general_ci;
+
diff --git a/db/statusnet_pg.sql b/db/statusnet_pg.sql
index 998cc71e9..2db98550c 100644
--- a/db/statusnet_pg.sql
+++ b/db/statusnet_pg.sql
@@ -8,6 +8,10 @@ create table profile (
homepage varchar(255) /* comment 'identifying URL' */,
bio varchar(140) /* comment 'descriptive biography' */,
location varchar(255) /* comment 'physical location' */,
+ lat decimal(10,7) /* comment 'latitude'*/ ,
+ lon decimal(10,7) /* comment 'longitude'*/ ,
+ location_id integer /* comment 'location id if possible'*/ ,
+ location_ns integer /* comment 'namespace for location'*/ ,
created timestamp not null default CURRENT_TIMESTAMP /* comment 'date this record was created' */,
modified timestamp /* comment 'date this record was modified' */,
@@ -132,6 +136,7 @@ create table notice (
is_local integer default 0 /* comment 'notice was generated by a user' */,
source varchar(32) /* comment 'source of comment, like "web", "im", or "clientname"' */,
conversation integer /*id of root notice in this conversation' */ references notice (id),
+ location varchar(255) /* comment 'physical location' */,
lat decimal(10,7) /* comment 'latitude'*/ ,
lon decimal(10,7) /* comment 'longitude'*/ ,
location_id integer /* comment 'location id if possible'*/ ,
@@ -182,6 +187,7 @@ create index fave_modified_idx on fave using btree(modified);
create table consumer (
consumer_key varchar(255) primary key /* comment 'unique identifier, root URL' */,
+ consumer_secret varchar(255) not null /* comment 'secret value', */,
seed char(32) not null /* comment 'seed for new tokens by this consumer' */,
created timestamp not null default CURRENT_TIMESTAMP /* comment 'date this record was created' */,
@@ -195,6 +201,9 @@ create table token (
type integer not null default 0 /* comment 'request or access' */,
state integer default 0 /* comment 'for requests 0 = initial, 1 = authorized, 2 = used' */,
+ verifier varchar(255) /*comment 'verifier string for OAuth 1.0a'*/,
+ verified_callback varchar(255) /*comment 'verified callback URL for OAuth 1.0a'*/,
+
created timestamp not null default CURRENT_TIMESTAMP /* comment 'date this record was created' */,
modified timestamp /* comment 'date this record was modified' */,
@@ -213,17 +222,33 @@ create table nonce (
primary key (consumer_key, ts, nonce)
);
-/* One-to-many relationship of user to openid_url */
-
-create table user_openid (
- canonical varchar(255) primary key /* comment 'Canonical true URL' */,
- display varchar(255) not null unique /* comment 'URL for viewing, may be different from canonical' */,
- user_id integer not null /* comment 'user owning this URL' */ references "user" (id) ,
+create sequence oauth_application_seq;
+create table oauth_application (
+ id bigint default nextval('oauth_application_seq') primary key /* comment 'unique identifier' */,
+ owner integer not null /* comment 'owner of the application' */ references profile (id),
+ consumer_key varchar(255) not null /* comment 'application consumer key' */ references consumer (consumer_key),
+ name varchar(255) unique not null /* comment 'name of the application' */,
+ description varchar(255) /* comment 'description of the application' */,
+ icon varchar(255) not null /* comment 'application icon' */,
+ source_url varchar(255) /* comment 'application homepage - used for source link' */,
+ organization varchar(255) /* comment 'name of the organization running the application' */,
+ homepage varchar(255) /* comment 'homepage for the organization' */,
+ callback_url varchar(255) /* comment 'url to redirect to after authentication' */,
+ "type" integer default 0 /* comment 'type of app, 1 = browser, 2 = desktop' */,
+ access_type integer default 0 /* comment 'default access type, bit 1 = read, bit 2 = write' */,
created timestamp not null default CURRENT_TIMESTAMP /* comment 'date this record was created' */,
modified timestamp /* comment 'date this record was modified' */
+);
+create table oauth_application_user (
+ profile_id integer not null /* 'user of the application' */ references profile (id),
+ application_id integer not null /* 'id of the application' */ references oauth_application (id),
+ access_type integer default 0 /* 'access type, bit 1 = read, bit 2 = write' */,
+ token varchar(255) /* 'request or access token' */,
+ created timestamp not null default CURRENT_TIMESTAMP /* 'date this record was created' */,
+ modified timestamp /* 'date this record was modified' */,
+ primary key (profile_id, application_id)
);
-create index user_openid_user_id_idx on user_openid using btree(user_id);
/* These are used by JanRain OpenID library */
@@ -251,7 +276,7 @@ create table confirm_address (
address_extra varchar(255) not null default '' /* comment 'carrier ID, for SMS' */,
address_type varchar(8) not null /* comment 'address type ("email", "jabber", "sms")' */,
claimed timestamp /* comment 'date this was claimed for queueing' */,
- sent timestamp /* comment 'date this was sent for queueing' */,
+ sent timestamp default CURRENT_TIMESTAMP /* comment 'date this was sent for queueing' */,
modified timestamp /* comment 'date this record was modified' */
);
@@ -262,14 +287,12 @@ create table remember_me (
);
create table queue_item (
-
- notice_id integer not null /* comment 'notice queued' */ references notice (id) ,
- transport varchar(8) not null /* comment 'queue for what? "email", "jabber", "sms", "irc", ...' */,
- created timestamp not null default CURRENT_TIMESTAMP /* comment 'date this record was created' */,
- claimed timestamp /* comment 'date this item was claimed' */,
-
- primary key (notice_id, transport)
-
+ id serial /* comment 'unique identifier'*/,
+ frame bytea not null /* comment 'data: object reference or opaque string'*/,
+ transport varchar(8) not null /*comment 'queue for what? "email", "jabber", "sms", "irc", ...'*/,
+ created timestamp not null default CURRENT_TIMESTAMP /*comment 'date this record was created'*/,
+ claimed timestamp /*comment 'date this item was claimed'*/,
+ PRIMARY KEY (id)
);
create index queue_item_created_idx on queue_item using btree(created);
@@ -589,3 +612,39 @@ create table login_token (
primary key (user_id)
);
+create table user_location_prefs (
+ user_id integer not null /* comment 'user who has the preference' */ references "user" (id),
+ share_location integer default 1 /* comment 'Whether to share location data' */,
+ created timestamp not null DEFAULT CURRENT_TIMESTAMP /* comment 'date this record was created' */,
+ modified timestamp /* comment 'date this record was modified' */,
+
+ primary key (user_id)
+);
+
+create table inbox (
+
+ user_id integer not null /* comment 'user receiving the notice' */ references "user" (id),
+ notice_ids bytea /* comment 'packed list of notice ids' */,
+
+ primary key (user_id)
+
+);
+
+create sequence conversation_seq;
+create table conversation (
+ id bigint default nextval('conversation_seq') primary key /* comment 'unique identifier' */,
+ uri varchar(225) unique /* comment 'URI of the conversation' */,
+ created timestamp not null DEFAULT CURRENT_TIMESTAMP /* comment 'date this record was created' */,
+ modified timestamp /* comment 'date this record was modified' */
+);
+
+create table local_group (
+
+ group_id integer primary key /* comment 'group represented' */ references user_group (id),
+ nickname varchar(64) unique /* comment 'group represented' */,
+
+ created timestamp not null DEFAULT CURRENT_TIMESTAMP /* comment 'date this record was created' */,
+ modified timestamp /* comment 'date this record was modified' */
+
+);
+
diff --git a/doc-src/bookmarklet b/doc-src/bookmarklet
index bab0ad445..ae359d2db 100644
--- a/doc-src/bookmarklet
+++ b/doc-src/bookmarklet
@@ -2,4 +2,4 @@ A bookmarklet is a small piece of javascript code used as a bookmark. This one w
Drag-and-drop the following link to your bookmarks bar or right-click it and add it to your browser favorites to keep it handy.
-<a href="javascript:(function(){var%20d=document,w=window,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),f='http://%%site.server%%/%%site.path%%/index.php?action=bookmarklet',l=d.location,e=encodeURIComponent,g=f+'&status_textarea=%E2%80%9C'+((e(s))?e(s):e(document.title))+'%E2%80%9D%20%E2%80%94%20'+l.href;function%20a(){if(!w.open(g,'t','toolbar=0,resizable=0,scrollbars=1,status=1,width=450,height=200')){l.href=g;}}a();})()">Post to %%site.name%%</a>
+<a href="javascript:(function(){var%20d=document,w=window,e=w.getSelection,k=d.getSelection,x=d.selection,s=(e?e():(k)?k():(x?x.createRange().text:0)),f='http://%%site.server%%/%%site.path%%/index.php?action=bookmarklet',l=d.location,e=encodeURIComponent,g=f+'&status_textarea=%E2%80%9C'+((e(s))?e(s):e(document.title))+'%E2%80%9D%20%E2%80%94%20'+e(l.href);function%20a(){if(!w.open(g,'t','toolbar=0,resizable=0,scrollbars=1,status=1,width=450,height=200')){l.href=g;}}a();})()">Post to %%site.name%%</a>
diff --git a/doc-src/sms b/doc-src/sms
index 1a3064318..6cdccc6e9 100644
--- a/doc-src/sms
+++ b/doc-src/sms
@@ -1,4 +1,4 @@
-You can post messages to %%site.name%% using a many kinds of cell
+You can post messages to %%site.name%% using many kinds of cell
phones that support SMS messaging. This site does not support SMS
directly; rather, it uses your carrier's email gateway to send and
receive messages.
diff --git a/extlib/Auth/OpenID.php b/extlib/Auth/OpenID.php
index db6164256..c9d977962 100644
--- a/extlib/Auth/OpenID.php
+++ b/extlib/Auth/OpenID.php
@@ -20,7 +20,7 @@
/**
* The library version string
*/
-define('Auth_OpenID_VERSION', '2.1.3');
+define('Auth_OpenID_VERSION', '2.2.2');
/**
* Require the fetcher code.
@@ -102,9 +102,7 @@ define('Auth_OpenID_digits',
define('Auth_OpenID_punct',
"!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~");
-if (Auth_OpenID_getMathLib() === null) {
- Auth_OpenID_setNoMathSupport();
-}
+Auth_OpenID_include_init();
/**
* The OpenID utility function class.
@@ -120,7 +118,7 @@ class Auth_OpenID {
*
* @access private
*/
- function isFailure($thing)
+ static function isFailure($thing)
{
return is_a($thing, 'Auth_OpenID_FailureResponse');
}
@@ -139,9 +137,12 @@ class Auth_OpenID {
* Returns an empty array if neither GET nor POST was used, or if
* POST was used but php://input cannot be opened.
*
+ * See background:
+ * http://lists.openidenabled.com/pipermail/dev/2007-March/000395.html
+ *
* @access private
*/
- function getQuery($query_str=null)
+ static function getQuery($query_str=null)
{
$data = array();
@@ -177,7 +178,7 @@ class Auth_OpenID {
return $data;
}
- function params_from_string($str)
+ static function params_from_string($str)
{
$chunks = explode("&", $str);
@@ -190,7 +191,7 @@ class Auth_OpenID {
}
list($k, $v) = $parts;
- $data[$k] = urldecode($v);
+ $data[urldecode($k)] = urldecode($v);
}
return $data;
@@ -203,7 +204,7 @@ class Auth_OpenID {
*
* @access private
*/
- function ensureDir($dir_name)
+ static function ensureDir($dir_name)
{
if (is_dir($dir_name) || @mkdir($dir_name)) {
return true;
@@ -225,7 +226,7 @@ class Auth_OpenID {
*
* @access private
*/
- function addPrefix($values, $prefix)
+ static function addPrefix($values, $prefix)
{
$new_values = array();
foreach ($values as $s) {
@@ -241,7 +242,7 @@ class Auth_OpenID {
*
* @access private
*/
- function arrayGet($arr, $key, $fallback = null)
+ static function arrayGet($arr, $key, $fallback = null)
{
if (is_array($arr)) {
if (array_key_exists($key, $arr)) {
@@ -261,7 +262,7 @@ class Auth_OpenID {
/**
* Replacement for PHP's broken parse_str.
*/
- function parse_str($query)
+ static function parse_str($query)
{
if ($query === null) {
return null;
@@ -278,7 +279,7 @@ class Auth_OpenID {
}
list($key, $value) = $pair;
- $new_parts[$key] = urldecode($value);
+ $new_parts[urldecode($key)] = urldecode($value);
}
return $new_parts;
@@ -295,7 +296,7 @@ class Auth_OpenID {
* pairs from $data into a URL query string
* (e.g. "username=bob&id=56").
*/
- function httpBuildQuery($data)
+ static function httpBuildQuery($data)
{
$pairs = array();
foreach ($data as $key => $value) {
@@ -323,7 +324,7 @@ class Auth_OpenID {
* @return string $url The original URL with the new parameters added.
*
*/
- function appendArgs($url, $args)
+ static function appendArgs($url, $args)
{
if (count($args) == 0) {
return $url;
@@ -367,7 +368,7 @@ class Auth_OpenID {
* @return string $url The URL resulting from assembling the
* specified components.
*/
- function urlunparse($scheme, $host, $port = null, $path = '/',
+ static function urlunparse($scheme, $host, $port = null, $path = '/',
$query = '', $fragment = '')
{
@@ -412,7 +413,7 @@ class Auth_OpenID {
* @return mixed $new_url The URL after normalization, or null if
* $url was malformed.
*/
- function normalizeUrl($url)
+ static function normalizeUrl($url)
{
@$parsed = parse_url($url);
@@ -443,7 +444,7 @@ class Auth_OpenID {
*
* @access private
*/
- function intval($value)
+ static function intval($value)
{
$re = "/^\\d+$/";
@@ -461,7 +462,7 @@ class Auth_OpenID {
* @param string $str The string of bytes to count.
* @return int The number of bytes in $str.
*/
- function bytes($str)
+ static function bytes($str)
{
return strlen(bin2hex($str)) / 2;
}
@@ -470,7 +471,7 @@ class Auth_OpenID {
* Get the bytes in a string independently of multibyte support
* conditions.
*/
- function toBytes($str)
+ static function toBytes($str)
{
$hex = bin2hex($str);
@@ -486,7 +487,7 @@ class Auth_OpenID {
return $b;
}
- function urldefrag($url)
+ static function urldefrag($url)
{
$parts = explode("#", $url, 2);
@@ -497,7 +498,7 @@ class Auth_OpenID {
}
}
- function filter($callback, &$sequence)
+ static function filter($callback, &$sequence)
{
$result = array();
@@ -510,7 +511,7 @@ class Auth_OpenID {
return $result;
}
- function update(&$dest, &$src)
+ static function update(&$dest, &$src)
{
foreach ($src as $k => $v) {
$dest[$k] = $v;
@@ -524,14 +525,14 @@ class Auth_OpenID {
*
* @param string $format_string The sprintf format for the message
*/
- function log($format_string)
+ static function log($format_string)
{
$args = func_get_args();
$message = call_user_func_array('sprintf', $args);
error_log($message);
}
- function autoSubmitHTML($form, $title="OpenId transaction in progress")
+ static function autoSubmitHTML($form, $title="OpenId transaction in progress")
{
return("<html>".
"<head><title>".
@@ -549,4 +550,14 @@ class Auth_OpenID {
"</html>");
}
}
-?>
+
+/*
+ * Function to run when this file is included.
+ * Abstracted to a function to make life easier
+ * for some PHP optimizers.
+ */
+function Auth_OpenID_include_init() {
+ if (Auth_OpenID_getMathLib() === null) {
+ Auth_OpenID_setNoMathSupport();
+ }
+}
diff --git a/extlib/Auth/OpenID/AX.php b/extlib/Auth/OpenID/AX.php
index 4a617ae30..7370715e3 100644
--- a/extlib/Auth/OpenID/AX.php
+++ b/extlib/Auth/OpenID/AX.php
@@ -38,7 +38,7 @@ class Auth_OpenID_AX {
* @return bool true if $thing is an Auth_OpenID_AX_Error; false
* if not.
*/
- function isError($thing)
+ static function isError($thing)
{
return is_a($thing, 'Auth_OpenID_AX_Error');
}
@@ -191,7 +191,7 @@ class Auth_OpenID_AX_AttrInfo {
* Construct an attribute information object. For parameter
* details, see the constructor.
*/
- function make($type_uri, $count=1, $required=false,
+ static function make($type_uri, $count=1, $required=false,
$alias=null)
{
if ($alias !== null) {
@@ -235,7 +235,7 @@ class Auth_OpenID_AX_AttrInfo {
* return null If an alias is present in the list of aliases but
* is not present in the namespace map.
*/
-function Auth_OpenID_AX_toTypeURIs(&$namespace_map, $alias_list_s)
+function Auth_OpenID_AX_toTypeURIs($namespace_map, $alias_list_s)
{
$uris = array();
@@ -386,7 +386,7 @@ class Auth_OpenID_AX_FetchRequest extends Auth_OpenID_AX_Message {
* Auth_OpenID_AX_FetchRequest extracted from the request message if
* successful
*/
- function &fromOpenIDRequest($request)
+ static function fromOpenIDRequest($request)
{
$m = $request->message;
$obj = new Auth_OpenID_AX_FetchRequest();
@@ -484,7 +484,7 @@ class Auth_OpenID_AX_FetchRequest extends Auth_OpenID_AX_Message {
Auth_OpenID::arrayGet($ax_args, 'required'));
foreach ($required as $type_uri) {
- $attrib =& $this->requested_attributes[$type_uri];
+ $attrib = $this->requested_attributes[$type_uri];
$attrib->required = true;
}
@@ -587,7 +587,7 @@ class Auth_OpenID_AX_KeyValueMessage extends Auth_OpenID_AX_Message {
*
* @access private
*/
- function _getExtensionKVArgs(&$aliases)
+ function _getExtensionKVArgs($aliases)
{
if ($aliases === null) {
$aliases = new Auth_OpenID_NamespaceMap();
@@ -652,7 +652,7 @@ class Auth_OpenID_AX_KeyValueMessage extends Auth_OpenID_AX_Message {
foreach ($aliases->iteritems() as $pair) {
list($type_uri, $alias) = $pair;
- if (array_key_exists('count.' . $alias, $ax_args)) {
+ if (array_key_exists('count.' . $alias, $ax_args) && ($ax_args['count.' . $alias] !== Auth_OpenID_AX_UNLIMITED_VALUES)) {
$count_key = 'count.' . $alias;
$count_s = $ax_args[$count_key];
@@ -888,7 +888,7 @@ class Auth_OpenID_AX_FetchResponse extends Auth_OpenID_AX_KeyValueMessage {
$ax_args['update_url'] = $update_url;
}
- Auth_OpenID::update(&$ax_args, $kv_args);
+ Auth_OpenID::update($ax_args, $kv_args);
return $ax_args;
}
@@ -922,7 +922,7 @@ class Auth_OpenID_AX_FetchResponse extends Auth_OpenID_AX_KeyValueMessage {
* @return $response A FetchResponse containing the data from the
* OpenID message
*/
- function fromSuccessResponse($success_response, $signed=true)
+ static function fromSuccessResponse($success_response, $signed=true)
{
$obj = new Auth_OpenID_AX_FetchResponse();
if ($signed) {
@@ -960,7 +960,7 @@ class Auth_OpenID_AX_StoreRequest extends Auth_OpenID_AX_KeyValueMessage {
{
$ax_args = $this->_newArgs();
$kv_args = $this->_getExtensionKVArgs($aliases);
- Auth_OpenID::update(&$ax_args, $kv_args);
+ Auth_OpenID::update($ax_args, $kv_args);
return $ax_args;
}
}
@@ -980,7 +980,7 @@ class Auth_OpenID_AX_StoreResponse extends Auth_OpenID_AX_Message {
* Returns Auth_OpenID_AX_Error on error or an
* Auth_OpenID_AX_StoreResponse object on success.
*/
- function &make($succeeded=true, $error_message=null)
+ function make($succeeded=true, $error_message=null)
{
if (($succeeded) && ($error_message !== null)) {
return new Auth_OpenID_AX_Error('An error message may only be '.
@@ -1020,4 +1020,3 @@ class Auth_OpenID_AX_StoreResponse extends Auth_OpenID_AX_Message {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Association.php b/extlib/Auth/OpenID/Association.php
index 37ce0cbf4..7fdf399a3 100644
--- a/extlib/Auth/OpenID/Association.php
+++ b/extlib/Auth/OpenID/Association.php
@@ -94,7 +94,7 @@ class Auth_OpenID_Association {
* @return association An {@link Auth_OpenID_Association}
* instance.
*/
- function fromExpiresIn($expires_in, $handle, $secret, $assoc_type)
+ static function fromExpiresIn($expires_in, $handle, $secret, $assoc_type)
{
$issued = time();
$lifetime = $expires_in;
@@ -132,7 +132,7 @@ class Auth_OpenID_Association {
$handle, $secret, $issued, $lifetime, $assoc_type)
{
if (!in_array($assoc_type,
- Auth_OpenID_getSupportedAssociationTypes())) {
+ Auth_OpenID_getSupportedAssociationTypes(), true)) {
$fmt = 'Unsupported association type (%s)';
trigger_error(sprintf($fmt, $assoc_type), E_USER_ERROR);
}
@@ -206,7 +206,7 @@ class Auth_OpenID_Association {
* @param string $assoc_s Association as serialized by serialize()
* @return Auth_OpenID_Association $result instance of this class
*/
- function deserialize($class_name, $assoc_s)
+ static function deserialize($class_name, $assoc_s)
{
$pairs = Auth_OpenID_KVForm::toArray($assoc_s, $strict = true);
$keys = array();
@@ -327,7 +327,7 @@ class Auth_OpenID_Association {
*
* @access private
*/
- function _makePairs(&$message)
+ function _makePairs($message)
{
$signed = $message->getArg(Auth_OpenID_OPENID_NS, 'signed');
if (!$signed || Auth_OpenID::isFailure($signed)) {
@@ -352,7 +352,7 @@ class Auth_OpenID_Association {
*
* @access private
*/
- function getMessageSignature(&$message)
+ function getMessageSignature($message)
{
$pairs = $this->_makePairs($message);
return base64_encode($this->sign($pairs));
@@ -364,7 +364,7 @@ class Auth_OpenID_Association {
*
* @access private
*/
- function checkMessageSignature(&$message)
+ function checkMessageSignature($message)
{
$sig = $message->getArg(Auth_OpenID_OPENID_NS,
'sig');
@@ -374,7 +374,42 @@ class Auth_OpenID_Association {
}
$calculated_sig = $this->getMessageSignature($message);
- return $calculated_sig == $sig;
+
+ return $this->constantTimeCompare($calculated_sig, $sig);
+ }
+
+ /**
+ * String comparison function which will complete in a constant time
+ * for strings of any given matching length, to help prevent an attacker
+ * from distinguishing how much of a signature token they have guessed
+ * correctly.
+ *
+ * For this usage, it's assumed that the length of the string is known,
+ * so we may safely short-circuit on mismatched lengths which will be known
+ * to be invalid by the attacker.
+ *
+ * http://lists.openid.net/pipermail/openid-security/2010-July/001156.html
+ * http://rdist.root.org/2010/01/07/timing-independent-array-comparison/
+ */
+ private function constantTimeCompare($a, $b)
+ {
+ $len = strlen($a);
+ if (strlen($b) !== $len) {
+ // Short-circuit on length mismatch; attackers will already know
+ // the correct target length so this is safe.
+ return false;
+ }
+ if ($len == 0) {
+ // 0-length valid input shouldn't really happen. :)
+ return true;
+ }
+ $result = 0;
+ for ($i = 0; $i < strlen($a); $i++) {
+ // We use scary bitwise operations to avoid logical short-circuits
+ // in lower-level code.
+ $result |= ord($a{$i}) ^ ord($b{$i});
+ }
+ return ($result == 0);
}
}
@@ -469,18 +504,16 @@ function Auth_OpenID_getOnlyEncryptedOrder()
return $result;
}
-function &Auth_OpenID_getDefaultNegotiator()
+function Auth_OpenID_getDefaultNegotiator()
{
- $x = new Auth_OpenID_SessionNegotiator(
+ return new Auth_OpenID_SessionNegotiator(
Auth_OpenID_getDefaultAssociationOrder());
- return $x;
}
-function &Auth_OpenID_getEncryptedNegotiator()
+function Auth_OpenID_getEncryptedNegotiator()
{
- $x = new Auth_OpenID_SessionNegotiator(
+ return new Auth_OpenID_SessionNegotiator(
Auth_OpenID_getOnlyEncryptedOrder());
- return $x;
}
/**
@@ -610,4 +643,3 @@ class Auth_OpenID_SessionNegotiator {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/BigMath.php b/extlib/Auth/OpenID/BigMath.php
index 45104947d..7fca2dc43 100644
--- a/extlib/Auth/OpenID/BigMath.php
+++ b/extlib/Auth/OpenID/BigMath.php
@@ -351,8 +351,7 @@ function Auth_OpenID_math_extensions()
'class' => 'Auth_OpenID_GmpMathWrapper');
}
- $result[] = array(
- 'modules' => array('bcmath', 'php_bcmath'),
+ $result[] = array('modules' => array('bcmath', 'php_bcmath'),
'extension' => 'bcmath',
'class' => 'Auth_OpenID_BcMathWrapper');
@@ -366,27 +365,9 @@ function Auth_OpenID_detectMathLibrary($exts)
{
$loaded = false;
+ $hasDl = function_exists('dl');
foreach ($exts as $extension) {
- // See if the extension specified is already loaded.
- if ($extension['extension'] &&
- extension_loaded($extension['extension'])) {
- $loaded = true;
- }
-
- // Try to load dynamic modules.
- if (!$loaded) {
- foreach ($extension['modules'] as $module) {
- if (@dl($module . "." . PHP_SHLIB_SUFFIX)) {
- $loaded = true;
- break;
- }
- }
- }
-
- // If the load succeeded, supply an instance of
- // Auth_OpenID_MathWrapper which wraps the specified
- // module's functionality.
- if ($loaded) {
+ if (extension_loaded($extension['extension'])) {
return $extension;
}
}
@@ -405,7 +386,7 @@ function Auth_OpenID_detectMathLibrary($exts)
* instance of a wrapper for that extension module. If no extension
* module is found, an instance of {@link Auth_OpenID_MathWrapper} is
* returned, which wraps the native PHP integer implementation. The
- * proper calling convention for this method is $lib =&
+ * proper calling convention for this method is $lib =
* Auth_OpenID_getMathLib().
*
* This function checks for the existence of specific long number
@@ -416,7 +397,7 @@ function Auth_OpenID_detectMathLibrary($exts)
*
* @package OpenID
*/
-function &Auth_OpenID_getMathLib()
+function Auth_OpenID_getMathLib()
{
// The instance of Auth_OpenID_MathWrapper that we choose to
// supply will be stored here, so that subseqent calls to this
@@ -468,4 +449,4 @@ function Auth_OpenID_noMathSupport()
return defined('Auth_OpenID_NO_MATH_SUPPORT');
}
-?>
+
diff --git a/extlib/Auth/OpenID/Consumer.php b/extlib/Auth/OpenID/Consumer.php
index 500890b65..021c03898 100644
--- a/extlib/Auth/OpenID/Consumer.php
+++ b/extlib/Auth/OpenID/Consumer.php
@@ -258,19 +258,19 @@ class Auth_OpenID_Consumer {
* when creating the internal consumer object. This is used for
* testing.
*/
- function Auth_OpenID_Consumer(&$store, $session = null,
+ function Auth_OpenID_Consumer($store, $session = null,
$consumer_cls = null)
{
if ($session === null) {
$session = new Auth_Yadis_PHPSession();
}
- $this->session =& $session;
+ $this->session = $session;
if ($consumer_cls !== null) {
- $this->consumer =& new $consumer_cls($store);
+ $this->consumer = new $consumer_cls($store);
} else {
- $this->consumer =& new Auth_OpenID_GenericConsumer($store);
+ $this->consumer = new Auth_OpenID_GenericConsumer($store);
}
$this->_token_key = $this->session_key_prefix . $this->_token_suffix;
@@ -281,7 +281,7 @@ class Auth_OpenID_Consumer {
*
* @access private
*/
- function getDiscoveryObject(&$session, $openid_url,
+ function getDiscoveryObject($session, $openid_url,
$session_key_prefix)
{
return new Auth_Yadis_Discovery($session, $openid_url,
@@ -339,7 +339,7 @@ class Auth_OpenID_Consumer {
$this->consumer->fetcher);
// Reset the 'stale' attribute of the manager.
- $m =& $disco->getManager();
+ $m = $disco->getManager();
if ($m) {
$m->stale = false;
$disco->session->set($disco->session_key,
@@ -370,7 +370,7 @@ class Auth_OpenID_Consumer {
* @return Auth_OpenID_AuthRequest $auth_request An OpenID
* authentication request object.
*/
- function &beginWithoutDiscovery($endpoint, $anonymous=false)
+ function beginWithoutDiscovery($endpoint, $anonymous=false)
{
$loader = new Auth_OpenID_ServiceEndpointLoader();
$auth_req = $this->consumer->begin($endpoint);
@@ -467,7 +467,7 @@ class Auth_OpenID_DiffieHellmanSHA1ConsumerSession {
function getRequest()
{
- $math =& Auth_OpenID_getMathLib();
+ $math = Auth_OpenID_getMathLib();
$cpub = $math->longToBase64($this->dh->public);
@@ -496,7 +496,7 @@ class Auth_OpenID_DiffieHellmanSHA1ConsumerSession {
return null;
}
- $math =& Auth_OpenID_getMathLib();
+ $math = Auth_OpenID_getMathLib();
$spub = $math->base64ToLong($response->getArg(Auth_OpenID_OPENID_NS,
'dh_server_public'));
@@ -611,11 +611,11 @@ class Auth_OpenID_GenericConsumer {
* in the module description. The default value is False, which
* disables immediate mode.
*/
- function Auth_OpenID_GenericConsumer(&$store)
+ function Auth_OpenID_GenericConsumer($store)
{
- $this->store =& $store;
- $this->negotiator =& Auth_OpenID_getDefaultNegotiator();
- $this->_use_assocs = ($this->store ? true : false);
+ $this->store = $store;
+ $this->negotiator = Auth_OpenID_getDefaultNegotiator();
+ $this->_use_assocs = (is_null($this->store) ? false : true);
$this->fetcher = Auth_Yadis_Yadis::getHTTPFetcher();
@@ -665,14 +665,14 @@ class Auth_OpenID_GenericConsumer {
$method = Auth_OpenID::arrayGet($mode_methods, $mode,
'_completeInvalid');
- return call_user_func_array(array(&$this, $method),
- array($message, $endpoint, $return_to));
+ return call_user_func_array(array($this, $method),
+ array($message, &$endpoint, $return_to));
}
/**
* @access private
*/
- function _completeInvalid($message, &$endpoint, $unused)
+ function _completeInvalid($message, $endpoint, $unused)
{
$mode = $message->getArg(Auth_OpenID_OPENID_NS, 'mode',
'<No mode set>');
@@ -684,7 +684,7 @@ class Auth_OpenID_GenericConsumer {
/**
* @access private
*/
- function _complete_cancel($message, &$endpoint, $unused)
+ function _complete_cancel($message, $endpoint, $unused)
{
return new Auth_OpenID_CancelResponse($endpoint);
}
@@ -692,7 +692,7 @@ class Auth_OpenID_GenericConsumer {
/**
* @access private
*/
- function _complete_error($message, &$endpoint, $unused)
+ function _complete_error($message, $endpoint, $unused)
{
$error = $message->getArg(Auth_OpenID_OPENID_NS, 'error');
$contact = $message->getArg(Auth_OpenID_OPENID_NS, 'contact');
@@ -705,7 +705,7 @@ class Auth_OpenID_GenericConsumer {
/**
* @access private
*/
- function _complete_setup_needed($message, &$endpoint, $unused)
+ function _complete_setup_needed($message, $endpoint, $unused)
{
if (!$message->isOpenID2()) {
return $this->_completeInvalid($message, $endpoint);
@@ -719,7 +719,7 @@ class Auth_OpenID_GenericConsumer {
/**
* @access private
*/
- function _complete_id_res($message, &$endpoint, $return_to)
+ function _complete_id_res($message, $endpoint, $return_to)
{
$user_setup_url = $message->getArg(Auth_OpenID_OPENID1_NS,
'user_setup_url');
@@ -1181,7 +1181,7 @@ class Auth_OpenID_GenericConsumer {
// oidutil.log('Performing discovery on %s' % (claimed_id,))
list($unused, $services) = call_user_func($this->discoverMethod,
$claimed_id,
- $this->fetcher);
+ &$this->fetcher);
if (!$services) {
return new Auth_OpenID_FailureResponse(null,
@@ -1197,7 +1197,7 @@ class Auth_OpenID_GenericConsumer {
* @access private
*/
function _verifyDiscoveryServices($claimed_id,
- &$services, &$to_match_endpoints)
+ $services, $to_match_endpoints)
{
// Search the services resulting from discovery to find one
// that matches the information from the assertion
@@ -1216,8 +1216,8 @@ class Auth_OpenID_GenericConsumer {
}
return new Auth_OpenID_FailureResponse(null,
- sprintf('No matching endpoint found after discovering %s',
- $claimed_id));
+ sprintf('No matching endpoint found after discovering %s: %s',
+ $claimed_id, $result->message));
}
/**
@@ -1397,7 +1397,7 @@ class Auth_OpenID_GenericConsumer {
*
* @access private
*/
- function _httpResponseToMessage($response, $server_url)
+ static function _httpResponseToMessage($response, $server_url)
{
// Should this function be named Message.fromHTTPResponse instead?
$response_message = Auth_OpenID_Message::fromKVForm($response->body);
@@ -1461,7 +1461,7 @@ class Auth_OpenID_GenericConsumer {
*
* @access private
*/
- function _extractSupportedAssociationType(&$server_error, &$endpoint,
+ function _extractSupportedAssociationType($server_error, $endpoint,
$assoc_type)
{
// Any error message whose code is not 'unsupported-type'
@@ -1566,7 +1566,7 @@ class Auth_OpenID_GenericConsumer {
/**
* @access private
*/
- function _extractAssociation(&$assoc_response, &$assoc_session)
+ function _extractAssociation($assoc_response, $assoc_session)
{
// Extract the common fields from the response, raising an
// exception if they are not found
@@ -1748,10 +1748,10 @@ class Auth_OpenID_AuthRequest {
* class. Instances of this class are created by the library when
* needed.
*/
- function Auth_OpenID_AuthRequest(&$endpoint, $assoc)
+ function Auth_OpenID_AuthRequest($endpoint, $assoc)
{
$this->assoc = $assoc;
- $this->endpoint =& $endpoint;
+ $this->endpoint = $endpoint;
$this->return_to_args = array();
$this->message = new Auth_OpenID_Message(
$endpoint->preferredNamespace());
@@ -1764,7 +1764,7 @@ class Auth_OpenID_AuthRequest {
* $extension_request: An object that implements the extension
* request interface for adding arguments to an OpenID message.
*/
- function addExtension(&$extension_request)
+ function addExtension($extension_request)
{
$extension_request->toMessage($this->message);
}
@@ -2089,7 +2089,7 @@ class Auth_OpenID_SuccessResponse extends Auth_OpenID_ConsumerResponse {
foreach ($msg_args as $key => $value) {
if (!$this->isSigned($ns_uri, $key)) {
- return null;
+ unset($msg_args[$key]);
}
}
@@ -2167,7 +2167,7 @@ class Auth_OpenID_ServerErrorContainer {
/**
* @access private
*/
- function fromMessage($message)
+ static function fromMessage($message)
{
$error_text = $message->getArg(
Auth_OpenID_OPENID_NS, 'error', '<no error message supplied>');
@@ -2227,4 +2227,4 @@ class Auth_OpenID_SetupNeededResponse extends Auth_OpenID_ConsumerResponse {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/CryptUtil.php b/extlib/Auth/OpenID/CryptUtil.php
index aacc3cd39..a92626777 100644
--- a/extlib/Auth/OpenID/CryptUtil.php
+++ b/extlib/Auth/OpenID/CryptUtil.php
@@ -37,7 +37,7 @@ class Auth_OpenID_CryptUtil {
* @param int $num_bytes The length of the return value
* @return string $bytes random bytes
*/
- function getBytes($num_bytes)
+ static function getBytes($num_bytes)
{
static $f = null;
$bytes = '';
@@ -77,7 +77,7 @@ class Auth_OpenID_CryptUtil {
* @return string $result A string of randomly-chosen characters
* from $chrs
*/
- function randomString($length, $population = null)
+ static function randomString($length, $population = null)
{
if ($population === null) {
return Auth_OpenID_CryptUtil::getBytes($length);
@@ -106,4 +106,3 @@ class Auth_OpenID_CryptUtil {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/DatabaseConnection.php b/extlib/Auth/OpenID/DatabaseConnection.php
index 9db6e0eb3..0c7d08f91 100644
--- a/extlib/Auth/OpenID/DatabaseConnection.php
+++ b/extlib/Auth/OpenID/DatabaseConnection.php
@@ -128,4 +128,3 @@ class Auth_OpenID_DatabaseConnection {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/DiffieHellman.php b/extlib/Auth/OpenID/DiffieHellman.php
index f4ded7eba..3e25b7dbb 100644
--- a/extlib/Auth/OpenID/DiffieHellman.php
+++ b/extlib/Auth/OpenID/DiffieHellman.php
@@ -51,9 +51,9 @@ class Auth_OpenID_DiffieHellman {
$private = null, $lib = null)
{
if ($lib === null) {
- $this->lib =& Auth_OpenID_getMathLib();
+ $this->lib = Auth_OpenID_getMathLib();
} else {
- $this->lib =& $lib;
+ $this->lib = $lib;
}
if ($mod === null) {
@@ -110,4 +110,4 @@ class Auth_OpenID_DiffieHellman {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/Discover.php b/extlib/Auth/OpenID/Discover.php
index 62aeb1d2b..7b0c640c5 100644
--- a/extlib/Auth/OpenID/Discover.php
+++ b/extlib/Auth/OpenID/Discover.php
@@ -28,8 +28,34 @@ function Auth_OpenID_getOpenIDTypeURIs()
Auth_OpenID_TYPE_2_0,
Auth_OpenID_TYPE_1_2,
Auth_OpenID_TYPE_1_1,
- Auth_OpenID_TYPE_1_0,
- Auth_OpenID_RP_RETURN_TO_URL_TYPE);
+ Auth_OpenID_TYPE_1_0);
+}
+
+function Auth_OpenID_getOpenIDConsumerTypeURIs()
+{
+ return array(Auth_OpenID_RP_RETURN_TO_URL_TYPE);
+}
+
+
+/*
+ * Provides a user-readable interpretation of a type uri.
+ * Useful for error messages.
+ */
+function Auth_OpenID_getOpenIDTypeName($type_uri) {
+ switch ($type_uri) {
+ case Auth_OpenID_TYPE_2_0_IDP:
+ return 'OpenID 2.0 IDP';
+ case Auth_OpenID_TYPE_2_0:
+ return 'OpenID 2.0';
+ case Auth_OpenID_TYPE_1_2:
+ return 'OpenID 1.2';
+ case Auth_OpenID_TYPE_1_1:
+ return 'OpenID 1.1';
+ case Auth_OpenID_TYPE_1_0:
+ return 'OpenID 1.0';
+ case Auth_OpenID_RP_RETURN_TO_URL_TYPE:
+ return 'OpenID relying party';
+ }
}
/**
@@ -124,7 +150,7 @@ class Auth_OpenID_ServiceEndpoint {
return in_array(Auth_OpenID_TYPE_2_0_IDP, $this->type_uris);
}
- function fromOPEndpointURL($op_endpoint_url)
+ static function fromOPEndpointURL($op_endpoint_url)
{
// Construct an OP-Identifier OpenIDServiceEndpoint object for
// a given OP Endpoint URL
@@ -172,17 +198,36 @@ class Auth_OpenID_ServiceEndpoint {
}
/*
- * Parse the given document as XRDS looking for OpenID services.
+ * Parse the given document as XRDS looking for OpenID consumer services.
*
* @return array of Auth_OpenID_ServiceEndpoint or null if the
* document cannot be parsed.
*/
- function fromXRDS($uri, $xrds_text)
+ function consumerFromXRDS($uri, $xrds_text)
{
$xrds =& Auth_Yadis_XRDS::parseXRDS($xrds_text);
if ($xrds) {
$yadis_services =
+ $xrds->services(array('filter_MatchesAnyOpenIDConsumerType'));
+ return Auth_OpenID_makeOpenIDEndpoints($uri, $yadis_services);
+ }
+
+ return null;
+ }
+
+ /*
+ * Parse the given document as XRDS looking for OpenID services.
+ *
+ * @return array of Auth_OpenID_ServiceEndpoint or null if the
+ * document cannot be parsed.
+ */
+ static function fromXRDS($uri, $xrds_text)
+ {
+ $xrds = Auth_Yadis_XRDS::parseXRDS($xrds_text);
+
+ if ($xrds) {
+ $yadis_services =
$xrds->services(array('filter_MatchesAnyOpenIDType'));
return Auth_OpenID_makeOpenIDEndpoints($uri, $yadis_services);
}
@@ -197,7 +242,7 @@ class Auth_OpenID_ServiceEndpoint {
* @return array of Auth_OpenID_ServiceEndpoint or null if
* endpoints cannot be created.
*/
- function fromDiscoveryResult($discoveryResult)
+ static function fromDiscoveryResult($discoveryResult)
{
if ($discoveryResult->isXRDS()) {
return Auth_OpenID_ServiceEndpoint::fromXRDS(
@@ -210,7 +255,7 @@ class Auth_OpenID_ServiceEndpoint {
}
}
- function fromHTML($uri, $html)
+ static function fromHTML($uri, $html)
{
$discovery_types = array(
array(Auth_OpenID_TYPE_2_0,
@@ -273,7 +318,7 @@ function Auth_OpenID_findOPLocalIdentifier($service, $type_uris)
$service->parser->registerNamespace('xrd',
Auth_Yadis_XMLNS_XRD_2_0);
- $parser =& $service->parser;
+ $parser = $service->parser;
$permitted_tags = array();
@@ -305,7 +350,7 @@ function Auth_OpenID_findOPLocalIdentifier($service, $type_uris)
return $local_id;
}
-function filter_MatchesAnyOpenIDType(&$service)
+function filter_MatchesAnyOpenIDType($service)
{
$uris = $service->getTypes();
@@ -318,6 +363,19 @@ function filter_MatchesAnyOpenIDType(&$service)
return false;
}
+function filter_MatchesAnyOpenIDConsumerType(&$service)
+{
+ $uris = $service->getTypes();
+
+ foreach ($uris as $uri) {
+ if (in_array($uri, Auth_OpenID_getOpenIDConsumerTypeURIs())) {
+ return true;
+ }
+ }
+
+ return false;
+}
+
function Auth_OpenID_bestMatchingService($service, $preferred_types)
{
// Return the index of the first matching type, or something
@@ -415,7 +473,7 @@ function Auth_OpenID_makeOpenIDEndpoints($uri, $yadis_services)
return $s;
}
-function Auth_OpenID_discoverWithYadis($uri, &$fetcher,
+function Auth_OpenID_discoverWithYadis($uri, $fetcher,
$endpoint_filter='Auth_OpenID_getOPOrUserServices',
$discover_function=null)
{
@@ -433,12 +491,12 @@ function Auth_OpenID_discoverWithYadis($uri, &$fetcher,
$openid_services = array();
$response = call_user_func_array($discover_function,
- array($uri, &$fetcher));
+ array($uri, $fetcher));
$yadis_url = $response->normalized_uri;
$yadis_services = array();
- if ($response->isFailure()) {
+ if ($response->isFailure() && !$response->isXRDS()) {
return array($uri, array());
}
@@ -460,18 +518,18 @@ function Auth_OpenID_discoverWithYadis($uri, &$fetcher,
}
$openid_services = call_user_func_array($endpoint_filter,
- array(&$openid_services));
+ array($openid_services));
return array($yadis_url, $openid_services);
}
-function Auth_OpenID_discoverURI($uri, &$fetcher)
+function Auth_OpenID_discoverURI($uri, $fetcher)
{
$uri = Auth_OpenID::normalizeUrl($uri);
return Auth_OpenID_discoverWithYadis($uri, $fetcher);
}
-function Auth_OpenID_discoverWithoutYadis($uri, &$fetcher)
+function Auth_OpenID_discoverWithoutYadis($uri, $fetcher)
{
$http_resp = @$fetcher->get($uri);
@@ -490,7 +548,7 @@ function Auth_OpenID_discoverWithoutYadis($uri, &$fetcher)
return array($identity_url, $openid_services);
}
-function Auth_OpenID_discoverXRI($iname, &$fetcher)
+function Auth_OpenID_discoverXRI($iname, $fetcher)
{
$resolver = new Auth_Yadis_ProxyResolver($fetcher);
list($canonicalID, $yadis_services) =
@@ -513,7 +571,7 @@ function Auth_OpenID_discoverXRI($iname, &$fetcher)
return array($iname, $openid_services);
}
-function Auth_OpenID_discover($uri, &$fetcher)
+function Auth_OpenID_discover($uri, $fetcher)
{
// If the fetcher (i.e., PHP) doesn't support SSL, we can't do
// discovery on an HTTPS URL.
@@ -545,4 +603,4 @@ function Auth_OpenID_discover($uri, &$fetcher)
return $result;
}
-?>
+
diff --git a/extlib/Auth/OpenID/DumbStore.php b/extlib/Auth/OpenID/DumbStore.php
index 22fd2d366..e8f29ace5 100644
--- a/extlib/Auth/OpenID/DumbStore.php
+++ b/extlib/Auth/OpenID/DumbStore.php
@@ -97,4 +97,3 @@ class Auth_OpenID_DumbStore extends Auth_OpenID_OpenIDStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Extension.php b/extlib/Auth/OpenID/Extension.php
index f362a4b38..c4e38c038 100644
--- a/extlib/Auth/OpenID/Extension.php
+++ b/extlib/Auth/OpenID/Extension.php
@@ -39,7 +39,7 @@ class Auth_OpenID_Extension {
*
* Returns the message with the extension arguments added.
*/
- function toMessage(&$message)
+ function toMessage($message)
{
$implicit = $message->isOpenID1();
$added = $message->namespaces->addAlias($this->ns_uri,
@@ -59,4 +59,3 @@ class Auth_OpenID_Extension {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/FileStore.php b/extlib/Auth/OpenID/FileStore.php
index 29d8d20e7..074421a0b 100644
--- a/extlib/Auth/OpenID/FileStore.php
+++ b/extlib/Auth/OpenID/FileStore.php
@@ -367,7 +367,7 @@ class Auth_OpenID_FileStore extends Auth_OpenID_OpenIDStore {
}
if ( abs($timestamp - time()) > $Auth_OpenID_SKEW ) {
- return False;
+ return false;
}
if ($server_url) {
@@ -519,7 +519,7 @@ class Auth_OpenID_FileStore extends Auth_OpenID_OpenIDStore {
/**
* @access private
*/
- function _mkdtemp($dir)
+ static function _mkdtemp($dir)
{
foreach (range(0, 4) as $i) {
$name = $dir . strval(DIRECTORY_SEPARATOR) . strval(getmypid()) .
@@ -615,4 +615,4 @@ class Auth_OpenID_FileStore extends Auth_OpenID_OpenIDStore {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/HMAC.php b/extlib/Auth/OpenID/HMAC.php
index ec42db8df..e9779bd4e 100644
--- a/extlib/Auth/OpenID/HMAC.php
+++ b/extlib/Auth/OpenID/HMAC.php
@@ -96,4 +96,3 @@ if (function_exists('hash_hmac') &&
define('Auth_OpenID_HMACSHA256_SUPPORTED', false);
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Interface.php b/extlib/Auth/OpenID/Interface.php
index f4c6062f8..eca6b9c50 100644
--- a/extlib/Auth/OpenID/Interface.php
+++ b/extlib/Auth/OpenID/Interface.php
@@ -194,4 +194,3 @@ class Auth_OpenID_OpenIDStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/KVForm.php b/extlib/Auth/OpenID/KVForm.php
index fb342a001..dd02661d8 100644
--- a/extlib/Auth/OpenID/KVForm.php
+++ b/extlib/Auth/OpenID/KVForm.php
@@ -26,7 +26,7 @@ class Auth_OpenID_KVForm {
* @static
* @access private
*/
- function toArray($kvs, $strict=false)
+ static function toArray($kvs, $strict=false)
{
$lines = explode("\n", $kvs);
@@ -78,7 +78,7 @@ class Auth_OpenID_KVForm {
* @static
* @access private
*/
- function fromArray($values)
+ static function fromArray($values)
{
if ($values === null) {
return null;
@@ -109,4 +109,3 @@ class Auth_OpenID_KVForm {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/MemcachedStore.php b/extlib/Auth/OpenID/MemcachedStore.php
index d357c6b11..fc10800b1 100644
--- a/extlib/Auth/OpenID/MemcachedStore.php
+++ b/extlib/Auth/OpenID/MemcachedStore.php
@@ -205,4 +205,3 @@ class Auth_OpenID_MemcachedStore extends Auth_OpenID_OpenIDStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Message.php b/extlib/Auth/OpenID/Message.php
index 5ab115a86..9aa1fa468 100644
--- a/extlib/Auth/OpenID/Message.php
+++ b/extlib/Auth/OpenID/Message.php
@@ -143,7 +143,7 @@ class Auth_OpenID_Mapping {
* Returns true if $thing is an Auth_OpenID_Mapping object; false
* if not.
*/
- function isA($thing)
+ static function isA($thing)
{
return (is_object($thing) &&
strtolower(get_class($thing)) == 'auth_openid_mapping');
@@ -442,7 +442,7 @@ class Auth_OpenID_Message {
return $this->getOpenIDNamespace() == Auth_OpenID_OPENID2_NS;
}
- function fromPostArgs($args)
+ static function fromPostArgs($args)
{
// Construct a Message containing a set of POST arguments
$obj = new Auth_OpenID_Message();
@@ -477,7 +477,7 @@ class Auth_OpenID_Message {
}
}
- function fromOpenIDArgs($openid_args)
+ static function fromOpenIDArgs($openid_args)
{
// Takes an array.
@@ -594,7 +594,7 @@ class Auth_OpenID_Message {
return $this->_openid_ns_uri;
}
- function fromKVForm($kvform_string)
+ static function fromKVForm($kvform_string)
{
// Create a Message from a KVForm string
return Auth_OpenID_Message::fromOpenIDArgs(
@@ -917,4 +917,4 @@ class Auth_OpenID_Message {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/MySQLStore.php b/extlib/Auth/OpenID/MySQLStore.php
index eb08af016..810f059f1 100644
--- a/extlib/Auth/OpenID/MySQLStore.php
+++ b/extlib/Auth/OpenID/MySQLStore.php
@@ -75,4 +75,3 @@ class Auth_OpenID_MySQLStore extends Auth_OpenID_SQLStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Nonce.php b/extlib/Auth/OpenID/Nonce.php
index effecac38..b83c5911f 100644
--- a/extlib/Auth/OpenID/Nonce.php
+++ b/extlib/Auth/OpenID/Nonce.php
@@ -106,4 +106,3 @@ function Auth_OpenID_mkNonce($when = null)
return $time_str . $salt;
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/PAPE.php b/extlib/Auth/OpenID/PAPE.php
index 62cba8a91..f08ca8bd0 100644
--- a/extlib/Auth/OpenID/PAPE.php
+++ b/extlib/Auth/OpenID/PAPE.php
@@ -21,7 +21,7 @@ define('PAPE_AUTH_PHISHING_RESISTANT',
'http://schemas.openid.net/pape/policies/2007/06/phishing-resistant');
define('PAPE_TIME_VALIDATOR',
- '^[0-9]{4,4}-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9]Z$');
+ '/^[0-9]{4,4}-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9]Z$/');
/**
* A Provider Authentication Policy request, sent from a relying party
* to a provider
@@ -82,7 +82,7 @@ class Auth_OpenID_PAPE_Request extends Auth_OpenID_Extension {
* Instantiate a Request object from the arguments in a checkid_*
* OpenID message
*/
- function fromOpenIDRequest($request)
+ static function fromOpenIDRequest($request)
{
$obj = new Auth_OpenID_PAPE_Request();
$args = $request->message->getArgs(Auth_OpenID_PAPE_NS_URI);
@@ -201,7 +201,7 @@ class Auth_OpenID_PAPE_Response extends Auth_OpenID_Extension {
* @returns: A provider authentication policy response from the
* data that was supplied with the id_res response.
*/
- function fromSuccessResponse($success_response)
+ static function fromSuccessResponse($success_response)
{
$obj = new Auth_OpenID_PAPE_Response();
@@ -262,7 +262,7 @@ class Auth_OpenID_PAPE_Response extends Auth_OpenID_Extension {
$auth_time = Auth_OpenID::arrayGet($args, 'auth_time');
if ($auth_time !== null) {
- if (ereg(PAPE_TIME_VALIDATOR, $auth_time)) {
+ if (preg_match(PAPE_TIME_VALIDATOR, $auth_time)) {
$this->auth_time = $auth_time;
} else if ($strict) {
return false;
@@ -287,7 +287,7 @@ class Auth_OpenID_PAPE_Response extends Auth_OpenID_Extension {
}
if ($this->auth_time !== null) {
- if (!ereg(PAPE_TIME_VALIDATOR, $this->auth_time)) {
+ if (!preg_match(PAPE_TIME_VALIDATOR, $this->auth_time)) {
return false;
}
@@ -298,4 +298,3 @@ class Auth_OpenID_PAPE_Response extends Auth_OpenID_Extension {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/Parse.php b/extlib/Auth/OpenID/Parse.php
index 546f34f6b..6c2e72169 100644
--- a/extlib/Auth/OpenID/Parse.php
+++ b/extlib/Auth/OpenID/Parse.php
@@ -101,7 +101,7 @@ class Auth_OpenID_Parse {
* Starts with the tag name at a word boundary, where the tag name
* is not a namespace
*/
- var $_tag_expr = "<%s\b(?!:)([^>]*?)(?:\/>|>(.*?)(?:<\/?%s\s*>|\Z))";
+ var $_tag_expr = "<%s\b(?!:)([^>]*?)(?:\/>|>(.*)(?:<\/?%s\s*>|\Z))";
var $_attr_find = '\b(\w+)=("[^"]*"|\'[^\']*\'|[^\'"\s\/<>]+)';
@@ -215,11 +215,31 @@ class Auth_OpenID_Parse {
return $str;
}
}
+
+ function match($regexp, $text, &$match)
+ {
+ if (!is_callable('mb_ereg_search_init')) {
+ return preg_match($regexp, $text, $match);
+ }
+
+ $regexp = substr($regexp, 1, strlen($regexp) - 2 - strlen($this->_re_flags));
+ mb_ereg_search_init($text);
+ if (!mb_ereg_search($regexp)) {
+ return false;
+ }
+ list($match) = mb_ereg_search_getregs();
+ return true;
+ }
/**
* Find all link tags in a string representing a HTML document and
* return a list of their attributes.
*
+ * @todo This is quite ineffective and may fail with the default
+ * pcre.backtrack_limit of 100000 in PHP 5.2, if $html is big.
+ * It should rather use stripos (in PHP5) or strpos()+strtoupper()
+ * in PHP4 to manage this.
+ *
* @param string $html The text to parse
* @return array $list An array of arrays of attributes, one for each
* link tag
@@ -244,18 +264,23 @@ class Auth_OpenID_Parse {
$stripped = substr($stripped, $html_begin,
$html_end - $html_begin);
+ // Workaround to prevent PREG_BACKTRACK_LIMIT_ERROR:
+ $old_btlimit = ini_set( 'pcre.backtrack_limit', -1 );
+
// Try to find the <HEAD> tag.
$head_re = $this->headFind();
- $head_matches = array();
- if (!preg_match($head_re, $stripped, $head_matches)) {
- return array();
+ $head_match = '';
+ if (!$this->match($head_re, $stripped, $head_match)) {
+ ini_set( 'pcre.backtrack_limit', $old_btlimit );
+ return array();
}
$link_data = array();
$link_matches = array();
- if (!preg_match_all($this->_link_find, $head_matches[0],
+ if (!preg_match_all($this->_link_find, $head_match,
$link_matches)) {
+ ini_set( 'pcre.backtrack_limit', $old_btlimit );
return array();
}
@@ -273,6 +298,7 @@ class Auth_OpenID_Parse {
$link_data[] = $link_attrs;
}
+ ini_set( 'pcre.backtrack_limit', $old_btlimit );
return $link_data;
}
@@ -349,4 +375,3 @@ function Auth_OpenID_legacy_discover($html_text, $server_rel,
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/PostgreSQLStore.php b/extlib/Auth/OpenID/PostgreSQLStore.php
index 69d95e7b8..d90e43e00 100644
--- a/extlib/Auth/OpenID/PostgreSQLStore.php
+++ b/extlib/Auth/OpenID/PostgreSQLStore.php
@@ -110,4 +110,3 @@ class Auth_OpenID_PostgreSQLStore extends Auth_OpenID_SQLStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/SQLStore.php b/extlib/Auth/OpenID/SQLStore.php
index da93c6aa2..c04059732 100644
--- a/extlib/Auth/OpenID/SQLStore.php
+++ b/extlib/Auth/OpenID/SQLStore.php
@@ -14,16 +14,6 @@
*/
/**
- * Require the PEAR DB module because we'll need it for the SQL-based
- * stores implemented here. We silence any errors from the inclusion
- * because it might not be present, and a user of the SQL stores may
- * supply an Auth_OpenID_DatabaseConnection instance that implements
- * its own storage.
- */
-global $__Auth_OpenID_PEAR_AVAILABLE;
-$__Auth_OpenID_PEAR_AVAILABLE = @include_once 'DB.php';
-
-/**
* @access private
*/
require_once 'Auth/OpenID/Interface.php';
@@ -89,8 +79,6 @@ class Auth_OpenID_SQLStore extends Auth_OpenID_OpenIDStore {
$associations_table = null,
$nonces_table = null)
{
- global $__Auth_OpenID_PEAR_AVAILABLE;
-
$this->associations_table_name = "oid_associations";
$this->nonces_table_name = "oid_nonces";
@@ -113,7 +101,7 @@ class Auth_OpenID_SQLStore extends Auth_OpenID_OpenIDStore {
// constant, so only try to use it if PEAR is present. Note
// that Auth_Openid_Databaseconnection instances need not
// implement ::setFetchMode for this reason.
- if ($__Auth_OpenID_PEAR_AVAILABLE) {
+ if (is_subclass_of($this->connection, 'db_common')) {
$this->connection->setFetchMode(DB_FETCHMODE_ASSOC);
}
@@ -482,7 +470,7 @@ class Auth_OpenID_SQLStore extends Auth_OpenID_OpenIDStore {
global $Auth_OpenID_SKEW;
if ( abs($timestamp - time()) > $Auth_OpenID_SKEW ) {
- return False;
+ return false;
}
return $this->_add_nonce($server_url, $timestamp, $salt);
@@ -566,4 +554,4 @@ class Auth_OpenID_SQLStore extends Auth_OpenID_OpenIDStore {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/SQLiteStore.php b/extlib/Auth/OpenID/SQLiteStore.php
index ec2bf58e4..4558fa1c3 100644
--- a/extlib/Auth/OpenID/SQLiteStore.php
+++ b/extlib/Auth/OpenID/SQLiteStore.php
@@ -68,4 +68,3 @@ class Auth_OpenID_SQLiteStore extends Auth_OpenID_SQLStore {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/SReg.php b/extlib/Auth/OpenID/SReg.php
index 63280769f..5ece70724 100644
--- a/extlib/Auth/OpenID/SReg.php
+++ b/extlib/Auth/OpenID/SReg.php
@@ -94,7 +94,7 @@ Auth_OpenID_registerNamespaceAlias(Auth_OpenID_SREG_NS_URI_1_1, 'sreg');
* $endpoint: The endpoint object as returned by OpenID discovery.
* returns whether an sreg type was advertised by the endpoint
*/
-function Auth_OpenID_supportsSReg(&$endpoint)
+function Auth_OpenID_supportsSReg($endpoint)
{
return ($endpoint->usesExtension(Auth_OpenID_SREG_NS_URI_1_1) ||
$endpoint->usesExtension(Auth_OpenID_SREG_NS_URI_1_0));
@@ -122,7 +122,7 @@ class Auth_OpenID_SRegBase extends Auth_OpenID_Extension {
*
* @access private
*/
- function _getSRegNS(&$message)
+ static function _getSRegNS($message)
{
$alias = null;
$found_ns_uri = null;
@@ -173,7 +173,7 @@ class Auth_OpenID_SRegRequest extends Auth_OpenID_SRegBase {
/**
* Initialize an empty simple registration request.
*/
- function build($required=null, $optional=null,
+ static function build($required=null, $optional=null,
$policy_url=null,
$sreg_ns_uri=Auth_OpenID_SREG_NS_URI,
$cls='Auth_OpenID_SRegRequest')
@@ -213,7 +213,7 @@ class Auth_OpenID_SRegRequest extends Auth_OpenID_SRegBase {
*
* Returns the newly created simple registration request
*/
- function fromOpenIDRequest($request, $cls='Auth_OpenID_SRegRequest')
+ static function fromOpenIDRequest($request, $cls='Auth_OpenID_SRegRequest')
{
$obj = call_user_func_array(array($cls, 'build'),
@@ -442,7 +442,7 @@ class Auth_OpenID_SRegResponse extends Auth_OpenID_SRegBase {
* string (unicode) value. For instance, the nickname should be
* stored under the key 'nickname'.
*/
- function extractResponse($request, $data)
+ static function extractResponse($request, $data)
{
$obj = new Auth_OpenID_SRegResponse();
$obj->ns_uri = $request->ns_uri;
@@ -471,7 +471,7 @@ class Auth_OpenID_SRegResponse extends Auth_OpenID_SRegBase {
* Returns a simple registration response containing the data that
* was supplied with the C{id_res} response.
*/
- function fromSuccessResponse(&$success_response, $signed_only=true)
+ static function fromSuccessResponse($success_response, $signed_only=true)
{
global $Auth_OpenID_sreg_data_fields;
@@ -518,4 +518,4 @@ class Auth_OpenID_SRegResponse extends Auth_OpenID_SRegBase {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/Server.php b/extlib/Auth/OpenID/Server.php
index f1db4d872..cc8ba961c 100644
--- a/extlib/Auth/OpenID/Server.php
+++ b/extlib/Auth/OpenID/Server.php
@@ -43,7 +43,7 @@
* consumers to add extensions to their requests. For example, with
* sites using the Simple Registration
* Extension
- * (http://www.openidenabled.com/openid/simple-registration-extension/),
+ * (http://openid.net/specs/openid-simple-registration-extension-1_0.html),
* a user can agree to have their nickname and e-mail address sent to
* a site when they sign up.
*
@@ -365,7 +365,7 @@ class Auth_OpenID_CheckAuthRequest extends Auth_OpenID_Request {
$this->message = null;
}
- function fromMessage($message, $server=null)
+ static function fromMessage($message, $server=null)
{
$required_keys = array('assoc_handle', 'sig', 'signed');
@@ -396,7 +396,7 @@ class Auth_OpenID_CheckAuthRequest extends Auth_OpenID_Request {
return $result;
}
- function answer(&$signatory)
+ function answer($signatory)
{
$is_valid = $signatory->verify($this->assoc_handle, $this->signed);
@@ -436,7 +436,7 @@ class Auth_OpenID_PlainTextServerSession {
var $needs_math = false;
var $allowed_assoc_types = array('HMAC-SHA1', 'HMAC-SHA256');
- function fromMessage($unused_request)
+ static function fromMessage($unused_request)
{
return new Auth_OpenID_PlainTextServerSession();
}
@@ -469,7 +469,7 @@ class Auth_OpenID_DiffieHellmanSHA1ServerSession {
$this->consumer_pubkey = $consumer_pubkey;
}
- function getDH($message)
+ static function getDH($message)
{
$dh_modulus = $message->getArg(Auth_OpenID_OPENID_NS, 'dh_modulus');
$dh_gen = $message->getArg(Auth_OpenID_OPENID_NS, 'dh_gen');
@@ -489,7 +489,7 @@ class Auth_OpenID_DiffieHellmanSHA1ServerSession {
$missing);
}
- $lib =& Auth_OpenID_getMathLib();
+ $lib = Auth_OpenID_getMathLib();
if ($dh_modulus || $dh_gen) {
$dh_modulus = $lib->base64ToLong($dh_modulus);
@@ -523,7 +523,7 @@ class Auth_OpenID_DiffieHellmanSHA1ServerSession {
return array($dh, $consumer_pubkey);
}
- function fromMessage($message)
+ static function fromMessage($message)
{
$result = Auth_OpenID_DiffieHellmanSHA1ServerSession::getDH($message);
@@ -538,7 +538,7 @@ class Auth_OpenID_DiffieHellmanSHA1ServerSession {
function answer($secret)
{
- $lib =& Auth_OpenID_getMathLib();
+ $lib = Auth_OpenID_getMathLib();
$mac_key = $this->dh->xorSecret($this->consumer_pubkey, $secret,
$this->hash_func);
return array(
@@ -560,7 +560,7 @@ class Auth_OpenID_DiffieHellmanSHA256ServerSession
var $hash_func = 'Auth_OpenID_SHA256';
var $allowed_assoc_types = array('HMAC-SHA256');
- function fromMessage($message)
+ static function fromMessage($message)
{
$result = Auth_OpenID_DiffieHellmanSHA1ServerSession::getDH($message);
@@ -582,7 +582,7 @@ class Auth_OpenID_DiffieHellmanSHA256ServerSession
class Auth_OpenID_AssociateRequest extends Auth_OpenID_Request {
var $mode = "associate";
- function getSessionClasses()
+ static function getSessionClasses()
{
return array(
'no-encryption' => 'Auth_OpenID_PlainTextServerSession',
@@ -590,14 +590,14 @@ class Auth_OpenID_AssociateRequest extends Auth_OpenID_Request {
'DH-SHA256' => 'Auth_OpenID_DiffieHellmanSHA256ServerSession');
}
- function Auth_OpenID_AssociateRequest(&$session, $assoc_type)
+ function Auth_OpenID_AssociateRequest($session, $assoc_type)
{
- $this->session =& $session;
+ $this->session = $session;
$this->namespace = Auth_OpenID_OPENID2_NS;
$this->assoc_type = $assoc_type;
}
- function fromMessage($message, $server=null)
+ static function fromMessage($message, $server=null)
{
if ($message->isOpenID1()) {
$session_type = $message->getArg(Auth_OpenID_OPENID_NS,
@@ -696,7 +696,7 @@ class Auth_OpenID_AssociateRequest extends Auth_OpenID_Request {
'session_type',
$preferred_session_type);
}
-
+ $response->code = AUTH_OPENID_HTTP_ERROR;
return $response;
}
}
@@ -734,7 +734,7 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
*/
var $namespace;
- function make(&$message, $identity, $return_to, $trust_root = null,
+ static function make($message, $identity, $return_to, $trust_root = null,
$immediate = false, $assoc_handle = null, $server = null)
{
if ($server === null) {
@@ -752,7 +752,7 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
$assoc_handle, $server);
$r->namespace = $message->getOpenIDNamespace();
- $r->message =& $message;
+ $r->message = $message;
if (!$r->trustRootValid()) {
return new Auth_OpenID_UntrustedReturnURL($message,
@@ -778,7 +778,7 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
}
$this->return_to = $return_to;
$this->trust_root = $trust_root;
- $this->server =& $server;
+ $this->server = $server;
if ($immediate) {
$this->immediate = true;
@@ -817,11 +817,12 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
*/
function returnToVerified()
{
+ $fetcher = Auth_Yadis_Yadis::getHTTPFetcher();
return call_user_func_array($this->verifyReturnTo,
- array($this->trust_root, $this->return_to));
+ array($this->trust_root, $this->return_to, $fetcher));
}
-
- function fromMessage(&$message, $server)
+
+ static function fromMessage($message, $server)
{
$mode = $message->getArg(Auth_OpenID_OPENID_NS, 'mode');
$immediate = null;
@@ -1097,7 +1098,7 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
in OpenID 1.x immediate mode.');
}
- $setup_request =& new Auth_OpenID_CheckIDRequest(
+ $setup_request = new Auth_OpenID_CheckIDRequest(
$this->identity,
$this->return_to,
$this->trust_root,
@@ -1183,9 +1184,9 @@ class Auth_OpenID_CheckIDRequest extends Auth_OpenID_Request {
*/
class Auth_OpenID_ServerResponse {
- function Auth_OpenID_ServerResponse(&$request)
+ function Auth_OpenID_ServerResponse($request)
{
- $this->request =& $request;
+ $this->request = $request;
$this->fields = new Auth_OpenID_Message($this->request->namespace);
}
@@ -1310,10 +1311,10 @@ class Auth_OpenID_Signatory {
/**
* Create a new signatory using a given store.
*/
- function Auth_OpenID_Signatory(&$store)
+ function Auth_OpenID_Signatory($store)
{
// assert store is not None
- $this->store =& $store;
+ $this->store = $store;
}
/**
@@ -1447,7 +1448,7 @@ class Auth_OpenID_Encoder {
* Encode an {@link Auth_OpenID_ServerResponse} and return an
* {@link Auth_OpenID_WebResponse}.
*/
- function encode(&$response)
+ function encode($response)
{
$cls = $this->responseFactory;
@@ -1463,10 +1464,14 @@ class Auth_OpenID_Encoder {
array('location' => $location));
} else if ($encode_as == Auth_OpenID_ENCODE_HTML_FORM) {
$wr = new $cls(AUTH_OPENID_HTTP_OK, array(),
- $response->toFormMarkup());
+ $response->toHTML());
} else {
return new Auth_OpenID_EncodingError($response);
}
+ /* Allow the response to carry a custom error code (ex: for Association errors) */
+ if(isset($response->code)) {
+ $wr->code = $response->code;
+ }
return $wr;
}
}
@@ -1478,16 +1483,16 @@ class Auth_OpenID_Encoder {
*/
class Auth_OpenID_SigningEncoder extends Auth_OpenID_Encoder {
- function Auth_OpenID_SigningEncoder(&$signatory)
+ function Auth_OpenID_SigningEncoder($signatory)
{
- $this->signatory =& $signatory;
+ $this->signatory = $signatory;
}
/**
* Sign an {@link Auth_OpenID_ServerResponse} and return an
* {@link Auth_OpenID_WebResponse}.
*/
- function encode(&$response)
+ function encode($response)
{
// the isinstance is a bit of a kludge... it means there isn't
// really an adapter to make the interfaces quite match.
@@ -1516,9 +1521,9 @@ class Auth_OpenID_SigningEncoder extends Auth_OpenID_Encoder {
*/
class Auth_OpenID_Decoder {
- function Auth_OpenID_Decoder(&$server)
+ function Auth_OpenID_Decoder($server)
{
- $this->server =& $server;
+ $this->server = $server;
$this->handlers = array(
'checkid_setup' => 'Auth_OpenID_CheckIDRequest',
@@ -1599,9 +1604,9 @@ class Auth_OpenID_Decoder {
* @package OpenID
*/
class Auth_OpenID_EncodingError {
- function Auth_OpenID_EncodingError(&$response)
+ function Auth_OpenID_EncodingError($response)
{
- $this->response =& $response;
+ $this->response = $response;
}
}
@@ -1674,14 +1679,14 @@ class Auth_OpenID_UntrustedReturnURL extends Auth_OpenID_ServerError {
* @package OpenID
*/
class Auth_OpenID_Server {
- function Auth_OpenID_Server(&$store, $op_endpoint=null)
+ function Auth_OpenID_Server($store, $op_endpoint=null)
{
- $this->store =& $store;
- $this->signatory =& new Auth_OpenID_Signatory($this->store);
- $this->encoder =& new Auth_OpenID_SigningEncoder($this->signatory);
- $this->decoder =& new Auth_OpenID_Decoder($this);
+ $this->store = $store;
+ $this->signatory = new Auth_OpenID_Signatory($this->store);
+ $this->encoder = new Auth_OpenID_SigningEncoder($this->signatory);
+ $this->decoder = new Auth_OpenID_Decoder($this);
$this->op_endpoint = $op_endpoint;
- $this->negotiator =& Auth_OpenID_getDefaultNegotiator();
+ $this->negotiator = Auth_OpenID_getDefaultNegotiator();
}
/**
@@ -1699,7 +1704,7 @@ class Auth_OpenID_Server {
{
if (method_exists($this, "openid_" . $request->mode)) {
$handler = array($this, "openid_" . $request->mode);
- return call_user_func($handler, $request);
+ return call_user_func($handler, &$request);
}
return null;
}
@@ -1707,7 +1712,7 @@ class Auth_OpenID_Server {
/**
* The callback for 'check_authentication' messages.
*/
- function openid_check_authentication(&$request)
+ function openid_check_authentication($request)
{
return $request->answer($this->signatory);
}
@@ -1715,7 +1720,7 @@ class Auth_OpenID_Server {
/**
* The callback for 'associate' messages.
*/
- function openid_associate(&$request)
+ function openid_associate($request)
{
$assoc_type = $request->assoc_type;
$session_type = $request->session->session_type;
@@ -1738,7 +1743,7 @@ class Auth_OpenID_Server {
* Encodes as response in the appropriate format suitable for
* sending to the user agent.
*/
- function encodeResponse(&$response)
+ function encodeResponse($response)
{
return $this->encoder->encode($response);
}
@@ -1757,4 +1762,4 @@ class Auth_OpenID_Server {
}
}
-?>
+
diff --git a/extlib/Auth/OpenID/ServerRequest.php b/extlib/Auth/OpenID/ServerRequest.php
index 33a8556ce..69222a5e0 100644
--- a/extlib/Auth/OpenID/ServerRequest.php
+++ b/extlib/Auth/OpenID/ServerRequest.php
@@ -34,4 +34,3 @@ class Auth_OpenID_ServerRequest {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/TrustRoot.php b/extlib/Auth/OpenID/TrustRoot.php
index 4919a6065..000440b58 100644
--- a/extlib/Auth/OpenID/TrustRoot.php
+++ b/extlib/Auth/OpenID/TrustRoot.php
@@ -58,7 +58,7 @@ class Auth_OpenID_TrustRoot {
* @return The URL upon which relying party discovery should be
* run in order to verify the return_to URL
*/
- function buildDiscoveryURL($realm)
+ static function buildDiscoveryURL($realm)
{
$parsed = Auth_OpenID_TrustRoot::_parse($realm);
@@ -93,7 +93,7 @@ class Auth_OpenID_TrustRoot {
* @return mixed $parsed Either an associative array of trust root
* parts or false if parsing failed.
*/
- function _parse($trust_root)
+ static function _parse($trust_root)
{
$trust_root = Auth_OpenID_urinorm($trust_root);
if ($trust_root === null) {
@@ -199,7 +199,7 @@ class Auth_OpenID_TrustRoot {
* @param string $trust_root The trust root to check
* @return bool $sanity Whether the trust root looks OK
*/
- function isSane($trust_root)
+ static function isSane($trust_root)
{
$parts = Auth_OpenID_TrustRoot::_parse($trust_root);
if ($parts === false) {
@@ -269,7 +269,7 @@ class Auth_OpenID_TrustRoot {
* @return bool $matches Whether the URL matches against the
* trust root
*/
- function match($trust_root, $url)
+ static function match($trust_root, $url)
{
$trust_root_parsed = Auth_OpenID_TrustRoot::_parse($trust_root);
$url_parsed = Auth_OpenID_TrustRoot::_parse($url);
@@ -341,7 +341,7 @@ class Auth_OpenID_TrustRoot {
* @returns: The endpoint URL or None if the endpoint is not a
* relying party endpoint.
*/
-function filter_extractReturnURL(&$endpoint)
+function filter_extractReturnURL($endpoint)
{
if ($endpoint->matchTypes(array(Auth_OpenID_RP_RETURN_TO_URL_TYPE))) {
return $endpoint;
@@ -394,14 +394,14 @@ function Auth_OpenID_returnToMatches($allowed_return_to_urls, $return_to)
* Given a relying party discovery URL return a list of return_to
* URLs.
*/
-function Auth_OpenID_getAllowedReturnURLs($relying_party_url, &$fetcher,
+function Auth_OpenID_getAllowedReturnURLs($relying_party_url, $fetcher,
$discover_function=null)
{
if ($discover_function === null) {
$discover_function = array('Auth_Yadis_Yadis', 'discover');
}
- $xrds_parse_cb = array('Auth_OpenID_ServiceEndpoint', 'fromXRDS');
+ $xrds_parse_cb = array('Auth_OpenID_ServiceEndpoint', 'consumerFromXRDS');
list($rp_url_after_redirects, $endpoints) =
Auth_Yadis_getServiceEndpoints($relying_party_url, $xrds_parse_cb,
@@ -413,7 +413,7 @@ function Auth_OpenID_getAllowedReturnURLs($relying_party_url, &$fetcher,
}
call_user_func_array($discover_function,
- array($relying_party_url, $fetcher));
+ array($relying_party_url, &$fetcher));
$return_to_urls = array();
$matching_endpoints = Auth_OpenID_extractReturnURL($endpoints);
@@ -435,7 +435,7 @@ function Auth_OpenID_getAllowedReturnURLs($relying_party_url, &$fetcher,
*
* @return true if the return_to URL is valid for the realm
*/
-function Auth_OpenID_verifyReturnTo($realm_str, $return_to, &$fetcher,
+function Auth_OpenID_verifyReturnTo($realm_str, $return_to, $fetcher,
$_vrfy='Auth_OpenID_getAllowedReturnURLs')
{
$disco_url = Auth_OpenID_TrustRoot::buildDiscoveryURL($realm_str);
@@ -445,7 +445,7 @@ function Auth_OpenID_verifyReturnTo($realm_str, $return_to, &$fetcher,
}
$allowable_urls = call_user_func_array($_vrfy,
- array($disco_url, &$fetcher));
+ array($disco_url, $fetcher));
// The realm_str could not be parsed.
if ($allowable_urls === false) {
@@ -459,4 +459,3 @@ function Auth_OpenID_verifyReturnTo($realm_str, $return_to, &$fetcher,
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/OpenID/URINorm.php b/extlib/Auth/OpenID/URINorm.php
index f821d836a..c051b550a 100644
--- a/extlib/Auth/OpenID/URINorm.php
+++ b/extlib/Auth/OpenID/URINorm.php
@@ -246,4 +246,4 @@ function Auth_OpenID_urinorm($uri)
return $scheme . '://' . $authority . $path . $query . $fragment;
}
-?>
+
diff --git a/extlib/Auth/Yadis/HTTPFetcher.php b/extlib/Auth/Yadis/HTTPFetcher.php
index 963b9a49a..148cde1b2 100644
--- a/extlib/Auth/Yadis/HTTPFetcher.php
+++ b/extlib/Auth/Yadis/HTTPFetcher.php
@@ -115,12 +115,40 @@ class Auth_Yadis_HTTPFetcher {
/**
* @access private
*/
- function _findRedirect($headers)
+ function _findRedirect($headers, $url)
{
foreach ($headers as $line) {
if (strpos(strtolower($line), "location: ") === 0) {
$parts = explode(" ", $line, 2);
- return $parts[1];
+ $loc = $parts[1];
+ $ppos = strpos($loc, "://");
+ if ($ppos === false || $ppos > strpos($loc, "/")) {
+ /* no host; add it */
+ $hpos = strpos($url, "://");
+ $prt = substr($url, 0, $hpos+3);
+ $url = substr($url, $hpos+3);
+ if (substr($loc, 0, 1) == "/") {
+ /* absolute path */
+ $fspos = strpos($url, "/");
+ if ($fspos) $loc = $prt.substr($url, 0, $fspos).$loc;
+ else $loc = $prt.$url.$loc;
+ } else {
+ /* relative path */
+ $pp = $prt;
+ while (1) {
+ $xpos = strpos($url, "/");
+ if ($xpos === false) break;
+ $apos = strpos($url, "?");
+ if ($apos !== false && $apos < $xpos) break;
+ $apos = strpos($url, "&");
+ if ($apos !== false && $apos < $xpos) break;
+ $pp .= substr($url, 0, $xpos+1);
+ $url = substr($url, $xpos+1);
+ }
+ $loc = $pp.$loc;
+ }
+ }
+ return $loc;
}
}
return null;
@@ -144,4 +172,3 @@ class Auth_Yadis_HTTPFetcher {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/Manager.php b/extlib/Auth/Yadis/Manager.php
index d50cf7ad6..ee6f68bcb 100644
--- a/extlib/Auth/Yadis/Manager.php
+++ b/extlib/Auth/Yadis/Manager.php
@@ -387,11 +387,11 @@ class Auth_Yadis_Discovery {
* @param string $session_key_suffix The optional session key
* suffix override.
*/
- function Auth_Yadis_Discovery(&$session, $url,
+ function Auth_Yadis_Discovery($session, $url,
$session_key_suffix = null)
{
/// Initialize a discovery object
- $this->session =& $session;
+ $this->session = $session;
$this->url = $url;
if ($session_key_suffix === null) {
$session_key_suffix = $this->DEFAULT_SUFFIX;
@@ -405,7 +405,7 @@ class Auth_Yadis_Discovery {
* Return the next authentication service for the pair of
* user_input and session. This function handles fallback.
*/
- function getNextService($discover_cb, &$fetcher)
+ function getNextService($discover_cb, $fetcher)
{
$manager = $this->getManager();
if (!$manager || (!$manager->services)) {
@@ -413,7 +413,7 @@ class Auth_Yadis_Discovery {
list($yadis_url, $services) = call_user_func($discover_cb,
$this->url,
- $fetcher);
+ &$fetcher);
$manager = $this->createManager($services, $yadis_url);
}
@@ -466,7 +466,7 @@ class Auth_Yadis_Discovery {
* @param $force True if the manager should be returned regardless
* of whether it's a manager for $this->url.
*/
- function &getManager($force=false)
+ function getManager($force=false)
{
// Extract the YadisServiceManager for this object's URL and
// suffix from the session.
@@ -481,16 +481,13 @@ class Auth_Yadis_Discovery {
if ($manager && ($manager->forURL($this->url) || $force)) {
return $manager;
- } else {
- $unused = null;
- return $unused;
}
}
/**
* @access private
*/
- function &createManager($services, $yadis_url = null)
+ function createManager($services, $yadis_url = null)
{
$key = $this->getSessionKey();
if ($this->getManager()) {
@@ -504,10 +501,6 @@ class Auth_Yadis_Discovery {
$this->session->set($this->session_key,
serialize($loader->toSession($manager)));
return $manager;
- } else {
- // Oh, PHP.
- $unused = null;
- return $unused;
}
}
@@ -526,4 +519,3 @@ class Auth_Yadis_Discovery {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/Misc.php b/extlib/Auth/Yadis/Misc.php
index 1134a4ff4..a5afa8e9a 100644
--- a/extlib/Auth/Yadis/Misc.php
+++ b/extlib/Auth/Yadis/Misc.php
@@ -56,4 +56,3 @@ function Auth_Yadis_startswith($s, $stuff)
return strpos($s, $stuff) === 0;
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/ParanoidHTTPFetcher.php b/extlib/Auth/Yadis/ParanoidHTTPFetcher.php
index 6a418260e..4da7c94c0 100644
--- a/extlib/Auth/Yadis/ParanoidHTTPFetcher.php
+++ b/extlib/Auth/Yadis/ParanoidHTTPFetcher.php
@@ -109,9 +109,9 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
}
curl_setopt($c, CURLOPT_WRITEFUNCTION,
- array(&$this, "_writeData"));
+ array($this, "_writeData"));
curl_setopt($c, CURLOPT_HEADERFUNCTION,
- array(&$this, "_writeHeader"));
+ array($this, "_writeHeader"));
if ($extra_headers) {
curl_setopt($c, CURLOPT_HTTPHEADER, $extra_headers);
@@ -128,6 +128,10 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
curl_setopt($c, CURLOPT_TIMEOUT, $off);
curl_setopt($c, CURLOPT_URL, $url);
+ if (defined('Auth_OpenID_VERIFY_HOST')) {
+ curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true);
+ curl_setopt($c, CURLOPT_SSL_VERIFYHOST, 2);
+ }
curl_exec($c);
$code = curl_getinfo($c, CURLINFO_HTTP_CODE);
@@ -142,12 +146,17 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
}
if (in_array($code, array(301, 302, 303, 307))) {
- $url = $this->_findRedirect($headers);
+ $url = $this->_findRedirect($headers, $url);
$redir = true;
} else {
$redir = false;
curl_close($c);
+ if (defined('Auth_OpenID_VERIFY_HOST') &&
+ $this->isHTTPS($url)) {
+ Auth_OpenID::log('OpenID: Verified SSL host %s using '.
+ 'curl/get', $url);
+ }
$new_headers = array();
foreach ($headers as $header) {
@@ -190,7 +199,12 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
curl_setopt($c, CURLOPT_TIMEOUT, $this->timeout);
curl_setopt($c, CURLOPT_URL, $url);
curl_setopt($c, CURLOPT_WRITEFUNCTION,
- array(&$this, "_writeData"));
+ array($this, "_writeData"));
+
+ if (defined('Auth_OpenID_VERIFY_HOST')) {
+ curl_setopt($c, CURLOPT_SSL_VERIFYPEER, true);
+ curl_setopt($c, CURLOPT_SSL_VERIFYHOST, 2);
+ }
curl_exec($c);
@@ -198,9 +212,15 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
if (!$code) {
Auth_OpenID::log("Got no response code when fetching %s", $url);
+ Auth_OpenID::log("CURL error (%s): %s",
+ curl_errno($c), curl_error($c));
return null;
}
+ if (defined('Auth_OpenID_VERIFY_HOST') && $this->isHTTPS($url)) {
+ Auth_OpenID::log('OpenID: Verified SSL host %s using '.
+ 'curl/post', $url);
+ }
$body = $this->data;
curl_close($c);
@@ -223,4 +243,3 @@ class Auth_Yadis_ParanoidHTTPFetcher extends Auth_Yadis_HTTPFetcher {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/ParseHTML.php b/extlib/Auth/Yadis/ParseHTML.php
index 297ccbd2c..6f0f8b7e2 100644
--- a/extlib/Auth/Yadis/ParseHTML.php
+++ b/extlib/Auth/Yadis/ParseHTML.php
@@ -256,4 +256,3 @@ class Auth_Yadis_ParseHTML {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/PlainHTTPFetcher.php b/extlib/Auth/Yadis/PlainHTTPFetcher.php
index 3e0ca2bb0..26890539a 100644
--- a/extlib/Auth/Yadis/PlainHTTPFetcher.php
+++ b/extlib/Auth/Yadis/PlainHTTPFetcher.php
@@ -122,7 +122,7 @@ class Auth_Yadis_PlainHTTPFetcher extends Auth_Yadis_HTTPFetcher {
$code = $http_code[1];
if (in_array($code, array('301', '302'))) {
- $url = $this->_findRedirect($headers);
+ $url = $this->_findRedirect($headers, $url);
$redir = true;
} else {
$redir = false;
@@ -246,4 +246,3 @@ class Auth_Yadis_PlainHTTPFetcher extends Auth_Yadis_HTTPFetcher {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/XML.php b/extlib/Auth/Yadis/XML.php
index 81b2ce221..cf1f5c41b 100644
--- a/extlib/Auth/Yadis/XML.php
+++ b/extlib/Auth/Yadis/XML.php
@@ -310,20 +310,16 @@ $__Auth_Yadis_defaultParser = null;
* @param Auth_Yadis_XMLParser $parser An instance of a
* Auth_Yadis_XMLParser subclass.
*/
-function Auth_Yadis_setDefaultParser(&$parser)
+function Auth_Yadis_setDefaultParser($parser)
{
global $__Auth_Yadis_defaultParser;
- $__Auth_Yadis_defaultParser =& $parser;
+ $__Auth_Yadis_defaultParser = $parser;
}
function Auth_Yadis_getSupportedExtensions()
{
- return array(
- 'dom' => array('classname' => 'Auth_Yadis_dom',
- 'libname' => array('dom.so', 'dom.dll')),
- 'domxml' => array('classname' => 'Auth_Yadis_domxml',
- 'libname' => array('domxml.so', 'php_domxml.dll')),
- );
+ return array('dom' => 'Auth_Yadis_dom',
+ 'domxml' => 'Auth_Yadis_domxml');
}
/**
@@ -332,43 +328,25 @@ function Auth_Yadis_getSupportedExtensions()
* Auth_Yadis_setDefaultParser has been called, the parser used in
* that call will be returned instead.
*/
-function &Auth_Yadis_getXMLParser()
+function Auth_Yadis_getXMLParser()
{
global $__Auth_Yadis_defaultParser;
-
+
if (isset($__Auth_Yadis_defaultParser)) {
return $__Auth_Yadis_defaultParser;
}
-
- $p = null;
- $classname = null;
-
- $extensions = Auth_Yadis_getSupportedExtensions();
-
- // Return a wrapper for the resident implementation, if any.
- foreach ($extensions as $name => $params) {
- if (!extension_loaded($name)) {
- foreach ($params['libname'] as $libname) {
- if (@dl($libname)) {
- $classname = $params['classname'];
- }
- }
- } else {
- $classname = $params['classname'];
- }
- if (isset($classname)) {
- $p = new $classname();
- return $p;
- }
- }
-
- if (!isset($p)) {
- trigger_error('No XML parser was found', E_USER_ERROR);
- } else {
+
+ foreach(Auth_Yadis_getSupportedExtensions() as $extension => $classname)
+ {
+ if (extension_loaded($extension))
+ {
+ $p = new $classname();
Auth_Yadis_setDefaultParser($p);
+ return $p;
+ }
}
-
- return $p;
+
+ return false;
}
-?>
+
diff --git a/extlib/Auth/Yadis/XRDS.php b/extlib/Auth/Yadis/XRDS.php
index f14a7948e..1f5af96fb 100644
--- a/extlib/Auth/Yadis/XRDS.php
+++ b/extlib/Auth/Yadis/XRDS.php
@@ -255,11 +255,11 @@ class Auth_Yadis_XRDS {
* Instantiate a Auth_Yadis_XRDS object. Requires an XPath
* instance which has been used to parse a valid XRDS document.
*/
- function Auth_Yadis_XRDS(&$xmlParser, &$xrdNodes)
+ function Auth_Yadis_XRDS($xmlParser, $xrdNodes)
{
- $this->parser =& $xmlParser;
+ $this->parser = $xmlParser;
$this->xrdNode = $xrdNodes[count($xrdNodes) - 1];
- $this->allXrdNodes =& $xrdNodes;
+ $this->allXrdNodes = $xrdNodes;
$this->serviceList = array();
$this->_parse();
}
@@ -273,7 +273,7 @@ class Auth_Yadis_XRDS {
* @return mixed $xrds An instance of Auth_Yadis_XRDS or null,
* depending on the validity of $xml_string
*/
- function &parseXRDS($xml_string, $extra_ns_map = null)
+ static function parseXRDS($xml_string, $extra_ns_map = null)
{
$_null = null;
@@ -352,9 +352,9 @@ class Auth_Yadis_XRDS {
$services = $this->parser->evalXPath('xrd:Service', $this->xrdNode);
foreach ($services as $node) {
- $s =& new Auth_Yadis_Service();
+ $s = new Auth_Yadis_Service();
$s->element = $node;
- $s->parser =& $this->parser;
+ $s->parser = $this->parser;
$priority = $s->getPriority();
@@ -428,7 +428,8 @@ class Auth_Yadis_XRDS {
$matches = 0;
foreach ($filters as $filter) {
- if (call_user_func_array($filter, array($service))) {
+
+ if (call_user_func_array($filter, array(&$service))) {
$matches++;
if ($filter_mode == SERVICES_YADIS_MATCH_ANY) {
@@ -475,4 +476,3 @@ class Auth_Yadis_XRDS {
}
}
-?> \ No newline at end of file
diff --git a/extlib/Auth/Yadis/XRI.php b/extlib/Auth/Yadis/XRI.php
index 4e3462317..0143a692e 100644
--- a/extlib/Auth/Yadis/XRI.php
+++ b/extlib/Auth/Yadis/XRI.php
@@ -190,7 +190,7 @@ function Auth_Yadis_getCanonicalID($iname, $xrds)
// Now nodes are in reverse order.
$xrd_list = array_reverse($xrds->allXrdNodes);
- $parser =& $xrds->parser;
+ $parser = $xrds->parser;
$node = $xrd_list[0];
$canonicalID_nodes = $parser->evalXPath('xrd:CanonicalID', $node);
@@ -231,4 +231,4 @@ function Auth_Yadis_getCanonicalID($iname, $xrds)
return $canonicalID;
}
-?>
+
diff --git a/extlib/Auth/Yadis/XRIRes.php b/extlib/Auth/Yadis/XRIRes.php
index 4e8e8d037..5e1158735 100644
--- a/extlib/Auth/Yadis/XRIRes.php
+++ b/extlib/Auth/Yadis/XRIRes.php
@@ -8,9 +8,9 @@ require_once 'Auth/Yadis/XRDS.php';
require_once 'Auth/Yadis/XRI.php';
class Auth_Yadis_ProxyResolver {
- function Auth_Yadis_ProxyResolver(&$fetcher, $proxy_url = null)
+ function Auth_Yadis_ProxyResolver($fetcher, $proxy_url = null)
{
- $this->fetcher =& $fetcher;
+ $this->fetcher = $fetcher;
$this->proxy_url = $proxy_url;
if (!$this->proxy_url) {
$this->proxy_url = Auth_Yadis_getDefaultProxy();
@@ -69,4 +69,4 @@ class Auth_Yadis_ProxyResolver {
}
}
-?>
+
diff --git a/extlib/Auth/Yadis/Yadis.php b/extlib/Auth/Yadis/Yadis.php
index d89f77c6d..9ea2db7f9 100644
--- a/extlib/Auth/Yadis/Yadis.php
+++ b/extlib/Auth/Yadis/Yadis.php
@@ -105,7 +105,7 @@ class Auth_Yadis_DiscoveryResult {
function usedYadisLocation()
{
// Was the Yadis protocol's indirection used?
- return $this->normalized_uri != $this->xrds_uri;
+ return ($this->xrds_uri && $this->normalized_uri != $this->xrds_uri);
}
function isXRDS()
@@ -141,7 +141,7 @@ function Auth_Yadis_getServiceEndpoints($input_url, $xrds_parse_func,
}
$yadis_result = call_user_func_array($discover_func,
- array($input_url, $fetcher));
+ array($input_url, &$fetcher));
if ($yadis_result === null) {
return array($input_url, array());
@@ -196,7 +196,7 @@ function Auth_Yadis_getServiceEndpoints($input_url, $xrds_parse_func,
* The filter functions (whose names appear in the array passed to
* services()) take the following form:
*
- * <pre> function myFilter(&$service) {
+ * <pre> function myFilter($service) {
* // Query $service object here. Return true if the service
* // matches your query; false if not.
* }</pre>
@@ -207,7 +207,7 @@ function Auth_Yadis_getServiceEndpoints($input_url, $xrds_parse_func,
* this contrived example):
*
* <pre>
- * function URIMatcher(&$service) {
+ * function URIMatcher($service) {
* foreach ($service->getElements('xrd:URI') as $uri) {
* if (preg_match("/some_pattern/",
* $service->parser->content($uri))) {
@@ -250,7 +250,7 @@ class Auth_Yadis_Yadis {
* If Auth_Yadis_CURL_OVERRIDE is defined, this method will always
* return a {@link Auth_Yadis_PlainHTTPFetcher}.
*/
- function getHTTPFetcher($timeout = 20)
+ static function getHTTPFetcher($timeout = 20)
{
if (Auth_Yadis_Yadis::curlPresent() &&
(!defined('Auth_Yadis_CURL_OVERRIDE'))) {
@@ -261,7 +261,7 @@ class Auth_Yadis_Yadis {
return $fetcher;
}
- function curlPresent()
+ static function curlPresent()
{
return function_exists('curl_init');
}
@@ -269,7 +269,7 @@ class Auth_Yadis_Yadis {
/**
* @access private
*/
- function _getHeader($header_list, $names)
+ static function _getHeader($header_list, $names)
{
foreach ($header_list as $name => $value) {
foreach ($names as $n) {
@@ -285,7 +285,7 @@ class Auth_Yadis_Yadis {
/**
* @access private
*/
- function _getContentType($content_type_header)
+ static function _getContentType($content_type_header)
{
if ($content_type_header) {
$parts = explode(";", $content_type_header);
@@ -317,7 +317,7 @@ class Auth_Yadis_Yadis {
* Auth_Yadis_Yadis, depending on whether the discovery
* succeeded.
*/
- function discover($uri, &$fetcher,
+ static function discover($uri, $fetcher,
$extra_ns_map = null, $timeout = 20)
{
$result = new Auth_Yadis_DiscoveryResult($uri);
@@ -379,4 +379,4 @@ class Auth_Yadis_Yadis {
}
}
-?>
+
diff --git a/extlib/Net/IDNA.php b/extlib/Net/IDNA.php
new file mode 100644
index 000000000..987a37ef1
--- /dev/null
+++ b/extlib/Net/IDNA.php
@@ -0,0 +1,100 @@
+<?php
+
+// {{{ license
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */
+//
+// +----------------------------------------------------------------------+
+// | This library is free software; you can redistribute it and/or modify |
+// | it under the terms of the GNU Lesser General Public License as |
+// | published by the Free Software Foundation; either version 2.1 of the |
+// | License, or (at your option) any later version. |
+// | |
+// | This library 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 |
+// | Lesser General Public License for more details. |
+// | |
+// | You should have received a copy of the GNU Lesser General Public |
+// | License along with this library; if not, write to the Free Software |
+// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 |
+// | USA. |
+// +----------------------------------------------------------------------+
+//
+
+// }}}
+
+
+/**
+ * Encode/decode Internationalized Domain Names.
+ * Factory class to get correct implementation either for php4 or php5.
+ *
+ * @author Markus Nix <mnix@docuverse.de>
+ * @author Matthias Sommerfeld <mso@phlylabs.de>
+ * @package Net
+ * @version $Id: IDNA.php 284681 2009-07-24 04:24:27Z clockwerx $
+ */
+
+class Net_IDNA
+{
+ // {{{ factory
+ /**
+ * Attempts to return a concrete IDNA instance for either php4 or php5.
+ *
+ * @param array $params Set of paramaters
+ * @return object IDNA The newly created concrete Log instance, or an
+ * false on an error.
+ * @access public
+ */
+ function getInstance($params = array())
+ {
+ $version = explode( '.', phpversion() );
+ $handler = ((int)$version[0] > 4) ? 'php5' : 'php4';
+ $class = 'Net_IDNA_' . $handler;
+ $classfile = 'Net/IDNA/' . $handler . '.php';
+
+ /*
+ * Attempt to include our version of the named class, but don't treat
+ * a failure as fatal. The caller may have already included their own
+ * version of the named class.
+ */
+ @include_once $classfile;
+
+ /* If the class exists, return a new instance of it. */
+ if (class_exists($class)) {
+ return new $class($params);
+ }
+
+ return false;
+ }
+ // }}}
+
+ // {{{ singleton
+ /**
+ * Attempts to return a concrete IDNA instance for either php4 or php5,
+ * only creating a new instance if no IDNA instance with the same
+ * parameters currently exists.
+ *
+ * @param array $params Set of paramaters
+ * @return object IDNA The newly created concrete Log instance, or an
+ * false on an error.
+ * @access public
+ */
+ function singleton($params = array())
+ {
+ static $instances;
+ if (!isset($instances)) {
+ $instances = array();
+ }
+
+ $signature = serialize($params);
+ if (!isset($instances[$signature])) {
+ $instances[$signature] = Net_IDNA::getInstance($params);
+ }
+
+ return $instances[$signature];
+ }
+ // }}}
+}
+
+?>
diff --git a/extlib/Net/IDNA/php5.php b/extlib/Net/IDNA/php5.php
new file mode 100644
index 000000000..d61772170
--- /dev/null
+++ b/extlib/Net/IDNA/php5.php
@@ -0,0 +1,3269 @@
+<?php
+
+// {{{ license
+
+/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4 foldmethod=marker: */
+//
+// +----------------------------------------------------------------------+
+// | This library is free software; you can redistribute it and/or modify |
+// | it under the terms of the GNU Lesser General Public License as |
+// | published by the Free Software Foundation; either version 2.1 of the |
+// | License, or (at your option) any later version. |
+// | |
+// | This library 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 |
+// | Lesser General Public License for more details. |
+// | |
+// | You should have received a copy of the GNU Lesser General Public |
+// | License along with this library; if not, write to the Free Software |
+// | Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 |
+// | USA. |
+// +----------------------------------------------------------------------+
+//
+
+// }}}
+
+
+/**
+ * Encode/decode Internationalized Domain Names.
+ *
+ * The class allows to convert internationalized domain names
+ * (see RFC 3490 for details) as they can be used with various registries worldwide
+ * to be translated between their original (localized) form and their encoded form
+ * as it will be used in the DNS (Domain Name System).
+ *
+ * The class provides two public methods, encode() and decode(), which do exactly
+ * what you would expect them to do. You are allowed to use complete domain names,
+ * simple strings and complete email addresses as well. That means, that you might
+ * use any of the following notations:
+ *
+ * - www.n�rgler.com
+ * - xn--nrgler-wxa
+ * - xn--brse-5qa.xn--knrz-1ra.info
+ *
+ * Unicode input might be given as either UTF-8 string, UCS-4 string or UCS-4
+ * array. Unicode output is available in the same formats.
+ * You can select your preferred format via {@link set_paramter()}.
+ *
+ * ACE input and output is always expected to be ASCII.
+ *
+ * @author Markus Nix <mnix@docuverse.de>
+ * @author Matthias Sommerfeld <mso@phlylabs.de>
+ * @author Stefan Neufeind <pear.neufeind@speedpartner.de>
+ * @package Net
+ * @version $Id: php5.php 284682 2009-07-24 04:27:35Z clockwerx $
+ */
+
+class Net_IDNA_php5
+{
+ // {{{ npdata
+ /**
+ * These Unicode codepoints are
+ * mapped to nothing, See RFC3454 for details
+ *
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_np_map_nothing = array(
+ 0xAD,
+ 0x34F,
+ 0x1806,
+ 0x180B,
+ 0x180C,
+ 0x180D,
+ 0x200B,
+ 0x200C,
+ 0x200D,
+ 0x2060,
+ 0xFE00,
+ 0xFE01,
+ 0xFE02,
+ 0xFE03,
+ 0xFE04,
+ 0xFE05,
+ 0xFE06,
+ 0xFE07,
+ 0xFE08,
+ 0xFE09,
+ 0xFE0A,
+ 0xFE0B,
+ 0xFE0C,
+ 0xFE0D,
+ 0xFE0E,
+ 0xFE0F,
+ 0xFEFF
+ );
+
+ /**
+ * Prohibited codepints
+ *
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_general_prohibited = array(
+ 0,
+ 1,
+ 2,
+ 3,
+ 4,
+ 5,
+ 6,
+ 7,
+ 8,
+ 9,
+ 0xA,
+ 0xB,
+ 0xC,
+ 0xD,
+ 0xE,
+ 0xF,
+ 0x10,
+ 0x11,
+ 0x12,
+ 0x13,
+ 0x14,
+ 0x15,
+ 0x16,
+ 0x17,
+ 0x18,
+ 0x19,
+ 0x1A,
+ 0x1B,
+ 0x1C,
+ 0x1D,
+ 0x1E,
+ 0x1F,
+ 0x20,
+ 0x21,
+ 0x22,
+ 0x23,
+ 0x24,
+ 0x25,
+ 0x26,
+ 0x27,
+ 0x28,
+ 0x29,
+ 0x2A,
+ 0x2B,
+ 0x2C,
+ 0x2F,
+ 0x3B,
+ 0x3C,
+ 0x3D,
+ 0x3E,
+ 0x3F,
+ 0x40,
+ 0x5B,
+ 0x5C,
+ 0x5D,
+ 0x5E,
+ 0x5F,
+ 0x60,
+ 0x7B,
+ 0x7C,
+ 0x7D,
+ 0x7E,
+ 0x7F,
+ 0x3002
+ );
+
+ /**
+ * Codepints prohibited by Nameprep
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_np_prohibit = array(
+ 0xA0,
+ 0x1680,
+ 0x2000,
+ 0x2001,
+ 0x2002,
+ 0x2003,
+ 0x2004,
+ 0x2005,
+ 0x2006,
+ 0x2007,
+ 0x2008,
+ 0x2009,
+ 0x200A,
+ 0x200B,
+ 0x202F,
+ 0x205F,
+ 0x3000,
+ 0x6DD,
+ 0x70F,
+ 0x180E,
+ 0x200C,
+ 0x200D,
+ 0x2028,
+ 0x2029,
+ 0xFEFF,
+ 0xFFF9,
+ 0xFFFA,
+ 0xFFFB,
+ 0xFFFC,
+ 0xFFFE,
+ 0xFFFF,
+ 0x1FFFE,
+ 0x1FFFF,
+ 0x2FFFE,
+ 0x2FFFF,
+ 0x3FFFE,
+ 0x3FFFF,
+ 0x4FFFE,
+ 0x4FFFF,
+ 0x5FFFE,
+ 0x5FFFF,
+ 0x6FFFE,
+ 0x6FFFF,
+ 0x7FFFE,
+ 0x7FFFF,
+ 0x8FFFE,
+ 0x8FFFF,
+ 0x9FFFE,
+ 0x9FFFF,
+ 0xAFFFE,
+ 0xAFFFF,
+ 0xBFFFE,
+ 0xBFFFF,
+ 0xCFFFE,
+ 0xCFFFF,
+ 0xDFFFE,
+ 0xDFFFF,
+ 0xEFFFE,
+ 0xEFFFF,
+ 0xFFFFE,
+ 0xFFFFF,
+ 0x10FFFE,
+ 0x10FFFF,
+ 0xFFF9,
+ 0xFFFA,
+ 0xFFFB,
+ 0xFFFC,
+ 0xFFFD,
+ 0x340,
+ 0x341,
+ 0x200E,
+ 0x200F,
+ 0x202A,
+ 0x202B,
+ 0x202C,
+ 0x202D,
+ 0x202E,
+ 0x206A,
+ 0x206B,
+ 0x206C,
+ 0x206D,
+ 0x206E,
+ 0x206F,
+ 0xE0001
+ );
+
+ /**
+ * Codepoint ranges prohibited by nameprep
+ *
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_np_prohibit_ranges = array(
+ array(0x80, 0x9F ),
+ array(0x2060, 0x206F ),
+ array(0x1D173, 0x1D17A ),
+ array(0xE000, 0xF8FF ),
+ array(0xF0000, 0xFFFFD ),
+ array(0x100000, 0x10FFFD),
+ array(0xFDD0, 0xFDEF ),
+ array(0xD800, 0xDFFF ),
+ array(0x2FF0, 0x2FFB ),
+ array(0xE0020, 0xE007F )
+ );
+
+ /**
+ * Replacement mappings (casemapping, replacement sequences, ...)
+ *
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_np_replacemaps = array(
+ 0x41 => array(0x61),
+ 0x42 => array(0x62),
+ 0x43 => array(0x63),
+ 0x44 => array(0x64),
+ 0x45 => array(0x65),
+ 0x46 => array(0x66),
+ 0x47 => array(0x67),
+ 0x48 => array(0x68),
+ 0x49 => array(0x69),
+ 0x4A => array(0x6A),
+ 0x4B => array(0x6B),
+ 0x4C => array(0x6C),
+ 0x4D => array(0x6D),
+ 0x4E => array(0x6E),
+ 0x4F => array(0x6F),
+ 0x50 => array(0x70),
+ 0x51 => array(0x71),
+ 0x52 => array(0x72),
+ 0x53 => array(0x73),
+ 0x54 => array(0x74),
+ 0x55 => array(0x75),
+ 0x56 => array(0x76),
+ 0x57 => array(0x77),
+ 0x58 => array(0x78),
+ 0x59 => array(0x79),
+ 0x5A => array(0x7A),
+ 0xB5 => array(0x3BC),
+ 0xC0 => array(0xE0),
+ 0xC1 => array(0xE1),
+ 0xC2 => array(0xE2),
+ 0xC3 => array(0xE3),
+ 0xC4 => array(0xE4),
+ 0xC5 => array(0xE5),
+ 0xC6 => array(0xE6),
+ 0xC7 => array(0xE7),
+ 0xC8 => array(0xE8),
+ 0xC9 => array(0xE9),
+ 0xCA => array(0xEA),
+ 0xCB => array(0xEB),
+ 0xCC => array(0xEC),
+ 0xCD => array(0xED),
+ 0xCE => array(0xEE),
+ 0xCF => array(0xEF),
+ 0xD0 => array(0xF0),
+ 0xD1 => array(0xF1),
+ 0xD2 => array(0xF2),
+ 0xD3 => array(0xF3),
+ 0xD4 => array(0xF4),
+ 0xD5 => array(0xF5),
+ 0xD6 => array(0xF6),
+ 0xD8 => array(0xF8),
+ 0xD9 => array(0xF9),
+ 0xDA => array(0xFA),
+ 0xDB => array(0xFB),
+ 0xDC => array(0xFC),
+ 0xDD => array(0xFD),
+ 0xDE => array(0xFE),
+ 0xDF => array(0x73, 0x73),
+ 0x100 => array(0x101),
+ 0x102 => array(0x103),
+ 0x104 => array(0x105),
+ 0x106 => array(0x107),
+ 0x108 => array(0x109),
+ 0x10A => array(0x10B),
+ 0x10C => array(0x10D),
+ 0x10E => array(0x10F),
+ 0x110 => array(0x111),
+ 0x112 => array(0x113),
+ 0x114 => array(0x115),
+ 0x116 => array(0x117),
+ 0x118 => array(0x119),
+ 0x11A => array(0x11B),
+ 0x11C => array(0x11D),
+ 0x11E => array(0x11F),
+ 0x120 => array(0x121),
+ 0x122 => array(0x123),
+ 0x124 => array(0x125),
+ 0x126 => array(0x127),
+ 0x128 => array(0x129),
+ 0x12A => array(0x12B),
+ 0x12C => array(0x12D),
+ 0x12E => array(0x12F),
+ 0x130 => array(0x69, 0x307),
+ 0x132 => array(0x133),
+ 0x134 => array(0x135),
+ 0x136 => array(0x137),
+ 0x139 => array(0x13A),
+ 0x13B => array(0x13C),
+ 0x13D => array(0x13E),
+ 0x13F => array(0x140),
+ 0x141 => array(0x142),
+ 0x143 => array(0x144),
+ 0x145 => array(0x146),
+ 0x147 => array(0x148),
+ 0x149 => array(0x2BC, 0x6E),
+ 0x14A => array(0x14B),
+ 0x14C => array(0x14D),
+ 0x14E => array(0x14F),
+ 0x150 => array(0x151),
+ 0x152 => array(0x153),
+ 0x154 => array(0x155),
+ 0x156 => array(0x157),
+ 0x158 => array(0x159),
+ 0x15A => array(0x15B),
+ 0x15C => array(0x15D),
+ 0x15E => array(0x15F),
+ 0x160 => array(0x161),
+ 0x162 => array(0x163),
+ 0x164 => array(0x165),
+ 0x166 => array(0x167),
+ 0x168 => array(0x169),
+ 0x16A => array(0x16B),
+ 0x16C => array(0x16D),
+ 0x16E => array(0x16F),
+ 0x170 => array(0x171),
+ 0x172 => array(0x173),
+ 0x174 => array(0x175),
+ 0x176 => array(0x177),
+ 0x178 => array(0xFF),
+ 0x179 => array(0x17A),
+ 0x17B => array(0x17C),
+ 0x17D => array(0x17E),
+ 0x17F => array(0x73),
+ 0x181 => array(0x253),
+ 0x182 => array(0x183),
+ 0x184 => array(0x185),
+ 0x186 => array(0x254),
+ 0x187 => array(0x188),
+ 0x189 => array(0x256),
+ 0x18A => array(0x257),
+ 0x18B => array(0x18C),
+ 0x18E => array(0x1DD),
+ 0x18F => array(0x259),
+ 0x190 => array(0x25B),
+ 0x191 => array(0x192),
+ 0x193 => array(0x260),
+ 0x194 => array(0x263),
+ 0x196 => array(0x269),
+ 0x197 => array(0x268),
+ 0x198 => array(0x199),
+ 0x19C => array(0x26F),
+ 0x19D => array(0x272),
+ 0x19F => array(0x275),
+ 0x1A0 => array(0x1A1),
+ 0x1A2 => array(0x1A3),
+ 0x1A4 => array(0x1A5),
+ 0x1A6 => array(0x280),
+ 0x1A7 => array(0x1A8),
+ 0x1A9 => array(0x283),
+ 0x1AC => array(0x1AD),
+ 0x1AE => array(0x288),
+ 0x1AF => array(0x1B0),
+ 0x1B1 => array(0x28A),
+ 0x1B2 => array(0x28B),
+ 0x1B3 => array(0x1B4),
+ 0x1B5 => array(0x1B6),
+ 0x1B7 => array(0x292),
+ 0x1B8 => array(0x1B9),
+ 0x1BC => array(0x1BD),
+ 0x1C4 => array(0x1C6),
+ 0x1C5 => array(0x1C6),
+ 0x1C7 => array(0x1C9),
+ 0x1C8 => array(0x1C9),
+ 0x1CA => array(0x1CC),
+ 0x1CB => array(0x1CC),
+ 0x1CD => array(0x1CE),
+ 0x1CF => array(0x1D0),
+ 0x1D1 => array(0x1D2),
+ 0x1D3 => array(0x1D4),
+ 0x1D5 => array(0x1D6),
+ 0x1D7 => array(0x1D8),
+ 0x1D9 => array(0x1DA),
+ 0x1DB => array(0x1DC),
+ 0x1DE => array(0x1DF),
+ 0x1E0 => array(0x1E1),
+ 0x1E2 => array(0x1E3),
+ 0x1E4 => array(0x1E5),
+ 0x1E6 => array(0x1E7),
+ 0x1E8 => array(0x1E9),
+ 0x1EA => array(0x1EB),
+ 0x1EC => array(0x1ED),
+ 0x1EE => array(0x1EF),
+ 0x1F0 => array(0x6A, 0x30C),
+ 0x1F1 => array(0x1F3),
+ 0x1F2 => array(0x1F3),
+ 0x1F4 => array(0x1F5),
+ 0x1F6 => array(0x195),
+ 0x1F7 => array(0x1BF),
+ 0x1F8 => array(0x1F9),
+ 0x1FA => array(0x1FB),
+ 0x1FC => array(0x1FD),
+ 0x1FE => array(0x1FF),
+ 0x200 => array(0x201),
+ 0x202 => array(0x203),
+ 0x204 => array(0x205),
+ 0x206 => array(0x207),
+ 0x208 => array(0x209),
+ 0x20A => array(0x20B),
+ 0x20C => array(0x20D),
+ 0x20E => array(0x20F),
+ 0x210 => array(0x211),
+ 0x212 => array(0x213),
+ 0x214 => array(0x215),
+ 0x216 => array(0x217),
+ 0x218 => array(0x219),
+ 0x21A => array(0x21B),
+ 0x21C => array(0x21D),
+ 0x21E => array(0x21F),
+ 0x220 => array(0x19E),
+ 0x222 => array(0x223),
+ 0x224 => array(0x225),
+ 0x226 => array(0x227),
+ 0x228 => array(0x229),
+ 0x22A => array(0x22B),
+ 0x22C => array(0x22D),
+ 0x22E => array(0x22F),
+ 0x230 => array(0x231),
+ 0x232 => array(0x233),
+ 0x345 => array(0x3B9),
+ 0x37A => array(0x20, 0x3B9),
+ 0x386 => array(0x3AC),
+ 0x388 => array(0x3AD),
+ 0x389 => array(0x3AE),
+ 0x38A => array(0x3AF),
+ 0x38C => array(0x3CC),
+ 0x38E => array(0x3CD),
+ 0x38F => array(0x3CE),
+ 0x390 => array(0x3B9, 0x308, 0x301),
+ 0x391 => array(0x3B1),
+ 0x392 => array(0x3B2),
+ 0x393 => array(0x3B3),
+ 0x394 => array(0x3B4),
+ 0x395 => array(0x3B5),
+ 0x396 => array(0x3B6),
+ 0x397 => array(0x3B7),
+ 0x398 => array(0x3B8),
+ 0x399 => array(0x3B9),
+ 0x39A => array(0x3BA),
+ 0x39B => array(0x3BB),
+ 0x39C => array(0x3BC),
+ 0x39D => array(0x3BD),
+ 0x39E => array(0x3BE),
+ 0x39F => array(0x3BF),
+ 0x3A0 => array(0x3C0),
+ 0x3A1 => array(0x3C1),
+ 0x3A3 => array(0x3C3),
+ 0x3A4 => array(0x3C4),
+ 0x3A5 => array(0x3C5),
+ 0x3A6 => array(0x3C6),
+ 0x3A7 => array(0x3C7),
+ 0x3A8 => array(0x3C8),
+ 0x3A9 => array(0x3C9),
+ 0x3AA => array(0x3CA),
+ 0x3AB => array(0x3CB),
+ 0x3B0 => array(0x3C5, 0x308, 0x301),
+ 0x3C2 => array(0x3C3),
+ 0x3D0 => array(0x3B2),
+ 0x3D1 => array(0x3B8),
+ 0x3D2 => array(0x3C5),
+ 0x3D3 => array(0x3CD),
+ 0x3D4 => array(0x3CB),
+ 0x3D5 => array(0x3C6),
+ 0x3D6 => array(0x3C0),
+ 0x3D8 => array(0x3D9),
+ 0x3DA => array(0x3DB),
+ 0x3DC => array(0x3DD),
+ 0x3DE => array(0x3DF),
+ 0x3E0 => array(0x3E1),
+ 0x3E2 => array(0x3E3),
+ 0x3E4 => array(0x3E5),
+ 0x3E6 => array(0x3E7),
+ 0x3E8 => array(0x3E9),
+ 0x3EA => array(0x3EB),
+ 0x3EC => array(0x3ED),
+ 0x3EE => array(0x3EF),
+ 0x3F0 => array(0x3BA),
+ 0x3F1 => array(0x3C1),
+ 0x3F2 => array(0x3C3),
+ 0x3F4 => array(0x3B8),
+ 0x3F5 => array(0x3B5),
+ 0x400 => array(0x450),
+ 0x401 => array(0x451),
+ 0x402 => array(0x452),
+ 0x403 => array(0x453),
+ 0x404 => array(0x454),
+ 0x405 => array(0x455),
+ 0x406 => array(0x456),
+ 0x407 => array(0x457),
+ 0x408 => array(0x458),
+ 0x409 => array(0x459),
+ 0x40A => array(0x45A),
+ 0x40B => array(0x45B),
+ 0x40C => array(0x45C),
+ 0x40D => array(0x45D),
+ 0x40E => array(0x45E),
+ 0x40F => array(0x45F),
+ 0x410 => array(0x430),
+ 0x411 => array(0x431),
+ 0x412 => array(0x432),
+ 0x413 => array(0x433),
+ 0x414 => array(0x434),
+ 0x415 => array(0x435),
+ 0x416 => array(0x436),
+ 0x417 => array(0x437),
+ 0x418 => array(0x438),
+ 0x419 => array(0x439),
+ 0x41A => array(0x43A),
+ 0x41B => array(0x43B),
+ 0x41C => array(0x43C),
+ 0x41D => array(0x43D),
+ 0x41E => array(0x43E),
+ 0x41F => array(0x43F),
+ 0x420 => array(0x440),
+ 0x421 => array(0x441),
+ 0x422 => array(0x442),
+ 0x423 => array(0x443),
+ 0x424 => array(0x444),
+ 0x425 => array(0x445),
+ 0x426 => array(0x446),
+ 0x427 => array(0x447),
+ 0x428 => array(0x448),
+ 0x429 => array(0x449),
+ 0x42A => array(0x44A),
+ 0x42B => array(0x44B),
+ 0x42C => array(0x44C),
+ 0x42D => array(0x44D),
+ 0x42E => array(0x44E),
+ 0x42F => array(0x44F),
+ 0x460 => array(0x461),
+ 0x462 => array(0x463),
+ 0x464 => array(0x465),
+ 0x466 => array(0x467),
+ 0x468 => array(0x469),
+ 0x46A => array(0x46B),
+ 0x46C => array(0x46D),
+ 0x46E => array(0x46F),
+ 0x470 => array(0x471),
+ 0x472 => array(0x473),
+ 0x474 => array(0x475),
+ 0x476 => array(0x477),
+ 0x478 => array(0x479),
+ 0x47A => array(0x47B),
+ 0x47C => array(0x47D),
+ 0x47E => array(0x47F),
+ 0x480 => array(0x481),
+ 0x48A => array(0x48B),
+ 0x48C => array(0x48D),
+ 0x48E => array(0x48F),
+ 0x490 => array(0x491),
+ 0x492 => array(0x493),
+ 0x494 => array(0x495),
+ 0x496 => array(0x497),
+ 0x498 => array(0x499),
+ 0x49A => array(0x49B),
+ 0x49C => array(0x49D),
+ 0x49E => array(0x49F),
+ 0x4A0 => array(0x4A1),
+ 0x4A2 => array(0x4A3),
+ 0x4A4 => array(0x4A5),
+ 0x4A6 => array(0x4A7),
+ 0x4A8 => array(0x4A9),
+ 0x4AA => array(0x4AB),
+ 0x4AC => array(0x4AD),
+ 0x4AE => array(0x4AF),
+ 0x4B0 => array(0x4B1),
+ 0x4B2 => array(0x4B3),
+ 0x4B4 => array(0x4B5),
+ 0x4B6 => array(0x4B7),
+ 0x4B8 => array(0x4B9),
+ 0x4BA => array(0x4BB),
+ 0x4BC => array(0x4BD),
+ 0x4BE => array(0x4BF),
+ 0x4C1 => array(0x4C2),
+ 0x4C3 => array(0x4C4),
+ 0x4C5 => array(0x4C6),
+ 0x4C7 => array(0x4C8),
+ 0x4C9 => array(0x4CA),
+ 0x4CB => array(0x4CC),
+ 0x4CD => array(0x4CE),
+ 0x4D0 => array(0x4D1),
+ 0x4D2 => array(0x4D3),
+ 0x4D4 => array(0x4D5),
+ 0x4D6 => array(0x4D7),
+ 0x4D8 => array(0x4D9),
+ 0x4DA => array(0x4DB),
+ 0x4DC => array(0x4DD),
+ 0x4DE => array(0x4DF),
+ 0x4E0 => array(0x4E1),
+ 0x4E2 => array(0x4E3),
+ 0x4E4 => array(0x4E5),
+ 0x4E6 => array(0x4E7),
+ 0x4E8 => array(0x4E9),
+ 0x4EA => array(0x4EB),
+ 0x4EC => array(0x4ED),
+ 0x4EE => array(0x4EF),
+ 0x4F0 => array(0x4F1),
+ 0x4F2 => array(0x4F3),
+ 0x4F4 => array(0x4F5),
+ 0x4F8 => array(0x4F9),
+ 0x500 => array(0x501),
+ 0x502 => array(0x503),
+ 0x504 => array(0x505),
+ 0x506 => array(0x507),
+ 0x508 => array(0x509),
+ 0x50A => array(0x50B),
+ 0x50C => array(0x50D),
+ 0x50E => array(0x50F),
+ 0x531 => array(0x561),
+ 0x532 => array(0x562),
+ 0x533 => array(0x563),
+ 0x534 => array(0x564),
+ 0x535 => array(0x565),
+ 0x536 => array(0x566),
+ 0x537 => array(0x567),
+ 0x538 => array(0x568),
+ 0x539 => array(0x569),
+ 0x53A => array(0x56A),
+ 0x53B => array(0x56B),
+ 0x53C => array(0x56C),
+ 0x53D => array(0x56D),
+ 0x53E => array(0x56E),
+ 0x53F => array(0x56F),
+ 0x540 => array(0x570),
+ 0x541 => array(0x571),
+ 0x542 => array(0x572),
+ 0x543 => array(0x573),
+ 0x544 => array(0x574),
+ 0x545 => array(0x575),
+ 0x546 => array(0x576),
+ 0x547 => array(0x577),
+ 0x548 => array(0x578),
+ 0x549 => array(0x579),
+ 0x54A => array(0x57A),
+ 0x54B => array(0x57B),
+ 0x54C => array(0x57C),
+ 0x54D => array(0x57D),
+ 0x54E => array(0x57E),
+ 0x54F => array(0x57F),
+ 0x550 => array(0x580),
+ 0x551 => array(0x581),
+ 0x552 => array(0x582),
+ 0x553 => array(0x583),
+ 0x554 => array(0x584),
+ 0x555 => array(0x585),
+ 0x556 => array(0x586),
+ 0x587 => array(0x565, 0x582),
+ 0x1E00 => array(0x1E01),
+ 0x1E02 => array(0x1E03),
+ 0x1E04 => array(0x1E05),
+ 0x1E06 => array(0x1E07),
+ 0x1E08 => array(0x1E09),
+ 0x1E0A => array(0x1E0B),
+ 0x1E0C => array(0x1E0D),
+ 0x1E0E => array(0x1E0F),
+ 0x1E10 => array(0x1E11),
+ 0x1E12 => array(0x1E13),
+ 0x1E14 => array(0x1E15),
+ 0x1E16 => array(0x1E17),
+ 0x1E18 => array(0x1E19),
+ 0x1E1A => array(0x1E1B),
+ 0x1E1C => array(0x1E1D),
+ 0x1E1E => array(0x1E1F),
+ 0x1E20 => array(0x1E21),
+ 0x1E22 => array(0x1E23),
+ 0x1E24 => array(0x1E25),
+ 0x1E26 => array(0x1E27),
+ 0x1E28 => array(0x1E29),
+ 0x1E2A => array(0x1E2B),
+ 0x1E2C => array(0x1E2D),
+ 0x1E2E => array(0x1E2F),
+ 0x1E30 => array(0x1E31),
+ 0x1E32 => array(0x1E33),
+ 0x1E34 => array(0x1E35),
+ 0x1E36 => array(0x1E37),
+ 0x1E38 => array(0x1E39),
+ 0x1E3A => array(0x1E3B),
+ 0x1E3C => array(0x1E3D),
+ 0x1E3E => array(0x1E3F),
+ 0x1E40 => array(0x1E41),
+ 0x1E42 => array(0x1E43),
+ 0x1E44 => array(0x1E45),
+ 0x1E46 => array(0x1E47),
+ 0x1E48 => array(0x1E49),
+ 0x1E4A => array(0x1E4B),
+ 0x1E4C => array(0x1E4D),
+ 0x1E4E => array(0x1E4F),
+ 0x1E50 => array(0x1E51),
+ 0x1E52 => array(0x1E53),
+ 0x1E54 => array(0x1E55),
+ 0x1E56 => array(0x1E57),
+ 0x1E58 => array(0x1E59),
+ 0x1E5A => array(0x1E5B),
+ 0x1E5C => array(0x1E5D),
+ 0x1E5E => array(0x1E5F),
+ 0x1E60 => array(0x1E61),
+ 0x1E62 => array(0x1E63),
+ 0x1E64 => array(0x1E65),
+ 0x1E66 => array(0x1E67),
+ 0x1E68 => array(0x1E69),
+ 0x1E6A => array(0x1E6B),
+ 0x1E6C => array(0x1E6D),
+ 0x1E6E => array(0x1E6F),
+ 0x1E70 => array(0x1E71),
+ 0x1E72 => array(0x1E73),
+ 0x1E74 => array(0x1E75),
+ 0x1E76 => array(0x1E77),
+ 0x1E78 => array(0x1E79),
+ 0x1E7A => array(0x1E7B),
+ 0x1E7C => array(0x1E7D),
+ 0x1E7E => array(0x1E7F),
+ 0x1E80 => array(0x1E81),
+ 0x1E82 => array(0x1E83),
+ 0x1E84 => array(0x1E85),
+ 0x1E86 => array(0x1E87),
+ 0x1E88 => array(0x1E89),
+ 0x1E8A => array(0x1E8B),
+ 0x1E8C => array(0x1E8D),
+ 0x1E8E => array(0x1E8F),
+ 0x1E90 => array(0x1E91),
+ 0x1E92 => array(0x1E93),
+ 0x1E94 => array(0x1E95),
+ 0x1E96 => array(0x68, 0x331),
+ 0x1E97 => array(0x74, 0x308),
+ 0x1E98 => array(0x77, 0x30A),
+ 0x1E99 => array(0x79, 0x30A),
+ 0x1E9A => array(0x61, 0x2BE),
+ 0x1E9B => array(0x1E61),
+ 0x1EA0 => array(0x1EA1),
+ 0x1EA2 => array(0x1EA3),
+ 0x1EA4 => array(0x1EA5),
+ 0x1EA6 => array(0x1EA7),
+ 0x1EA8 => array(0x1EA9),
+ 0x1EAA => array(0x1EAB),
+ 0x1EAC => array(0x1EAD),
+ 0x1EAE => array(0x1EAF),
+ 0x1EB0 => array(0x1EB1),
+ 0x1EB2 => array(0x1EB3),
+ 0x1EB4 => array(0x1EB5),
+ 0x1EB6 => array(0x1EB7),
+ 0x1EB8 => array(0x1EB9),
+ 0x1EBA => array(0x1EBB),
+ 0x1EBC => array(0x1EBD),
+ 0x1EBE => array(0x1EBF),
+ 0x1EC0 => array(0x1EC1),
+ 0x1EC2 => array(0x1EC3),
+ 0x1EC4 => array(0x1EC5),
+ 0x1EC6 => array(0x1EC7),
+ 0x1EC8 => array(0x1EC9),
+ 0x1ECA => array(0x1ECB),
+ 0x1ECC => array(0x1ECD),
+ 0x1ECE => array(0x1ECF),
+ 0x1ED0 => array(0x1ED1),
+ 0x1ED2 => array(0x1ED3),
+ 0x1ED4 => array(0x1ED5),
+ 0x1ED6 => array(0x1ED7),
+ 0x1ED8 => array(0x1ED9),
+ 0x1EDA => array(0x1EDB),
+ 0x1EDC => array(0x1EDD),
+ 0x1EDE => array(0x1EDF),
+ 0x1EE0 => array(0x1EE1),
+ 0x1EE2 => array(0x1EE3),
+ 0x1EE4 => array(0x1EE5),
+ 0x1EE6 => array(0x1EE7),
+ 0x1EE8 => array(0x1EE9),
+ 0x1EEA => array(0x1EEB),
+ 0x1EEC => array(0x1EED),
+ 0x1EEE => array(0x1EEF),
+ 0x1EF0 => array(0x1EF1),
+ 0x1EF2 => array(0x1EF3),
+ 0x1EF4 => array(0x1EF5),
+ 0x1EF6 => array(0x1EF7),
+ 0x1EF8 => array(0x1EF9),
+ 0x1F08 => array(0x1F00),
+ 0x1F09 => array(0x1F01),
+ 0x1F0A => array(0x1F02),
+ 0x1F0B => array(0x1F03),
+ 0x1F0C => array(0x1F04),
+ 0x1F0D => array(0x1F05),
+ 0x1F0E => array(0x1F06),
+ 0x1F0F => array(0x1F07),
+ 0x1F18 => array(0x1F10),
+ 0x1F19 => array(0x1F11),
+ 0x1F1A => array(0x1F12),
+ 0x1F1B => array(0x1F13),
+ 0x1F1C => array(0x1F14),
+ 0x1F1D => array(0x1F15),
+ 0x1F28 => array(0x1F20),
+ 0x1F29 => array(0x1F21),
+ 0x1F2A => array(0x1F22),
+ 0x1F2B => array(0x1F23),
+ 0x1F2C => array(0x1F24),
+ 0x1F2D => array(0x1F25),
+ 0x1F2E => array(0x1F26),
+ 0x1F2F => array(0x1F27),
+ 0x1F38 => array(0x1F30),
+ 0x1F39 => array(0x1F31),
+ 0x1F3A => array(0x1F32),
+ 0x1F3B => array(0x1F33),
+ 0x1F3C => array(0x1F34),
+ 0x1F3D => array(0x1F35),
+ 0x1F3E => array(0x1F36),
+ 0x1F3F => array(0x1F37),
+ 0x1F48 => array(0x1F40),
+ 0x1F49 => array(0x1F41),
+ 0x1F4A => array(0x1F42),
+ 0x1F4B => array(0x1F43),
+ 0x1F4C => array(0x1F44),
+ 0x1F4D => array(0x1F45),
+ 0x1F50 => array(0x3C5, 0x313),
+ 0x1F52 => array(0x3C5, 0x313, 0x300),
+ 0x1F54 => array(0x3C5, 0x313, 0x301),
+ 0x1F56 => array(0x3C5, 0x313, 0x342),
+ 0x1F59 => array(0x1F51),
+ 0x1F5B => array(0x1F53),
+ 0x1F5D => array(0x1F55),
+ 0x1F5F => array(0x1F57),
+ 0x1F68 => array(0x1F60),
+ 0x1F69 => array(0x1F61),
+ 0x1F6A => array(0x1F62),
+ 0x1F6B => array(0x1F63),
+ 0x1F6C => array(0x1F64),
+ 0x1F6D => array(0x1F65),
+ 0x1F6E => array(0x1F66),
+ 0x1F6F => array(0x1F67),
+ 0x1F80 => array(0x1F00, 0x3B9),
+ 0x1F81 => array(0x1F01, 0x3B9),
+ 0x1F82 => array(0x1F02, 0x3B9),
+ 0x1F83 => array(0x1F03, 0x3B9),
+ 0x1F84 => array(0x1F04, 0x3B9),
+ 0x1F85 => array(0x1F05, 0x3B9),
+ 0x1F86 => array(0x1F06, 0x3B9),
+ 0x1F87 => array(0x1F07, 0x3B9),
+ 0x1F88 => array(0x1F00, 0x3B9),
+ 0x1F89 => array(0x1F01, 0x3B9),
+ 0x1F8A => array(0x1F02, 0x3B9),
+ 0x1F8B => array(0x1F03, 0x3B9),
+ 0x1F8C => array(0x1F04, 0x3B9),
+ 0x1F8D => array(0x1F05, 0x3B9),
+ 0x1F8E => array(0x1F06, 0x3B9),
+ 0x1F8F => array(0x1F07, 0x3B9),
+ 0x1F90 => array(0x1F20, 0x3B9),
+ 0x1F91 => array(0x1F21, 0x3B9),
+ 0x1F92 => array(0x1F22, 0x3B9),
+ 0x1F93 => array(0x1F23, 0x3B9),
+ 0x1F94 => array(0x1F24, 0x3B9),
+ 0x1F95 => array(0x1F25, 0x3B9),
+ 0x1F96 => array(0x1F26, 0x3B9),
+ 0x1F97 => array(0x1F27, 0x3B9),
+ 0x1F98 => array(0x1F20, 0x3B9),
+ 0x1F99 => array(0x1F21, 0x3B9),
+ 0x1F9A => array(0x1F22, 0x3B9),
+ 0x1F9B => array(0x1F23, 0x3B9),
+ 0x1F9C => array(0x1F24, 0x3B9),
+ 0x1F9D => array(0x1F25, 0x3B9),
+ 0x1F9E => array(0x1F26, 0x3B9),
+ 0x1F9F => array(0x1F27, 0x3B9),
+ 0x1FA0 => array(0x1F60, 0x3B9),
+ 0x1FA1 => array(0x1F61, 0x3B9),
+ 0x1FA2 => array(0x1F62, 0x3B9),
+ 0x1FA3 => array(0x1F63, 0x3B9),
+ 0x1FA4 => array(0x1F64, 0x3B9),
+ 0x1FA5 => array(0x1F65, 0x3B9),
+ 0x1FA6 => array(0x1F66, 0x3B9),
+ 0x1FA7 => array(0x1F67, 0x3B9),
+ 0x1FA8 => array(0x1F60, 0x3B9),
+ 0x1FA9 => array(0x1F61, 0x3B9),
+ 0x1FAA => array(0x1F62, 0x3B9),
+ 0x1FAB => array(0x1F63, 0x3B9),
+ 0x1FAC => array(0x1F64, 0x3B9),
+ 0x1FAD => array(0x1F65, 0x3B9),
+ 0x1FAE => array(0x1F66, 0x3B9),
+ 0x1FAF => array(0x1F67, 0x3B9),
+ 0x1FB2 => array(0x1F70, 0x3B9),
+ 0x1FB3 => array(0x3B1, 0x3B9),
+ 0x1FB4 => array(0x3AC, 0x3B9),
+ 0x1FB6 => array(0x3B1, 0x342),
+ 0x1FB7 => array(0x3B1, 0x342, 0x3B9),
+ 0x1FB8 => array(0x1FB0),
+ 0x1FB9 => array(0x1FB1),
+ 0x1FBA => array(0x1F70),
+ 0x1FBB => array(0x1F71),
+ 0x1FBC => array(0x3B1, 0x3B9),
+ 0x1FBE => array(0x3B9),
+ 0x1FC2 => array(0x1F74, 0x3B9),
+ 0x1FC3 => array(0x3B7, 0x3B9),
+ 0x1FC4 => array(0x3AE, 0x3B9),
+ 0x1FC6 => array(0x3B7, 0x342),
+ 0x1FC7 => array(0x3B7, 0x342, 0x3B9),
+ 0x1FC8 => array(0x1F72),
+ 0x1FC9 => array(0x1F73),
+ 0x1FCA => array(0x1F74),
+ 0x1FCB => array(0x1F75),
+ 0x1FCC => array(0x3B7, 0x3B9),
+ 0x1FD2 => array(0x3B9, 0x308, 0x300),
+ 0x1FD3 => array(0x3B9, 0x308, 0x301),
+ 0x1FD6 => array(0x3B9, 0x342),
+ 0x1FD7 => array(0x3B9, 0x308, 0x342),
+ 0x1FD8 => array(0x1FD0),
+ 0x1FD9 => array(0x1FD1),
+ 0x1FDA => array(0x1F76),
+ 0x1FDB => array(0x1F77),
+ 0x1FE2 => array(0x3C5, 0x308, 0x300),
+ 0x1FE3 => array(0x3C5, 0x308, 0x301),
+ 0x1FE4 => array(0x3C1, 0x313),
+ 0x1FE6 => array(0x3C5, 0x342),
+ 0x1FE7 => array(0x3C5, 0x308, 0x342),
+ 0x1FE8 => array(0x1FE0),
+ 0x1FE9 => array(0x1FE1),
+ 0x1FEA => array(0x1F7A),
+ 0x1FEB => array(0x1F7B),
+ 0x1FEC => array(0x1FE5),
+ 0x1FF2 => array(0x1F7C, 0x3B9),
+ 0x1FF3 => array(0x3C9, 0x3B9),
+ 0x1FF4 => array(0x3CE, 0x3B9),
+ 0x1FF6 => array(0x3C9, 0x342),
+ 0x1FF7 => array(0x3C9, 0x342, 0x3B9),
+ 0x1FF8 => array(0x1F78),
+ 0x1FF9 => array(0x1F79),
+ 0x1FFA => array(0x1F7C),
+ 0x1FFB => array(0x1F7D),
+ 0x1FFC => array(0x3C9, 0x3B9),
+ 0x20A8 => array(0x72, 0x73),
+ 0x2102 => array(0x63),
+ 0x2103 => array(0xB0, 0x63),
+ 0x2107 => array(0x25B),
+ 0x2109 => array(0xB0, 0x66),
+ 0x210B => array(0x68),
+ 0x210C => array(0x68),
+ 0x210D => array(0x68),
+ 0x2110 => array(0x69),
+ 0x2111 => array(0x69),
+ 0x2112 => array(0x6C),
+ 0x2115 => array(0x6E),
+ 0x2116 => array(0x6E, 0x6F),
+ 0x2119 => array(0x70),
+ 0x211A => array(0x71),
+ 0x211B => array(0x72),
+ 0x211C => array(0x72),
+ 0x211D => array(0x72),
+ 0x2120 => array(0x73, 0x6D),
+ 0x2121 => array(0x74, 0x65, 0x6C),
+ 0x2122 => array(0x74, 0x6D),
+ 0x2124 => array(0x7A),
+ 0x2126 => array(0x3C9),
+ 0x2128 => array(0x7A),
+ 0x212A => array(0x6B),
+ 0x212B => array(0xE5),
+ 0x212C => array(0x62),
+ 0x212D => array(0x63),
+ 0x2130 => array(0x65),
+ 0x2131 => array(0x66),
+ 0x2133 => array(0x6D),
+ 0x213E => array(0x3B3),
+ 0x213F => array(0x3C0),
+ 0x2145 => array(0x64),
+ 0x2160 => array(0x2170),
+ 0x2161 => array(0x2171),
+ 0x2162 => array(0x2172),
+ 0x2163 => array(0x2173),
+ 0x2164 => array(0x2174),
+ 0x2165 => array(0x2175),
+ 0x2166 => array(0x2176),
+ 0x2167 => array(0x2177),
+ 0x2168 => array(0x2178),
+ 0x2169 => array(0x2179),
+ 0x216A => array(0x217A),
+ 0x216B => array(0x217B),
+ 0x216C => array(0x217C),
+ 0x216D => array(0x217D),
+ 0x216E => array(0x217E),
+ 0x216F => array(0x217F),
+ 0x24B6 => array(0x24D0),
+ 0x24B7 => array(0x24D1),
+ 0x24B8 => array(0x24D2),
+ 0x24B9 => array(0x24D3),
+ 0x24BA => array(0x24D4),
+ 0x24BB => array(0x24D5),
+ 0x24BC => array(0x24D6),
+ 0x24BD => array(0x24D7),
+ 0x24BE => array(0x24D8),
+ 0x24BF => array(0x24D9),
+ 0x24C0 => array(0x24DA),
+ 0x24C1 => array(0x24DB),
+ 0x24C2 => array(0x24DC),
+ 0x24C3 => array(0x24DD),
+ 0x24C4 => array(0x24DE),
+ 0x24C5 => array(0x24DF),
+ 0x24C6 => array(0x24E0),
+ 0x24C7 => array(0x24E1),
+ 0x24C8 => array(0x24E2),
+ 0x24C9 => array(0x24E3),
+ 0x24CA => array(0x24E4),
+ 0x24CB => array(0x24E5),
+ 0x24CC => array(0x24E6),
+ 0x24CD => array(0x24E7),
+ 0x24CE => array(0x24E8),
+ 0x24CF => array(0x24E9),
+ 0x3371 => array(0x68, 0x70, 0x61),
+ 0x3373 => array(0x61, 0x75),
+ 0x3375 => array(0x6F, 0x76),
+ 0x3380 => array(0x70, 0x61),
+ 0x3381 => array(0x6E, 0x61),
+ 0x3382 => array(0x3BC, 0x61),
+ 0x3383 => array(0x6D, 0x61),
+ 0x3384 => array(0x6B, 0x61),
+ 0x3385 => array(0x6B, 0x62),
+ 0x3386 => array(0x6D, 0x62),
+ 0x3387 => array(0x67, 0x62),
+ 0x338A => array(0x70, 0x66),
+ 0x338B => array(0x6E, 0x66),
+ 0x338C => array(0x3BC, 0x66),
+ 0x3390 => array(0x68, 0x7A),
+ 0x3391 => array(0x6B, 0x68, 0x7A),
+ 0x3392 => array(0x6D, 0x68, 0x7A),
+ 0x3393 => array(0x67, 0x68, 0x7A),
+ 0x3394 => array(0x74, 0x68, 0x7A),
+ 0x33A9 => array(0x70, 0x61),
+ 0x33AA => array(0x6B, 0x70, 0x61),
+ 0x33AB => array(0x6D, 0x70, 0x61),
+ 0x33AC => array(0x67, 0x70, 0x61),
+ 0x33B4 => array(0x70, 0x76),
+ 0x33B5 => array(0x6E, 0x76),
+ 0x33B6 => array(0x3BC, 0x76),
+ 0x33B7 => array(0x6D, 0x76),
+ 0x33B8 => array(0x6B, 0x76),
+ 0x33B9 => array(0x6D, 0x76),
+ 0x33BA => array(0x70, 0x77),
+ 0x33BB => array(0x6E, 0x77),
+ 0x33BC => array(0x3BC, 0x77),
+ 0x33BD => array(0x6D, 0x77),
+ 0x33BE => array(0x6B, 0x77),
+ 0x33BF => array(0x6D, 0x77),
+ 0x33C0 => array(0x6B, 0x3C9),
+ 0x33C1 => array(0x6D, 0x3C9), /*
+ 0x33C2 => array(0x61, 0x2E, 0x6D, 0x2E), */
+ 0x33C3 => array(0x62, 0x71),
+ 0x33C6 => array(0x63, 0x2215, 0x6B, 0x67),
+ 0x33C7 => array(0x63, 0x6F, 0x2E),
+ 0x33C8 => array(0x64, 0x62),
+ 0x33C9 => array(0x67, 0x79),
+ 0x33CB => array(0x68, 0x70),
+ 0x33CD => array(0x6B, 0x6B),
+ 0x33CE => array(0x6B, 0x6D),
+ 0x33D7 => array(0x70, 0x68),
+ 0x33D9 => array(0x70, 0x70, 0x6D),
+ 0x33DA => array(0x70, 0x72),
+ 0x33DC => array(0x73, 0x76),
+ 0x33DD => array(0x77, 0x62),
+ 0xFB00 => array(0x66, 0x66),
+ 0xFB01 => array(0x66, 0x69),
+ 0xFB02 => array(0x66, 0x6C),
+ 0xFB03 => array(0x66, 0x66, 0x69),
+ 0xFB04 => array(0x66, 0x66, 0x6C),
+ 0xFB05 => array(0x73, 0x74),
+ 0xFB06 => array(0x73, 0x74),
+ 0xFB13 => array(0x574, 0x576),
+ 0xFB14 => array(0x574, 0x565),
+ 0xFB15 => array(0x574, 0x56B),
+ 0xFB16 => array(0x57E, 0x576),
+ 0xFB17 => array(0x574, 0x56D),
+ 0xFF21 => array(0xFF41),
+ 0xFF22 => array(0xFF42),
+ 0xFF23 => array(0xFF43),
+ 0xFF24 => array(0xFF44),
+ 0xFF25 => array(0xFF45),
+ 0xFF26 => array(0xFF46),
+ 0xFF27 => array(0xFF47),
+ 0xFF28 => array(0xFF48),
+ 0xFF29 => array(0xFF49),
+ 0xFF2A => array(0xFF4A),
+ 0xFF2B => array(0xFF4B),
+ 0xFF2C => array(0xFF4C),
+ 0xFF2D => array(0xFF4D),
+ 0xFF2E => array(0xFF4E),
+ 0xFF2F => array(0xFF4F),
+ 0xFF30 => array(0xFF50),
+ 0xFF31 => array(0xFF51),
+ 0xFF32 => array(0xFF52),
+ 0xFF33 => array(0xFF53),
+ 0xFF34 => array(0xFF54),
+ 0xFF35 => array(0xFF55),
+ 0xFF36 => array(0xFF56),
+ 0xFF37 => array(0xFF57),
+ 0xFF38 => array(0xFF58),
+ 0xFF39 => array(0xFF59),
+ 0xFF3A => array(0xFF5A),
+ 0x10400 => array(0x10428),
+ 0x10401 => array(0x10429),
+ 0x10402 => array(0x1042A),
+ 0x10403 => array(0x1042B),
+ 0x10404 => array(0x1042C),
+ 0x10405 => array(0x1042D),
+ 0x10406 => array(0x1042E),
+ 0x10407 => array(0x1042F),
+ 0x10408 => array(0x10430),
+ 0x10409 => array(0x10431),
+ 0x1040A => array(0x10432),
+ 0x1040B => array(0x10433),
+ 0x1040C => array(0x10434),
+ 0x1040D => array(0x10435),
+ 0x1040E => array(0x10436),
+ 0x1040F => array(0x10437),
+ 0x10410 => array(0x10438),
+ 0x10411 => array(0x10439),
+ 0x10412 => array(0x1043A),
+ 0x10413 => array(0x1043B),
+ 0x10414 => array(0x1043C),
+ 0x10415 => array(0x1043D),
+ 0x10416 => array(0x1043E),
+ 0x10417 => array(0x1043F),
+ 0x10418 => array(0x10440),
+ 0x10419 => array(0x10441),
+ 0x1041A => array(0x10442),
+ 0x1041B => array(0x10443),
+ 0x1041C => array(0x10444),
+ 0x1041D => array(0x10445),
+ 0x1041E => array(0x10446),
+ 0x1041F => array(0x10447),
+ 0x10420 => array(0x10448),
+ 0x10421 => array(0x10449),
+ 0x10422 => array(0x1044A),
+ 0x10423 => array(0x1044B),
+ 0x10424 => array(0x1044C),
+ 0x10425 => array(0x1044D),
+ 0x1D400 => array(0x61),
+ 0x1D401 => array(0x62),
+ 0x1D402 => array(0x63),
+ 0x1D403 => array(0x64),
+ 0x1D404 => array(0x65),
+ 0x1D405 => array(0x66),
+ 0x1D406 => array(0x67),
+ 0x1D407 => array(0x68),
+ 0x1D408 => array(0x69),
+ 0x1D409 => array(0x6A),
+ 0x1D40A => array(0x6B),
+ 0x1D40B => array(0x6C),
+ 0x1D40C => array(0x6D),
+ 0x1D40D => array(0x6E),
+ 0x1D40E => array(0x6F),
+ 0x1D40F => array(0x70),
+ 0x1D410 => array(0x71),
+ 0x1D411 => array(0x72),
+ 0x1D412 => array(0x73),
+ 0x1D413 => array(0x74),
+ 0x1D414 => array(0x75),
+ 0x1D415 => array(0x76),
+ 0x1D416 => array(0x77),
+ 0x1D417 => array(0x78),
+ 0x1D418 => array(0x79),
+ 0x1D419 => array(0x7A),
+ 0x1D434 => array(0x61),
+ 0x1D435 => array(0x62),
+ 0x1D436 => array(0x63),
+ 0x1D437 => array(0x64),
+ 0x1D438 => array(0x65),
+ 0x1D439 => array(0x66),
+ 0x1D43A => array(0x67),
+ 0x1D43B => array(0x68),
+ 0x1D43C => array(0x69),
+ 0x1D43D => array(0x6A),
+ 0x1D43E => array(0x6B),
+ 0x1D43F => array(0x6C),
+ 0x1D440 => array(0x6D),
+ 0x1D441 => array(0x6E),
+ 0x1D442 => array(0x6F),
+ 0x1D443 => array(0x70),
+ 0x1D444 => array(0x71),
+ 0x1D445 => array(0x72),
+ 0x1D446 => array(0x73),
+ 0x1D447 => array(0x74),
+ 0x1D448 => array(0x75),
+ 0x1D449 => array(0x76),
+ 0x1D44A => array(0x77),
+ 0x1D44B => array(0x78),
+ 0x1D44C => array(0x79),
+ 0x1D44D => array(0x7A),
+ 0x1D468 => array(0x61),
+ 0x1D469 => array(0x62),
+ 0x1D46A => array(0x63),
+ 0x1D46B => array(0x64),
+ 0x1D46C => array(0x65),
+ 0x1D46D => array(0x66),
+ 0x1D46E => array(0x67),
+ 0x1D46F => array(0x68),
+ 0x1D470 => array(0x69),
+ 0x1D471 => array(0x6A),
+ 0x1D472 => array(0x6B),
+ 0x1D473 => array(0x6C),
+ 0x1D474 => array(0x6D),
+ 0x1D475 => array(0x6E),
+ 0x1D476 => array(0x6F),
+ 0x1D477 => array(0x70),
+ 0x1D478 => array(0x71),
+ 0x1D479 => array(0x72),
+ 0x1D47A => array(0x73),
+ 0x1D47B => array(0x74),
+ 0x1D47C => array(0x75),
+ 0x1D47D => array(0x76),
+ 0x1D47E => array(0x77),
+ 0x1D47F => array(0x78),
+ 0x1D480 => array(0x79),
+ 0x1D481 => array(0x7A),
+ 0x1D49C => array(0x61),
+ 0x1D49E => array(0x63),
+ 0x1D49F => array(0x64),
+ 0x1D4A2 => array(0x67),
+ 0x1D4A5 => array(0x6A),
+ 0x1D4A6 => array(0x6B),
+ 0x1D4A9 => array(0x6E),
+ 0x1D4AA => array(0x6F),
+ 0x1D4AB => array(0x70),
+ 0x1D4AC => array(0x71),
+ 0x1D4AE => array(0x73),
+ 0x1D4AF => array(0x74),
+ 0x1D4B0 => array(0x75),
+ 0x1D4B1 => array(0x76),
+ 0x1D4B2 => array(0x77),
+ 0x1D4B3 => array(0x78),
+ 0x1D4B4 => array(0x79),
+ 0x1D4B5 => array(0x7A),
+ 0x1D4D0 => array(0x61),
+ 0x1D4D1 => array(0x62),
+ 0x1D4D2 => array(0x63),
+ 0x1D4D3 => array(0x64),
+ 0x1D4D4 => array(0x65),
+ 0x1D4D5 => array(0x66),
+ 0x1D4D6 => array(0x67),
+ 0x1D4D7 => array(0x68),
+ 0x1D4D8 => array(0x69),
+ 0x1D4D9 => array(0x6A),
+ 0x1D4DA => array(0x6B),
+ 0x1D4DB => array(0x6C),
+ 0x1D4DC => array(0x6D),
+ 0x1D4DD => array(0x6E),
+ 0x1D4DE => array(0x6F),
+ 0x1D4DF => array(0x70),
+ 0x1D4E0 => array(0x71),
+ 0x1D4E1 => array(0x72),
+ 0x1D4E2 => array(0x73),
+ 0x1D4E3 => array(0x74),
+ 0x1D4E4 => array(0x75),
+ 0x1D4E5 => array(0x76),
+ 0x1D4E6 => array(0x77),
+ 0x1D4E7 => array(0x78),
+ 0x1D4E8 => array(0x79),
+ 0x1D4E9 => array(0x7A),
+ 0x1D504 => array(0x61),
+ 0x1D505 => array(0x62),
+ 0x1D507 => array(0x64),
+ 0x1D508 => array(0x65),
+ 0x1D509 => array(0x66),
+ 0x1D50A => array(0x67),
+ 0x1D50D => array(0x6A),
+ 0x1D50E => array(0x6B),
+ 0x1D50F => array(0x6C),
+ 0x1D510 => array(0x6D),
+ 0x1D511 => array(0x6E),
+ 0x1D512 => array(0x6F),
+ 0x1D513 => array(0x70),
+ 0x1D514 => array(0x71),
+ 0x1D516 => array(0x73),
+ 0x1D517 => array(0x74),
+ 0x1D518 => array(0x75),
+ 0x1D519 => array(0x76),
+ 0x1D51A => array(0x77),
+ 0x1D51B => array(0x78),
+ 0x1D51C => array(0x79),
+ 0x1D538 => array(0x61),
+ 0x1D539 => array(0x62),
+ 0x1D53B => array(0x64),
+ 0x1D53C => array(0x65),
+ 0x1D53D => array(0x66),
+ 0x1D53E => array(0x67),
+ 0x1D540 => array(0x69),
+ 0x1D541 => array(0x6A),
+ 0x1D542 => array(0x6B),
+ 0x1D543 => array(0x6C),
+ 0x1D544 => array(0x6D),
+ 0x1D546 => array(0x6F),
+ 0x1D54A => array(0x73),
+ 0x1D54B => array(0x74),
+ 0x1D54C => array(0x75),
+ 0x1D54D => array(0x76),
+ 0x1D54E => array(0x77),
+ 0x1D54F => array(0x78),
+ 0x1D550 => array(0x79),
+ 0x1D56C => array(0x61),
+ 0x1D56D => array(0x62),
+ 0x1D56E => array(0x63),
+ 0x1D56F => array(0x64),
+ 0x1D570 => array(0x65),
+ 0x1D571 => array(0x66),
+ 0x1D572 => array(0x67),
+ 0x1D573 => array(0x68),
+ 0x1D574 => array(0x69),
+ 0x1D575 => array(0x6A),
+ 0x1D576 => array(0x6B),
+ 0x1D577 => array(0x6C),
+ 0x1D578 => array(0x6D),
+ 0x1D579 => array(0x6E),
+ 0x1D57A => array(0x6F),
+ 0x1D57B => array(0x70),
+ 0x1D57C => array(0x71),
+ 0x1D57D => array(0x72),
+ 0x1D57E => array(0x73),
+ 0x1D57F => array(0x74),
+ 0x1D580 => array(0x75),
+ 0x1D581 => array(0x76),
+ 0x1D582 => array(0x77),
+ 0x1D583 => array(0x78),
+ 0x1D584 => array(0x79),
+ 0x1D585 => array(0x7A),
+ 0x1D5A0 => array(0x61),
+ 0x1D5A1 => array(0x62),
+ 0x1D5A2 => array(0x63),
+ 0x1D5A3 => array(0x64),
+ 0x1D5A4 => array(0x65),
+ 0x1D5A5 => array(0x66),
+ 0x1D5A6 => array(0x67),
+ 0x1D5A7 => array(0x68),
+ 0x1D5A8 => array(0x69),
+ 0x1D5A9 => array(0x6A),
+ 0x1D5AA => array(0x6B),
+ 0x1D5AB => array(0x6C),
+ 0x1D5AC => array(0x6D),
+ 0x1D5AD => array(0x6E),
+ 0x1D5AE => array(0x6F),
+ 0x1D5AF => array(0x70),
+ 0x1D5B0 => array(0x71),
+ 0x1D5B1 => array(0x72),
+ 0x1D5B2 => array(0x73),
+ 0x1D5B3 => array(0x74),
+ 0x1D5B4 => array(0x75),
+ 0x1D5B5 => array(0x76),
+ 0x1D5B6 => array(0x77),
+ 0x1D5B7 => array(0x78),
+ 0x1D5B8 => array(0x79),
+ 0x1D5B9 => array(0x7A),
+ 0x1D5D4 => array(0x61),
+ 0x1D5D5 => array(0x62),
+ 0x1D5D6 => array(0x63),
+ 0x1D5D7 => array(0x64),
+ 0x1D5D8 => array(0x65),
+ 0x1D5D9 => array(0x66),
+ 0x1D5DA => array(0x67),
+ 0x1D5DB => array(0x68),
+ 0x1D5DC => array(0x69),
+ 0x1D5DD => array(0x6A),
+ 0x1D5DE => array(0x6B),
+ 0x1D5DF => array(0x6C),
+ 0x1D5E0 => array(0x6D),
+ 0x1D5E1 => array(0x6E),
+ 0x1D5E2 => array(0x6F),
+ 0x1D5E3 => array(0x70),
+ 0x1D5E4 => array(0x71),
+ 0x1D5E5 => array(0x72),
+ 0x1D5E6 => array(0x73),
+ 0x1D5E7 => array(0x74),
+ 0x1D5E8 => array(0x75),
+ 0x1D5E9 => array(0x76),
+ 0x1D5EA => array(0x77),
+ 0x1D5EB => array(0x78),
+ 0x1D5EC => array(0x79),
+ 0x1D5ED => array(0x7A),
+ 0x1D608 => array(0x61),
+ 0x1D609 => array(0x62),
+ 0x1D60A => array(0x63),
+ 0x1D60B => array(0x64),
+ 0x1D60C => array(0x65),
+ 0x1D60D => array(0x66),
+ 0x1D60E => array(0x67),
+ 0x1D60F => array(0x68),
+ 0x1D610 => array(0x69),
+ 0x1D611 => array(0x6A),
+ 0x1D612 => array(0x6B),
+ 0x1D613 => array(0x6C),
+ 0x1D614 => array(0x6D),
+ 0x1D615 => array(0x6E),
+ 0x1D616 => array(0x6F),
+ 0x1D617 => array(0x70),
+ 0x1D618 => array(0x71),
+ 0x1D619 => array(0x72),
+ 0x1D61A => array(0x73),
+ 0x1D61B => array(0x74),
+ 0x1D61C => array(0x75),
+ 0x1D61D => array(0x76),
+ 0x1D61E => array(0x77),
+ 0x1D61F => array(0x78),
+ 0x1D620 => array(0x79),
+ 0x1D621 => array(0x7A),
+ 0x1D63C => array(0x61),
+ 0x1D63D => array(0x62),
+ 0x1D63E => array(0x63),
+ 0x1D63F => array(0x64),
+ 0x1D640 => array(0x65),
+ 0x1D641 => array(0x66),
+ 0x1D642 => array(0x67),
+ 0x1D643 => array(0x68),
+ 0x1D644 => array(0x69),
+ 0x1D645 => array(0x6A),
+ 0x1D646 => array(0x6B),
+ 0x1D647 => array(0x6C),
+ 0x1D648 => array(0x6D),
+ 0x1D649 => array(0x6E),
+ 0x1D64A => array(0x6F),
+ 0x1D64B => array(0x70),
+ 0x1D64C => array(0x71),
+ 0x1D64D => array(0x72),
+ 0x1D64E => array(0x73),
+ 0x1D64F => array(0x74),
+ 0x1D650 => array(0x75),
+ 0x1D651 => array(0x76),
+ 0x1D652 => array(0x77),
+ 0x1D653 => array(0x78),
+ 0x1D654 => array(0x79),
+ 0x1D655 => array(0x7A),
+ 0x1D670 => array(0x61),
+ 0x1D671 => array(0x62),
+ 0x1D672 => array(0x63),
+ 0x1D673 => array(0x64),
+ 0x1D674 => array(0x65),
+ 0x1D675 => array(0x66),
+ 0x1D676 => array(0x67),
+ 0x1D677 => array(0x68),
+ 0x1D678 => array(0x69),
+ 0x1D679 => array(0x6A),
+ 0x1D67A => array(0x6B),
+ 0x1D67B => array(0x6C),
+ 0x1D67C => array(0x6D),
+ 0x1D67D => array(0x6E),
+ 0x1D67E => array(0x6F),
+ 0x1D67F => array(0x70),
+ 0x1D680 => array(0x71),
+ 0x1D681 => array(0x72),
+ 0x1D682 => array(0x73),
+ 0x1D683 => array(0x74),
+ 0x1D684 => array(0x75),
+ 0x1D685 => array(0x76),
+ 0x1D686 => array(0x77),
+ 0x1D687 => array(0x78),
+ 0x1D688 => array(0x79),
+ 0x1D689 => array(0x7A),
+ 0x1D6A8 => array(0x3B1),
+ 0x1D6A9 => array(0x3B2),
+ 0x1D6AA => array(0x3B3),
+ 0x1D6AB => array(0x3B4),
+ 0x1D6AC => array(0x3B5),
+ 0x1D6AD => array(0x3B6),
+ 0x1D6AE => array(0x3B7),
+ 0x1D6AF => array(0x3B8),
+ 0x1D6B0 => array(0x3B9),
+ 0x1D6B1 => array(0x3BA),
+ 0x1D6B2 => array(0x3BB),
+ 0x1D6B3 => array(0x3BC),
+ 0x1D6B4 => array(0x3BD),
+ 0x1D6B5 => array(0x3BE),
+ 0x1D6B6 => array(0x3BF),
+ 0x1D6B7 => array(0x3C0),
+ 0x1D6B8 => array(0x3C1),
+ 0x1D6B9 => array(0x3B8),
+ 0x1D6BA => array(0x3C3),
+ 0x1D6BB => array(0x3C4),
+ 0x1D6BC => array(0x3C5),
+ 0x1D6BD => array(0x3C6),
+ 0x1D6BE => array(0x3C7),
+ 0x1D6BF => array(0x3C8),
+ 0x1D6C0 => array(0x3C9),
+ 0x1D6D3 => array(0x3C3),
+ 0x1D6E2 => array(0x3B1),
+ 0x1D6E3 => array(0x3B2),
+ 0x1D6E4 => array(0x3B3),
+ 0x1D6E5 => array(0x3B4),
+ 0x1D6E6 => array(0x3B5),
+ 0x1D6E7 => array(0x3B6),
+ 0x1D6E8 => array(0x3B7),
+ 0x1D6E9 => array(0x3B8),
+ 0x1D6EA => array(0x3B9),
+ 0x1D6EB => array(0x3BA),
+ 0x1D6EC => array(0x3BB),
+ 0x1D6ED => array(0x3BC),
+ 0x1D6EE => array(0x3BD),
+ 0x1D6EF => array(0x3BE),
+ 0x1D6F0 => array(0x3BF),
+ 0x1D6F1 => array(0x3C0),
+ 0x1D6F2 => array(0x3C1),
+ 0x1D6F3 => array(0x3B8),
+ 0x1D6F4 => array(0x3C3),
+ 0x1D6F5 => array(0x3C4),
+ 0x1D6F6 => array(0x3C5),
+ 0x1D6F7 => array(0x3C6),
+ 0x1D6F8 => array(0x3C7),
+ 0x1D6F9 => array(0x3C8),
+ 0x1D6FA => array(0x3C9),
+ 0x1D70D => array(0x3C3),
+ 0x1D71C => array(0x3B1),
+ 0x1D71D => array(0x3B2),
+ 0x1D71E => array(0x3B3),
+ 0x1D71F => array(0x3B4),
+ 0x1D720 => array(0x3B5),
+ 0x1D721 => array(0x3B6),
+ 0x1D722 => array(0x3B7),
+ 0x1D723 => array(0x3B8),
+ 0x1D724 => array(0x3B9),
+ 0x1D725 => array(0x3BA),
+ 0x1D726 => array(0x3BB),
+ 0x1D727 => array(0x3BC),
+ 0x1D728 => array(0x3BD),
+ 0x1D729 => array(0x3BE),
+ 0x1D72A => array(0x3BF),
+ 0x1D72B => array(0x3C0),
+ 0x1D72C => array(0x3C1),
+ 0x1D72D => array(0x3B8),
+ 0x1D72E => array(0x3C3),
+ 0x1D72F => array(0x3C4),
+ 0x1D730 => array(0x3C5),
+ 0x1D731 => array(0x3C6),
+ 0x1D732 => array(0x3C7),
+ 0x1D733 => array(0x3C8),
+ 0x1D734 => array(0x3C9),
+ 0x1D747 => array(0x3C3),
+ 0x1D756 => array(0x3B1),
+ 0x1D757 => array(0x3B2),
+ 0x1D758 => array(0x3B3),
+ 0x1D759 => array(0x3B4),
+ 0x1D75A => array(0x3B5),
+ 0x1D75B => array(0x3B6),
+ 0x1D75C => array(0x3B7),
+ 0x1D75D => array(0x3B8),
+ 0x1D75E => array(0x3B9),
+ 0x1D75F => array(0x3BA),
+ 0x1D760 => array(0x3BB),
+ 0x1D761 => array(0x3BC),
+ 0x1D762 => array(0x3BD),
+ 0x1D763 => array(0x3BE),
+ 0x1D764 => array(0x3BF),
+ 0x1D765 => array(0x3C0),
+ 0x1D766 => array(0x3C1),
+ 0x1D767 => array(0x3B8),
+ 0x1D768 => array(0x3C3),
+ 0x1D769 => array(0x3C4),
+ 0x1D76A => array(0x3C5),
+ 0x1D76B => array(0x3C6),
+ 0x1D76C => array(0x3C7),
+ 0x1D76D => array(0x3C8),
+ 0x1D76E => array(0x3C9),
+ 0x1D781 => array(0x3C3),
+ 0x1D790 => array(0x3B1),
+ 0x1D791 => array(0x3B2),
+ 0x1D792 => array(0x3B3),
+ 0x1D793 => array(0x3B4),
+ 0x1D794 => array(0x3B5),
+ 0x1D795 => array(0x3B6),
+ 0x1D796 => array(0x3B7),
+ 0x1D797 => array(0x3B8),
+ 0x1D798 => array(0x3B9),
+ 0x1D799 => array(0x3BA),
+ 0x1D79A => array(0x3BB),
+ 0x1D79B => array(0x3BC),
+ 0x1D79C => array(0x3BD),
+ 0x1D79D => array(0x3BE),
+ 0x1D79E => array(0x3BF),
+ 0x1D79F => array(0x3C0),
+ 0x1D7A0 => array(0x3C1),
+ 0x1D7A1 => array(0x3B8),
+ 0x1D7A2 => array(0x3C3),
+ 0x1D7A3 => array(0x3C4),
+ 0x1D7A4 => array(0x3C5),
+ 0x1D7A5 => array(0x3C6),
+ 0x1D7A6 => array(0x3C7),
+ 0x1D7A7 => array(0x3C8),
+ 0x1D7A8 => array(0x3C9),
+ 0x1D7BB => array(0x3C3),
+ 0x3F9 => array(0x3C3),
+ 0x1D2C => array(0x61),
+ 0x1D2D => array(0xE6),
+ 0x1D2E => array(0x62),
+ 0x1D30 => array(0x64),
+ 0x1D31 => array(0x65),
+ 0x1D32 => array(0x1DD),
+ 0x1D33 => array(0x67),
+ 0x1D34 => array(0x68),
+ 0x1D35 => array(0x69),
+ 0x1D36 => array(0x6A),
+ 0x1D37 => array(0x6B),
+ 0x1D38 => array(0x6C),
+ 0x1D39 => array(0x6D),
+ 0x1D3A => array(0x6E),
+ 0x1D3C => array(0x6F),
+ 0x1D3D => array(0x223),
+ 0x1D3E => array(0x70),
+ 0x1D3F => array(0x72),
+ 0x1D40 => array(0x74),
+ 0x1D41 => array(0x75),
+ 0x1D42 => array(0x77),
+ 0x213B => array(0x66, 0x61, 0x78),
+ 0x3250 => array(0x70, 0x74, 0x65),
+ 0x32CC => array(0x68, 0x67),
+ 0x32CE => array(0x65, 0x76),
+ 0x32CF => array(0x6C, 0x74, 0x64),
+ 0x337A => array(0x69, 0x75),
+ 0x33DE => array(0x76, 0x2215, 0x6D),
+ 0x33DF => array(0x61, 0x2215, 0x6D)
+ );
+
+ /**
+ * Normalization Combining Classes; Code Points not listed
+ * got Combining Class 0.
+ *
+ * @static
+ * @var array
+ * @access private
+ */
+ private static $_np_norm_combcls = array(
+ 0x334 => 1,
+ 0x335 => 1,
+ 0x336 => 1,
+ 0x337 => 1,
+ 0x338 => 1,
+ 0x93C => 7,
+ 0x9BC => 7,
+ 0xA3C => 7,
+ 0xABC => 7,
+ 0xB3C => 7,
+ 0xCBC => 7,
+ 0x1037 => 7,
+ 0x3099 => 8,
+ 0x309A => 8,
+ 0x94D => 9,
+ 0x9CD => 9,
+ 0xA4D => 9,
+ 0xACD => 9,
+ 0xB4D => 9,
+ 0xBCD => 9,
+ 0xC4D => 9,
+ 0xCCD => 9,
+ 0xD4D => 9,
+ 0xDCA => 9,
+ 0xE3A => 9,
+ 0xF84 => 9,
+ 0x1039 => 9,
+ 0x1714 => 9,
+ 0x1734 => 9,
+ 0x17D2 => 9,
+ 0x5B0 => 10,
+ 0x5B1 => 11,
+ 0x5B2 => 12,
+ 0x5B3 => 13,
+ 0x5B4 => 14,
+ 0x5B5 => 15,
+ 0x5B6 => 16,
+ 0x5B7 => 17,
+ 0x5B8 => 18,
+ 0x5B9 => 19,
+ 0x5BB => 20,
+ 0x5Bc => 21,
+ 0x5BD => 22,
+ 0x5BF => 23,
+ 0x5C1 => 24,
+ 0x5C2 => 25,
+ 0xFB1E => 26,
+ 0x64B => 27,
+ 0x64C => 28,
+ 0x64D => 29,
+ 0x64E => 30,
+ 0x64F => 31,
+ 0x650 => 32,
+ 0x651 => 33,
+ 0x652 => 34,
+ 0x670 => 35,
+ 0x711 => 36,
+ 0xC55 => 84,
+ 0xC56 => 91,
+ 0xE38 => 103,
+ 0xE39 => 103,
+ 0xE48 => 107,
+ 0xE49 => 107,
+ 0xE4A => 107,
+ 0xE4B => 107,
+ 0xEB8 => 118,
+ 0xEB9 => 118,
+ 0xEC8 => 122,
+ 0xEC9 => 122,
+ 0xECA => 122,
+ 0xECB => 122,
+ 0xF71 => 129,
+ 0xF72 => 130,
+ 0xF7A => 130,
+ 0xF7B => 130,
+ 0xF7C => 130,
+ 0xF7D => 130,
+ 0xF80 => 130,
+ 0xF74 => 132,
+ 0x321 => 202,
+ 0x322 => 202,
+ 0x327 => 202,
+ 0x328 => 202,
+ 0x31B => 216,
+ 0xF39 => 216,
+ 0x1D165 => 216,
+ 0x1D166 => 216,
+ 0x1D16E => 216,
+ 0x1D16F => 216,
+ 0x1D170 => 216,
+ 0x1D171 => 216,
+ 0x1D172 => 216,
+ 0x302A => 218,
+ 0x316 => 220,
+ 0x317 => 220,
+ 0x318 => 220,
+ 0x319 => 220,
+ 0x31C => 220,
+ 0x31D => 220,
+ 0x31E => 220,
+ 0x31F => 220,
+ 0x320 => 220,
+ 0x323 => 220,
+ 0x324 => 220,
+ 0x325 => 220,
+ 0x326 => 220,
+ 0x329 => 220,
+ 0x32A => 220,
+ 0x32B => 220,
+ 0x32C => 220,
+ 0x32D => 220,
+ 0x32E => 220,
+ 0x32F => 220,
+ 0x330 => 220,
+ 0x331 => 220,
+ 0x332 => 220,
+ 0x333 => 220,
+ 0x339 => 220,
+ 0x33A => 220,
+ 0x33B => 220,
+ 0x33C => 220,
+ 0x347 => 220,
+ 0x348 => 220,
+ 0x349 => 220,
+ 0x34D => 220,
+ 0x34E => 220,
+ 0x353 => 220,
+ 0x354 => 220,
+ 0x355 => 220,
+ 0x356 => 220,
+ 0x591 => 220,
+ 0x596 => 220,
+ 0x59B => 220,
+ 0x5A3 => 220,
+ 0x5A4 => 220,
+ 0x5A5 => 220,
+ 0x5A6 => 220,
+ 0x5A7 => 220,
+ 0x5AA => 220,
+ 0x655 => 220,
+ 0x656 => 220,
+ 0x6E3 => 220,
+ 0x6EA => 220,
+ 0x6ED => 220,
+ 0x731 => 220,
+ 0x734 => 220,
+ 0x737 => 220,
+ 0x738 => 220,
+ 0x739 => 220,
+ 0x73B => 220,
+ 0x73C => 220,
+ 0x73E => 220,
+ 0x742 => 220,
+ 0x744 => 220,
+ 0x746 => 220,
+ 0x748 => 220,
+ 0x952 => 220,
+ 0xF18 => 220,
+ 0xF19 => 220,
+ 0xF35 => 220,
+ 0xF37 => 220,
+ 0xFC6 => 220,
+ 0x193B => 220,
+ 0x20E8 => 220,
+ 0x1D17B => 220,
+ 0x1D17C => 220,
+ 0x1D17D => 220,
+ 0x1D17E => 220,
+ 0x1D17F => 220,
+ 0x1D180 => 220,
+ 0x1D181 => 220,
+ 0x1D182 => 220,
+ 0x1D18A => 220,
+ 0x1D18B => 220,
+ 0x59A => 222,
+ 0x5AD => 222,
+ 0x1929 => 222,
+ 0x302D => 222,
+ 0x302E => 224,
+ 0x302F => 224,
+ 0x1D16D => 226,
+ 0x5AE => 228,
+ 0x18A9 => 228,
+ 0x302B => 228,
+ 0x300 => 230,
+ 0x301 => 230,
+ 0x302 => 230,
+ 0x303 => 230,
+ 0x304 => 230,
+ 0x305 => 230,
+ 0x306 => 230,
+ 0x307 => 230,
+ 0x308 => 230,
+ 0x309 => 230,
+ 0x30A => 230,
+ 0x30B => 230,
+ 0x30C => 230,
+ 0x30D => 230,
+ 0x30E => 230,
+ 0x30F => 230,
+ 0x310 => 230,
+ 0x311 => 230,
+ 0x312 => 230,
+ 0x313 => 230,
+ 0x314 => 230,
+ 0x33D => 230,
+ 0x33E => 230,
+ 0x33F => 230,
+ 0x340 => 230,
+ 0x341 => 230,
+ 0x342 => 230,
+ 0x343 => 230,
+ 0x344 => 230,
+ 0x346 => 230,
+ 0x34A => 230,
+ 0x34B => 230,
+ 0x34C => 230,
+ 0x350 => 230,
+ 0x351 => 230,
+ 0x352 => 230,
+ 0x357 => 230,
+ 0x363 => 230,
+ 0x364 => 230,
+ 0x365 => 230,
+ 0x366 => 230,
+ 0x367 => 230,
+ 0x368 => 230,
+ 0x369 => 230,
+ 0x36A => 230,
+ 0x36B => 230,
+ 0x36C => 230,
+ 0x36D => 230,
+ 0x36E => 230,
+ 0x36F => 230,
+ 0x483 => 230,
+ 0x484 => 230,
+ 0x485 => 230,
+ 0x486 => 230,
+ 0x592 => 230,
+ 0x593 => 230,
+ 0x594 => 230,
+ 0x595 => 230,
+ 0x597 => 230,
+ 0x598 => 230,
+ 0x599 => 230,
+ 0x59C => 230,
+ 0x59D => 230,
+ 0x59E => 230,
+ 0x59F => 230,
+ 0x5A0 => 230,
+ 0x5A1 => 230,
+ 0x5A8 => 230,
+ 0x5A9 => 230,
+ 0x5AB => 230,
+ 0x5AC => 230,
+ 0x5AF => 230,
+ 0x5C4 => 230,
+ 0x610 => 230,
+ 0x611 => 230,
+ 0x612 => 230,
+ 0x613 => 230,
+ 0x614 => 230,
+ 0x615 => 230,
+ 0x653 => 230,
+ 0x654 => 230,
+ 0x657 => 230,
+ 0x658 => 230,
+ 0x6D6 => 230,
+ 0x6D7 => 230,
+ 0x6D8 => 230,
+ 0x6D9 => 230,
+ 0x6DA => 230,
+ 0x6DB => 230,
+ 0x6DC => 230,
+ 0x6DF => 230,
+ 0x6E0 => 230,
+ 0x6E1 => 230,
+ 0x6E2 => 230,
+ 0x6E4 => 230,
+ 0x6E7 => 230,
+ 0x6E8 => 230,
+ 0x6EB => 230,
+ 0x6EC => 230,
+ 0x730 => 230,
+ 0x732 => 230,
+ 0x733 => 230,
+ 0x735 => 230,
+ 0x736 => 230,
+ 0x73A => 230,
+ 0x73D => 230,
+ 0x73F => 230,
+ 0x740 => 230,
+ 0x741 => 230,
+ 0x743 => 230,
+ 0x745 => 230,
+ 0x747 => 230,
+ 0x749 => 230,
+ 0x74A => 230,
+ 0x951 => 230,
+ 0x953 => 230,
+ 0x954 => 230,
+ 0xF82 => 230,
+ 0xF83 => 230,
+ 0xF86 => 230,
+ 0xF87 => 230,
+ 0x170D => 230,
+ 0x193A => 230,
+ 0x20D0 => 230,
+ 0x20D1 => 230,
+ 0x20D4 => 230,
+ 0x20D5 => 230,
+ 0x20D6 => 230,
+ 0x20D7 => 230,
+ 0x20DB => 230,
+ 0x20DC => 230,
+ 0x20E1 => 230,
+ 0x20E7 => 230,
+ 0x20E9 => 230,
+ 0xFE20 => 230,
+ 0xFE21 => 230,
+ 0xFE22 => 230,
+ 0xFE23 => 230,
+ 0x1D185 => 230,
+ 0x1D186 => 230,
+ 0x1D187 => 230,
+ 0x1D189 => 230,
+ 0x1D188 => 230,
+ 0x1D1AA => 230,
+ 0x1D1AB => 230,
+ 0x1D1AC => 230,
+ 0x1D1AD => 230,
+ 0x315 => 232,
+ 0x31A => 232,
+ 0x302C => 232,
+ 0x35F => 233,
+ 0x362 => 233,
+ 0x35D => 234,
+ 0x35E => 234,
+ 0x360 => 234,
+ 0x361 => 234,
+ 0x345 => 240
+ );
+ // }}}
+
+ // {{{ properties
+ /**
+ * @var string
+ * @access private
+ */
+ private $_punycode_prefix = 'xn--';
+
+ /**
+ * @access private
+ */
+ private $_invalid_ucs = 0x80000000;
+
+ /**
+ * @access private
+ */
+ private $_max_ucs = 0x10FFFF;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_base = 36;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_tmin = 1;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_tmax = 26;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_skew = 38;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_damp = 700;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_initial_bias = 72;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_initial_n = 0x80;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_slast;
+
+ /**
+ * @access private
+ */
+ private $_sbase = 0xAC00;
+
+ /**
+ * @access private
+ */
+ private $_lbase = 0x1100;
+
+ /**
+ * @access private
+ */
+ private $_vbase = 0x1161;
+
+ /**
+ * @access private
+ */
+ private $_tbase = 0x11a7;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_lcount = 19;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_vcount = 21;
+
+ /**
+ * @var int
+ * @access private
+ */
+ private $_tcount = 28;
+
+ /**
+ * vcount * tcount
+ *
+ * @var int
+ * @access private
+ */
+ private $_ncount = 588;
+
+ /**
+ * lcount * tcount * vcount
+ *
+ * @var int
+ * @access private
+ */
+ private $_scount = 11172;
+
+ /**
+ * Default encoding for encode()'s input and decode()'s output is UTF-8;
+ * Other possible encodings are ucs4_string and ucs4_array
+ * See {@link setParams()} for how to select these
+ *
+ * @var bool
+ * @access private
+ */
+ private $_api_encoding = 'utf8';
+
+ /**
+ * Overlong UTF-8 encodings are forbidden
+ *
+ * @var bool
+ * @access private
+ */
+ private $_allow_overlong = false;
+
+ /**
+ * Behave strict or not
+ *
+ * @var bool
+ * @access private
+ */
+ private $_strict_mode = false;
+
+ /**
+ * Cached value indicating whether or not mbstring function overloading is
+ * on for strlen
+ *
+ * This is cached for optimal performance.
+ *
+ * @var boolean
+ * @see Net_IDNA_php5::_byteLength()
+ */
+ private static $_mb_string_overload = null;
+ // }}}
+
+
+ // {{{ constructor
+ /**
+ * Constructor
+ *
+ * @param array $options
+ * @access public
+ * @see setParams()
+ */
+ public function __construct($options = null)
+ {
+ $this->_slast = $this->_sbase + $this->_lcount * $this->_vcount * $this->_tcount;
+
+ if (is_array($options)) {
+ $this->setParams($options);
+ }
+
+ // populate mbstring overloading cache if not set
+ if (self::$_mb_string_overload === null) {
+ self::$_mb_string_overload = (extension_loaded('mbstring')
+ && (ini_get('mbstring.func_overload') & 0x02) === 0x02);
+ }
+ }
+ // }}}
+
+
+ /**
+ * Sets a new option value. Available options and values:
+ *
+ * [utf8 - Use either UTF-8 or ISO-8859-1 as input (true for UTF-8, false
+ * otherwise); The output is always UTF-8]
+ * [overlong - Unicode does not allow unnecessarily long encodings of chars,
+ * to allow this, set this parameter to true, else to false;
+ * default is false.]
+ * [strict - true: strict mode, good for registration purposes - Causes errors
+ * on failures; false: loose mode, ideal for "wildlife" applications
+ * by silently ignoring errors and returning the original input instead]
+ *
+ * @param mixed $option Parameter to set (string: single parameter; array of Parameter => Value pairs)
+ * @param string $value Value to use (if parameter 1 is a string)
+ * @return boolean true on success, false otherwise
+ * @access public
+ */
+ public function setParams($option, $value = false)
+ {
+ if (!is_array($option)) {
+ $option = array($option => $value);
+ }
+
+ foreach ($option as $k => $v) {
+ switch ($k) {
+ case 'encoding':
+ switch ($v) {
+ case 'utf8':
+ case 'ucs4_string':
+ case 'ucs4_array':
+ $this->_api_encoding = $v;
+ break;
+
+ default:
+ throw new Exception('Set Parameter: Unknown parameter '.$v.' for option '.$k);
+ }
+
+ break;
+
+ case 'overlong':
+ $this->_allow_overlong = ($v) ? true : false;
+ break;
+
+ case 'strict':
+ $this->_strict_mode = ($v) ? true : false;
+ break;
+
+ default:
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Encode a given UTF-8 domain name.
+ *
+ * @param string $decoded Domain name (UTF-8 or UCS-4)
+ * [@param string $encoding Desired input encoding, see {@link set_parameter}]
+ * @return string Encoded Domain name (ACE string)
+ * @return mixed processed string
+ * @throws Exception
+ * @access public
+ */
+ public function encode($decoded, $one_time_encoding = false)
+ {
+ // Forcing conversion of input to UCS4 array
+ // If one time encoding is given, use this, else the objects property
+ switch (($one_time_encoding) ? $one_time_encoding : $this->_api_encoding) {
+ case 'utf8':
+ $decoded = $this->_utf8_to_ucs4($decoded);
+ break;
+ case 'ucs4_string':
+ $decoded = $this->_ucs4_string_to_ucs4($decoded);
+ case 'ucs4_array': // No break; before this line. Catch case, but do nothing
+ break;
+ default:
+ throw new Exception('Unsupported input format');
+ }
+
+ // No input, no output, what else did you expect?
+ if (empty($decoded)) return '';
+
+ // Anchors for iteration
+ $last_begin = 0;
+ // Output string
+ $output = '';
+
+ foreach ($decoded as $k => $v) {
+ // Make sure to use just the plain dot
+ switch($v) {
+ case 0x3002:
+ case 0xFF0E:
+ case 0xFF61:
+ $decoded[$k] = 0x2E;
+ // It's right, no break here
+ // The codepoints above have to be converted to dots anyway
+
+ // Stumbling across an anchoring character
+ case 0x2E:
+ case 0x2F:
+ case 0x3A:
+ case 0x3F:
+ case 0x40:
+ // Neither email addresses nor URLs allowed in strict mode
+ if ($this->_strict_mode) {
+ throw new Exception('Neither email addresses nor URLs are allowed in strict mode.');
+ } else {
+ // Skip first char
+ if ($k) {
+ $encoded = '';
+ $encoded = $this->_encode(array_slice($decoded, $last_begin, (($k)-$last_begin)));
+ if ($encoded) {
+ $output .= $encoded;
+ } else {
+ $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($k)-$last_begin)));
+ }
+ $output .= chr($decoded[$k]);
+ }
+ $last_begin = $k + 1;
+ }
+ }
+ }
+ // Catch the rest of the string
+ if ($last_begin) {
+ $inp_len = sizeof($decoded);
+ $encoded = '';
+ $encoded = $this->_encode(array_slice($decoded, $last_begin, (($inp_len)-$last_begin)));
+ if ($encoded) {
+ $output .= $encoded;
+ } else {
+ $output .= $this->_ucs4_to_utf8(array_slice($decoded, $last_begin, (($inp_len)-$last_begin)));
+ }
+ return $output;
+ } else {
+ if ($output = $this->_encode($decoded)) {
+ return $output;
+ } else {
+ return $this->_ucs4_to_utf8($decoded);
+ }
+ }
+ }
+
+ /**
+ * Decode a given ACE domain name.
+ *
+ * @param string $encoded Domain name (ACE string)
+ * @param string $encoding Desired output encoding, see {@link set_parameter}
+ * @return string Decoded Domain name (UTF-8 or UCS-4)
+ * @throws Exception
+ * @access public
+ */
+ public function decode($input, $one_time_encoding = false)
+ {
+ // Optionally set
+ if ($one_time_encoding) {
+ switch ($one_time_encoding) {
+ case 'utf8':
+ case 'ucs4_string':
+ case 'ucs4_array':
+ break;
+ default:
+ throw new Exception('Unknown encoding '.$one_time_encoding);
+ return false;
+ }
+ }
+ // Make sure to drop any newline characters around
+ $input = trim($input);
+
+ // Negotiate input and try to determine, wether it is a plain string,
+ // an email address or something like a complete URL
+ if (strpos($input, '@')) { // Maybe it is an email address
+ // No no in strict mode
+ if ($this->_strict_mode) {
+ throw new Exception('Only simple domain name parts can be handled in strict mode');
+ }
+ list($email_pref, $input) = explode('@', $input, 2);
+ $arr = explode('.', $input);
+ foreach ($arr as $k => $v) {
+ $conv = $this->_decode($v);
+ if ($conv) $arr[$k] = $conv;
+ }
+ $return = $email_pref . '@' . join('.', $arr);
+ } elseif (preg_match('![:\./]!', $input)) { // Or a complete domain name (with or without paths / parameters)
+ // No no in strict mode
+ if ($this->_strict_mode) {
+ throw new Exception('Only simple domain name parts can be handled in strict mode');
+ }
+ $parsed = parse_url($input);
+ if (isset($parsed['host'])) {
+ $arr = explode('.', $parsed['host']);
+ foreach ($arr as $k => $v) {
+ $conv = $this->_decode($v);
+ if ($conv) $arr[$k] = $conv;
+ }
+ $parsed['host'] = join('.', $arr);
+ if (isset($parsed['scheme'])) {
+ $parsed['scheme'] .= (strtolower($parsed['scheme']) == 'mailto') ? ':' : '://';
+ }
+ $return = join('', $parsed);
+ } else { // parse_url seems to have failed, try without it
+ $arr = explode('.', $input);
+ foreach ($arr as $k => $v) {
+ $conv = $this->_decode($v);
+ if ($conv) $arr[$k] = $conv;
+ }
+ $return = join('.', $arr);
+ }
+ } else { // Otherwise we consider it being a pure domain name string
+ $return = $this->_decode($input);
+ }
+ // The output is UTF-8 by default, other output formats need conversion here
+ // If one time encoding is given, use this, else the objects property
+ switch (($one_time_encoding) ? $one_time_encoding : $this->_api_encoding) {
+ case 'utf8':
+ return $return;
+ break;
+ case 'ucs4_string':
+ return $this->_ucs4_to_ucs4_string($this->_utf8_to_ucs4($return));
+ break;
+ case 'ucs4_array':
+ return $this->_utf8_to_ucs4($return);
+ break;
+ default:
+ throw new Exception('Unsupported output format');
+ }
+ }
+
+
+ // {{{ private
+ /**
+ * The actual encoding algorithm.
+ *
+ * @return string
+ * @throws Exception
+ * @access private
+ */
+ private function _encode($decoded)
+ {
+ // We cannot encode a domain name containing the Punycode prefix
+ $extract = self::_byteLength($this->_punycode_prefix);
+ $check_pref = $this->_utf8_to_ucs4($this->_punycode_prefix);
+ $check_deco = array_slice($decoded, 0, $extract);
+
+ if ($check_pref == $check_deco) {
+ throw new Exception('This is already a punycode string');
+ }
+ // We will not try to encode strings consisting of basic code points only
+ $encodable = false;
+ foreach ($decoded as $k => $v) {
+ if ($v > 0x7a) {
+ $encodable = true;
+ break;
+ }
+ }
+ if (!$encodable) {
+ if ($this->_strict_mode) {
+ throw new Exception('The given string does not contain encodable chars');
+ } else {
+ return false;
+ }
+ }
+
+ // Do NAMEPREP
+ try {
+ $decoded = $this->_nameprep($decoded);
+ } catch (Exception $e) {
+ // hmm, serious - rethrow
+ throw $e;
+ }
+
+ $deco_len = count($decoded);
+
+ // Empty array
+ if (!$deco_len) {
+ return false;
+ }
+
+ // How many chars have been consumed
+ $codecount = 0;
+
+ // Start with the prefix; copy it to output
+ $encoded = $this->_punycode_prefix;
+
+ $encoded = '';
+ // Copy all basic code points to output
+ for ($i = 0; $i < $deco_len; ++$i) {
+ $test = $decoded[$i];
+ // Will match [0-9a-zA-Z-]
+ if ((0x2F < $test && $test < 0x40)
+ || (0x40 < $test && $test < 0x5B)
+ || (0x60 < $test && $test <= 0x7B)
+ || (0x2D == $test)) {
+ $encoded .= chr($decoded[$i]);
+ $codecount++;
+ }
+ }
+
+ // All codepoints were basic ones
+ if ($codecount == $deco_len) {
+ return $encoded;
+ }
+
+ // Start with the prefix; copy it to output
+ $encoded = $this->_punycode_prefix . $encoded;
+
+ // If we have basic code points in output, add an hyphen to the end
+ if ($codecount) {
+ $encoded .= '-';
+ }
+
+ // Now find and encode all non-basic code points
+ $is_first = true;
+ $cur_code = $this->_initial_n;
+ $bias = $this->_initial_bias;
+ $delta = 0;
+
+ while ($codecount < $deco_len) {
+ // Find the smallest code point >= the current code point and
+ // remember the last ouccrence of it in the input
+ for ($i = 0, $next_code = $this->_max_ucs; $i < $deco_len; $i++) {
+ if ($decoded[$i] >= $cur_code && $decoded[$i] <= $next_code) {
+ $next_code = $decoded[$i];
+ }
+ }
+
+ $delta += ($next_code - $cur_code) * ($codecount + 1);
+ $cur_code = $next_code;
+
+ // Scan input again and encode all characters whose code point is $cur_code
+ for ($i = 0; $i < $deco_len; $i++) {
+ if ($decoded[$i] < $cur_code) {
+ $delta++;
+ } else if ($decoded[$i] == $cur_code) {
+ for ($q = $delta, $k = $this->_base; 1; $k += $this->_base) {
+ $t = ($k <= $bias)?
+ $this->_tmin :
+ (($k >= $bias + $this->_tmax)? $this->_tmax : $k - $bias);
+
+ if ($q < $t) {
+ break;
+ }
+
+ $encoded .= $this->_encodeDigit(ceil($t + (($q - $t) % ($this->_base - $t))));
+ $q = ($q - $t) / ($this->_base - $t);
+ }
+
+ $encoded .= $this->_encodeDigit($q);
+ $bias = $this->_adapt($delta, $codecount + 1, $is_first);
+ $codecount++;
+ $delta = 0;
+ $is_first = false;
+ }
+ }
+
+ $delta++;
+ $cur_code++;
+ }
+
+ return $encoded;
+ }
+
+ /**
+ * The actual decoding algorithm.
+ *
+ * @return string
+ * @throws Exception
+ * @access private
+ */
+ private function _decode($encoded)
+ {
+ // We do need to find the Punycode prefix
+ if (!preg_match('!^' . preg_quote($this->_punycode_prefix, '!') . '!', $encoded)) {
+ return false;
+ }
+
+ $encode_test = preg_replace('!^' . preg_quote($this->_punycode_prefix, '!') . '!', '', $encoded);
+
+ // If nothing left after removing the prefix, it is hopeless
+ if (!$encode_test) {
+ return false;
+ }
+
+ // Find last occurence of the delimiter
+ $delim_pos = strrpos($encoded, '-');
+
+ if ($delim_pos > self::_byteLength($this->_punycode_prefix)) {
+ for ($k = self::_byteLength($this->_punycode_prefix); $k < $delim_pos; ++$k) {
+ $decoded[] = ord($encoded{$k});
+ }
+ } else {
+ $decoded = array();
+ }
+
+ $deco_len = count($decoded);
+ $enco_len = self::_byteLength($encoded);
+
+ // Wandering through the strings; init
+ $is_first = true;
+ $bias = $this->_initial_bias;
+ $idx = 0;
+ $char = $this->_initial_n;
+
+ for ($enco_idx = ($delim_pos)? ($delim_pos + 1) : 0; $enco_idx < $enco_len; ++$deco_len) {
+ for ($old_idx = $idx, $w = 1, $k = $this->_base; 1 ; $k += $this->_base) {
+ $digit = $this->_decodeDigit($encoded{$enco_idx++});
+ $idx += $digit * $w;
+
+ $t = ($k <= $bias) ?
+ $this->_tmin :
+ (($k >= $bias + $this->_tmax)? $this->_tmax : ($k - $bias));
+
+ if ($digit < $t) {
+ break;
+ }
+
+ $w = (int)($w * ($this->_base - $t));
+ }
+
+ $bias = $this->_adapt($idx - $old_idx, $deco_len + 1, $is_first);
+ $is_first = false;
+ $char += (int) ($idx / ($deco_len + 1));
+ $idx %= ($deco_len + 1);
+
+ if ($deco_len > 0) {
+ // Make room for the decoded char
+ for ($i = $deco_len; $i > $idx; $i--) {
+ $decoded[$i] = $decoded[($i - 1)];
+ }
+ }
+
+ $decoded[$idx++] = $char;
+ }
+
+ try {
+ return $this->_ucs4_to_utf8($decoded);
+ } catch (Exception $e) {
+ // rethrow
+ throw $e;
+ }
+ }
+
+ /**
+ * Adapt the bias according to the current code point and position.
+ *
+ * @access private
+ */
+ private function _adapt($delta, $npoints, $is_first)
+ {
+ $delta = (int) ($is_first ? ($delta / $this->_damp) : ($delta / 2));
+ $delta += (int) ($delta / $npoints);
+
+ for ($k = 0; $delta > (($this->_base - $this->_tmin) * $this->_tmax) / 2; $k += $this->_base) {
+ $delta = (int) ($delta / ($this->_base - $this->_tmin));
+ }
+
+ return (int) ($k + ($this->_base - $this->_tmin + 1) * $delta / ($delta + $this->_skew));
+ }
+
+ /**
+ * Encoding a certain digit.
+ *
+ * @access private
+ */
+ private function _encodeDigit($d)
+ {
+ return chr($d + 22 + 75 * ($d < 26));
+ }
+
+ /**
+ * Decode a certain digit.
+ *
+ * @access private
+ */
+ private function _decodeDigit($cp)
+ {
+ $cp = ord($cp);
+ return ($cp - 48 < 10)? $cp - 22 : (($cp - 65 < 26)? $cp - 65 : (($cp - 97 < 26)? $cp - 97 : $this->_base));
+ }
+
+ /**
+ * Do Nameprep according to RFC3491 and RFC3454.
+ *
+ * @param array $input Unicode Characters
+ * @return string Unicode Characters, Nameprep'd
+ * @throws Exception
+ * @access private
+ */
+ private function _nameprep($input)
+ {
+ $output = array();
+
+ // Walking through the input array, performing the required steps on each of
+ // the input chars and putting the result into the output array
+ // While mapping required chars we apply the cannonical ordering
+
+ foreach ($input as $v) {
+ // Map to nothing == skip that code point
+ if (in_array($v, self::$_np_map_nothing)) {
+ continue;
+ }
+
+ // Try to find prohibited input
+ if (in_array($v, self::$_np_prohibit) || in_array($v, self::$_general_prohibited)) {
+ throw new Exception('NAMEPREP: Prohibited input U+' . sprintf('%08X', $v));
+ }
+
+ foreach (self::$_np_prohibit_ranges as $range) {
+ if ($range[0] <= $v && $v <= $range[1]) {
+ throw new Exception('NAMEPREP: Prohibited input U+' . sprintf('%08X', $v));
+ }
+ }
+
+ // Hangul syllable decomposition
+ if (0xAC00 <= $v && $v <= 0xD7AF) {
+ foreach ($this->_hangulDecompose($v) as $out) {
+ $output[] = $out;
+ }
+ } else if (isset(self::$_np_replacemaps[$v])) { // There's a decomposition mapping for that code point
+ foreach ($this->_applyCannonicalOrdering(self::$_np_replacemaps[$v]) as $out) {
+ $output[] = $out;
+ }
+ } else {
+ $output[] = $v;
+ }
+ }
+
+ // Combine code points
+
+ $last_class = 0;
+ $last_starter = 0;
+ $out_len = count($output);
+
+ for ($i = 0; $i < $out_len; ++$i) {
+ $class = $this->_getCombiningClass($output[$i]);
+
+ if ((!$last_class || $last_class != $class) && $class) {
+ // Try to match
+ $seq_len = $i - $last_starter;
+ $out = $this->_combine(array_slice($output, $last_starter, $seq_len));
+
+ // On match: Replace the last starter with the composed character and remove
+ // the now redundant non-starter(s)
+ if ($out) {
+ $output[$last_starter] = $out;
+
+ if (count($out) != $seq_len) {
+ for ($j = $i + 1; $j < $out_len; ++$j) {
+ $output[$j - 1] = $output[$j];
+ }
+
+ unset($output[$out_len]);
+ }
+
+ // Rewind the for loop by one, since there can be more possible compositions
+ $i--;
+ $out_len--;
+ $last_class = ($i == $last_starter)? 0 : $this->_getCombiningClass($output[$i - 1]);
+
+ continue;
+ }
+ }
+
+ // The current class is 0
+ if (!$class) {
+ $last_starter = $i;
+ }
+
+ $last_class = $class;
+ }
+
+ return $output;
+ }
+
+ /**
+ * Decomposes a Hangul syllable
+ * (see http://www.unicode.org/unicode/reports/tr15/#Hangul).
+ *
+ * @param integer $char 32bit UCS4 code point
+ * @return array Either Hangul Syllable decomposed or original 32bit
+ * value as one value array
+ * @access private
+ */
+ private function _hangulDecompose($char)
+ {
+ $sindex = $char - $this->_sbase;
+
+ if ($sindex < 0 || $sindex >= $this->_scount) {
+ return array($char);
+ }
+
+ $result = array();
+ $T = $this->_tbase + $sindex % $this->_tcount;
+ $result[] = (int)($this->_lbase + $sindex / $this->_ncount);
+ $result[] = (int)($this->_vbase + ($sindex % $this->_ncount) / $this->_tcount);
+
+ if ($T != $this->_tbase) {
+ $result[] = $T;
+ }
+
+ return $result;
+ }
+
+ /**
+ * Ccomposes a Hangul syllable
+ * (see http://www.unicode.org/unicode/reports/tr15/#Hangul).
+ *
+ * @param array $input Decomposed UCS4 sequence
+ * @return array UCS4 sequence with syllables composed
+ * @access private
+ */
+ private function _hangulCompose($input)
+ {
+ $inp_len = count($input);
+
+ if (!$inp_len) {
+ return array();
+ }
+
+ $result = array();
+ $last = $input[0];
+ $result[] = $last; // copy first char from input to output
+
+ for ($i = 1; $i < $inp_len; ++$i) {
+ $char = $input[$i];
+
+ // Find out, wether two current characters from L and V
+ $lindex = $last - $this->_lbase;
+
+ if (0 <= $lindex && $lindex < $this->_lcount) {
+ $vindex = $char - $this->_vbase;
+
+ if (0 <= $vindex && $vindex < $this->_vcount) {
+ // create syllable of form LV
+ $last = ($this->_sbase + ($lindex * $this->_vcount + $vindex) * $this->_tcount);
+ $out_off = count($result) - 1;
+ $result[$out_off] = $last; // reset last
+
+ // discard char
+ continue;
+ }
+ }
+
+ // Find out, wether two current characters are LV and T
+ $sindex = $last - $this->_sbase;
+
+ if (0 <= $sindex && $sindex < $this->_scount && ($sindex % $this->_tcount) == 0) {
+ $tindex = $char - $this->_tbase;
+
+ if (0 <= $tindex && $tindex <= $this->_tcount) {
+ // create syllable of form LVT
+ $last += $tindex;
+ $out_off = count($result) - 1;
+ $result[$out_off] = $last; // reset last
+
+ // discard char
+ continue;
+ }
+ }
+
+ // if neither case was true, just add the character
+ $last = $char;
+ $result[] = $char;
+ }
+
+ return $result;
+ }
+
+ /**
+ * Returns the combining class of a certain wide char.
+ *
+ * @param integer $char Wide char to check (32bit integer)
+ * @return integer Combining class if found, else 0
+ * @access private
+ */
+ private function _getCombiningClass($char)
+ {
+ return isset(self::$_np_norm_combcls[$char])? self::$_np_norm_combcls[$char] : 0;
+ }
+
+ /**
+ * Apllies the cannonical ordering of a decomposed UCS4 sequence.
+ *
+ * @param array $input Decomposed UCS4 sequence
+ * @return array Ordered USC4 sequence
+ * @access private
+ */
+ private function _applyCannonicalOrdering($input)
+ {
+ $swap = true;
+ $size = count($input);
+
+ while ($swap) {
+ $swap = false;
+ $last = $this->_getCombiningClass($input[0]);
+
+ for ($i = 0; $i < $size - 1; ++$i) {
+ $next = $this->_getCombiningClass($input[$i + 1]);
+
+ if ($next != 0 && $last > $next) {
+ // Move item leftward until it fits
+ for ($j = $i + 1; $j > 0; --$j) {
+ if ($this->_getCombiningClass($input[$j - 1]) <= $next) {
+ break;
+ }
+
+ $t = $input[$j];
+ $input[$j] = $input[$j - 1];
+ $input[$j - 1] = $t;
+ $swap = 1;
+ }
+
+ // Reentering the loop looking at the old character again
+ $next = $last;
+ }
+
+ $last = $next;
+ }
+ }
+
+ return $input;
+ }
+
+ /**
+ * Do composition of a sequence of starter and non-starter.
+ *
+ * @param array $input UCS4 Decomposed sequence
+ * @return array Ordered USC4 sequence
+ * @access private
+ */
+ private function _combine($input)
+ {
+ $inp_len = count($input);
+
+ // Is it a Hangul syllable?
+ if (1 != $inp_len) {
+ $hangul = $this->_hangulCompose($input);
+
+ // This place is probably wrong
+ if (count($hangul) != $inp_len) {
+ return $hangul;
+ }
+ }
+
+ foreach (self::$_np_replacemaps as $np_src => $np_target) {
+ if ($np_target[0] != $input[0]) {
+ continue;
+ }
+
+ if (count($np_target) != $inp_len) {
+ continue;
+ }
+
+ $hit = false;
+
+ foreach ($input as $k2 => $v2) {
+ if ($v2 == $np_target[$k2]) {
+ $hit = true;
+ } else {
+ $hit = false;
+ break;
+ }
+ }
+
+ if ($hit) {
+ return $np_src;
+ }
+ }
+
+ return false;
+ }
+
+ /**
+ * This converts an UTF-8 encoded string to its UCS-4 (array) representation
+ * By talking about UCS-4 we mean arrays of 32bit integers representing
+ * each of the "chars". This is due to PHP not being able to handle strings with
+ * bit depth different from 8. This applies to the reverse method _ucs4_to_utf8(), too.
+ * The following UTF-8 encodings are supported:
+ *
+ * bytes bits representation
+ * 1 7 0xxxxxxx
+ * 2 11 110xxxxx 10xxxxxx
+ * 3 16 1110xxxx 10xxxxxx 10xxxxxx
+ * 4 21 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
+ * 5 26 111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
+ * 6 31 1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
+ *
+ * Each x represents a bit that can be used to store character data.
+ *
+ * @access private
+ */
+ private function _utf8_to_ucs4($input)
+ {
+ $output = array();
+ $out_len = 0;
+ $inp_len = self::_byteLength($input, '8bit');
+ $mode = 'next';
+ $test = 'none';
+ for ($k = 0; $k < $inp_len; ++$k) {
+ $v = ord($input{$k}); // Extract byte from input string
+
+ if ($v < 128) { // We found an ASCII char - put into stirng as is
+ $output[$out_len] = $v;
+ ++$out_len;
+ if ('add' == $mode) {
+ throw new Exception('Conversion from UTF-8 to UCS-4 failed: malformed input at byte '.$k);
+ return false;
+ }
+ continue;
+ }
+ if ('next' == $mode) { // Try to find the next start byte; determine the width of the Unicode char
+ $start_byte = $v;
+ $mode = 'add';
+ $test = 'range';
+ if ($v >> 5 == 6) { // &110xxxxx 10xxxxx
+ $next_byte = 0; // Tells, how many times subsequent bitmasks must rotate 6bits to the left
+ $v = ($v - 192) << 6;
+ } elseif ($v >> 4 == 14) { // &1110xxxx 10xxxxxx 10xxxxxx
+ $next_byte = 1;
+ $v = ($v - 224) << 12;
+ } elseif ($v >> 3 == 30) { // &11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
+ $next_byte = 2;
+ $v = ($v - 240) << 18;
+ } elseif ($v >> 2 == 62) { // &111110xx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
+ $next_byte = 3;
+ $v = ($v - 248) << 24;
+ } elseif ($v >> 1 == 126) { // &1111110x 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx 10xxxxxx
+ $next_byte = 4;
+ $v = ($v - 252) << 30;
+ } else {
+ throw new Exception('This might be UTF-8, but I don\'t understand it at byte '.$k);
+ return false;
+ }
+ if ('add' == $mode) {
+ $output[$out_len] = (int) $v;
+ ++$out_len;
+ continue;
+ }
+ }
+ if ('add' == $mode) {
+ if (!$this->_allow_overlong && $test == 'range') {
+ $test = 'none';
+ if (($v < 0xA0 && $start_byte == 0xE0) || ($v < 0x90 && $start_byte == 0xF0) || ($v > 0x8F && $start_byte == 0xF4)) {
+ throw new Exception('Bogus UTF-8 character detected (out of legal range) at byte '.$k);
+ return false;
+ }
+ }
+ if ($v >> 6 == 2) { // Bit mask must be 10xxxxxx
+ $v = ($v - 128) << ($next_byte * 6);
+ $output[($out_len - 1)] += $v;
+ --$next_byte;
+ } else {
+ throw new Exception('Conversion from UTF-8 to UCS-4 failed: malformed input at byte '.$k);
+ return false;
+ }
+ if ($next_byte < 0) {
+ $mode = 'next';
+ }
+ }
+ } // for
+ return $output;
+ }
+
+ /**
+ * Convert UCS-4 array into UTF-8 string.
+ *
+ * @throws Exception
+ * @access private
+ */
+ private function _ucs4_to_utf8($input)
+ {
+ $output = '';
+
+ foreach ($input as $v) {
+ // $v = ord($v);
+
+ if ($v < 128) {
+ // 7bit are transferred literally
+ $output .= chr($v);
+ } else if ($v < 1 << 11) {
+ // 2 bytes
+ $output .= chr(192 + ($v >> 6))
+ . chr(128 + ($v & 63));
+ } else if ($v < 1 << 16) {
+ // 3 bytes
+ $output .= chr(224 + ($v >> 12))
+ . chr(128 + (($v >> 6) & 63))
+ . chr(128 + ($v & 63));
+ } else if ($v < 1 << 21) {
+ // 4 bytes
+ $output .= chr(240 + ($v >> 18))
+ . chr(128 + (($v >> 12) & 63))
+ . chr(128 + (($v >> 6) & 63))
+ . chr(128 + ($v & 63));
+ } else if ($v < 1 << 26) {
+ // 5 bytes
+ $output .= chr(248 + ($v >> 24))
+ . chr(128 + (($v >> 18) & 63))
+ . chr(128 + (($v >> 12) & 63))
+ . chr(128 + (($v >> 6) & 63))
+ . chr(128 + ($v & 63));
+ } else if ($v < 1 << 31) {
+ // 6 bytes
+ $output .= chr(252 + ($v >> 30))
+ . chr(128 + (($v >> 24) & 63))
+ . chr(128 + (($v >> 18) & 63))
+ . chr(128 + (($v >> 12) & 63))
+ . chr(128 + (($v >> 6) & 63))
+ . chr(128 + ($v & 63));
+ } else {
+ throw new Exception('Conversion from UCS-4 to UTF-8 failed: malformed input at byte ' . $k);
+ }
+ }
+
+ return $output;
+ }
+
+ /**
+ * Convert UCS-4 array into UCS-4 string
+ *
+ * @throws Exception
+ * @access private
+ */
+ private function _ucs4_to_ucs4_string($input)
+ {
+ $output = '';
+ // Take array values and split output to 4 bytes per value
+ // The bit mask is 255, which reads &11111111
+ foreach ($input as $v) {
+ $output .= ($v & (255 << 24) >> 24) . ($v & (255 << 16) >> 16) . ($v & (255 << 8) >> 8) . ($v & 255);
+ }
+ return $output;
+ }
+
+ /**
+ * Convert UCS-4 strin into UCS-4 garray
+ *
+ * @throws Exception
+ * @access private
+ */
+ private function _ucs4_string_to_ucs4($input)
+ {
+ $output = array();
+
+ $inp_len = self::_byteLength($input);
+ // Input length must be dividable by 4
+ if ($inp_len % 4) {
+ throw new Exception('Input UCS4 string is broken');
+ return false;
+ }
+
+ // Empty input - return empty output
+ if (!$inp_len) return $output;
+
+ for ($i = 0, $out_len = -1; $i < $inp_len; ++$i) {
+ // Increment output position every 4 input bytes
+ if (!$i % 4) {
+ $out_len++;
+ $output[$out_len] = 0;
+ }
+ $output[$out_len] += ord($input{$i}) << (8 * (3 - ($i % 4) ) );
+ }
+ return $output;
+ }
+
+ /**
+ * Echo hex representation of UCS4 sequence.
+ *
+ * @param array $input UCS4 sequence
+ * @param boolean $include_bit Include bitmask in output
+ * @return void
+ * @static
+ * @access private
+ */
+ private static function _showHex($input, $include_bit = false)
+ {
+ foreach ($input as $k => $v) {
+ echo '[', $k, '] => ', sprintf('%X', $v);
+
+ if ($include_bit) {
+ echo ' (', Net_IDNA::_showBitmask($v), ')';
+ }
+
+ echo "\n";
+ }
+ }
+
+ /**
+ * Gives you a bit representation of given Byte (8 bits), Word (16 bits) or DWord (32 bits)
+ * Output width is automagically determined
+ *
+ * @static
+ * @access private
+ */
+ private static function _showBitmask($octet)
+ {
+ if ($octet >= (1 << 16)) {
+ $w = 31;
+ } else if ($octet >= (1 << 8)) {
+ $w = 15;
+ } else {
+ $w = 7;
+ }
+
+ $return = '';
+
+ for ($i = $w; $i > -1; $i--) {
+ $return .= ($octet & (1 << $i))? 1 : '0';
+ }
+
+ return $return;
+ }
+
+ /**
+ * Gets the length of a string in bytes even if mbstring function
+ * overloading is turned on
+ *
+ * @param string $string the string for which to get the length.
+ *
+ * @return integer the length of the string in bytes.
+ *
+ * @see Net_IDNA_php5::$_mb_string_overload
+ */
+ private static function _byteLength($string)
+ {
+ if (self::$_mb_string_overload) {
+ return mb_strlen($string, '8bit');
+ }
+ return strlen((binary)$string);
+ }
+
+ // }}}}
+}
+
+?>
diff --git a/extlib/OAuth.php b/extlib/OAuth.php
index 648627b57..04984d5fa 100644
--- a/extlib/OAuth.php
+++ b/extlib/OAuth.php
@@ -54,6 +54,24 @@ class OAuthSignatureMethod {/*{{{*/
public function check_signature(&$request, $consumer, $token, $signature) {
$built = $this->build_signature($request, $consumer, $token);
return $built == $signature;
+
+ // Check for zero length, although unlikely here
+ if (strlen($built) == 0 || strlen($signature) == 0) {
+ return false;
+ }
+
+ if (strlen($built) != strlen($signature)) {
+ return false;
+ }
+
+ $result = 0;
+
+ // Avoid a timing leak with a (hopefully) time insensitive compare
+ for ($i = 0; $i < strlen($signature); $i++) {
+ $result |= ord($built{$i}) ^ ord($signature{$i});
+ }
+
+ return $result == 0;
}
}/*}}}*/
diff --git a/extlib/XMPPHP/XMPP.php b/extlib/XMPPHP/XMPP.php
index 429f45e56..c0f896339 100644
--- a/extlib/XMPPHP/XMPP.php
+++ b/extlib/XMPPHP/XMPP.php
@@ -171,7 +171,7 @@ class XMPPHP_XMPP extends XMPPHP_XMLStream {
$body = htmlspecialchars($body);
$subject = htmlspecialchars($subject);
- $out = "<message from='{$this->fulljid}' to='$to' type='$type'>";
+ $out = "<message from=\"{$this->fulljid}\" to=\"$to\" type='$type'>";
if($subject) $out .= "<subject>$subject</subject>";
$out .= "<body>$body</body>";
if($payload) $out .= $payload;
@@ -194,7 +194,7 @@ class XMPPHP_XMPP extends XMPPHP_XMLStream {
if($show == 'unavailable') $type = 'unavailable';
$out = "<presence";
- if($to) $out .= " to='$to'";
+ if($to) $out .= " to=\"$to\"";
if($type) $out .= " type='$type'";
if($show == 'available' and !$status) {
$out .= "/>";
diff --git a/extlib/libomb/base_url_xrds_mapper.php b/extlib/libomb/base_url_xrds_mapper.php
index 645459583..d45d6d69f 100755
--- a/extlib/libomb/base_url_xrds_mapper.php
+++ b/extlib/libomb/base_url_xrds_mapper.php
@@ -1,14 +1,6 @@
<?php
-
-require_once 'xrds_mapper.php';
-require_once 'constants.php';
-
/**
- * Map XRDS actions to URLs using base URLs.
- *
- * This interface specifies classes which write the XRDS file announcing
- * the OMB server. An instance of an implementing class should be passed to
- * OMB_Service_Provider->writeXRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -25,27 +17,56 @@ require_once 'constants.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
-class OMB_Base_URL_XRDS_Mapper implements OMB_XRDS_Mapper {
+require_once 'xrds_mapper.php';
+require_once 'constants.php';
- protected $urls;
+/**
+ * Map XRDS actions to URLs using base URLs
+ *
+ * This class realizes a simple mapping of action URIs to handler URLs. The
+ * target URLs are constructed using a base URL.
+ */
+class OMB_Base_URL_XRDS_Mapper implements OMB_XRDS_Mapper
+{
+ protected $urls;
- public function __construct($oauth_base, $omb_base) {
- $this->urls = array(
- OAUTH_ENDPOINT_REQUEST => $oauth_base . 'requesttoken',
- OAUTH_ENDPOINT_AUTHORIZE => $oauth_base . 'userauthorization',
- OAUTH_ENDPOINT_ACCESS => $oauth_base . 'accesstoken',
- OMB_ENDPOINT_POSTNOTICE => $omb_base . 'postnotice',
- OMB_ENDPOINT_UPDATEPROFILE => $omb_base . 'updateprofile');
- }
+ /**
+ * Constructor
+ *
+ * Initialize the XRDS mapper with base URLs for OAuth and OMB endpoints.
+ *
+ * @param string $oauth_base The base URL for OAuth endpoints
+ * @param string $omb_base The base URL for OMB endpoints
+ */
+ public function __construct($oauth_base, $omb_base)
+ {
+ $this->urls = array(
+ OAUTH_ENDPOINT_REQUEST => $oauth_base . 'requesttoken',
+ OAUTH_ENDPOINT_AUTHORIZE => $oauth_base . 'userauthorization',
+ OAUTH_ENDPOINT_ACCESS => $oauth_base . 'accesstoken',
+ OMB_ENDPOINT_POSTNOTICE => $omb_base . 'postnotice',
+ OMB_ENDPOINT_UPDATEPROFILE => $omb_base . 'updateprofile');
+ }
- public function getURL($action) {
- return $this->urls[$action];
- }
+ /**
+ * Fetch an URL for a specified action
+ *
+ * Returns the action URL for an action specified by the endpoint URI.
+ *
+ * @param string $action The endpoint URI
+ *
+ * @return string The action URL
+ */
+ public function getURL($action)
+ {
+ return $this->urls[$action];
+ }
}
?>
diff --git a/extlib/libomb/constants.php b/extlib/libomb/constants.php
index a097443ac..2f8c0e514 100644
--- a/extlib/libomb/constants.php
+++ b/extlib/libomb/constants.php
@@ -20,15 +20,16 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
/**
* The OMB constants.
- **/
+ */
define('OMB_VERSION_01', 'http://openmicroblogging.org/protocol/0.1');
@@ -40,7 +41,7 @@ define('OMB_ENDPOINT_POSTNOTICE', OMB_VERSION . '/postNotice');
/**
* The OAuth constants.
- **/
+ */
define('OAUTH_NAMESPACE', 'http://oauth.net/core/1.0/');
diff --git a/extlib/libomb/datastore.php b/extlib/libomb/datastore.php
index ab52de547..d67aafcc5 100755
--- a/extlib/libomb/datastore.php
+++ b/extlib/libomb/datastore.php
@@ -1,4 +1,28 @@
<?php
+/**
+ * This file is part of libomb
+ *
+ * PHP version 5
+ *
+ * LICENSE: 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 OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
require_once 'OAuth.php';
@@ -27,174 +51,162 @@ require_once 'OAuth.php';
* Most of the parameters passed to these methods are unescaped and unverified
* user input. Therefore they should be handled with extra care to avoid
* security problems like SQL injections.
- *
- * PHP version 5
- *
- * LICENSE: 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Datastore extends OAuthDataStore {
+ */
+class OMB_Datastore extends OAuthDataStore
+{
- /*********
- * OAUTH *
- *********/
+ /*********
+ * OAUTH *
+ *********/
- /**
- * Revoke specified OAuth token
- *
- * Revokes the authorization token specified by $token_key.
- * Throws exceptions in case of error.
- *
- * @param string $token_key The key of the token to be revoked
- *
- * @access public
- **/
- public function revoke_token($token_key) {
- throw new Exception();
- }
+ /**
+ * Revoke specified OAuth token
+ *
+ * Revokes the authorization token specified by $token_key.
+ * Throws exceptions in case of error.
+ *
+ * @param string $token_key The key of the token to be revoked
+ *
+ * @access public
+ */
+ public function revoke_token($token_key)
+ {
+ throw new Exception();
+ }
- /**
- * Authorize specified OAuth token
- *
- * Authorizes the authorization token specified by $token_key.
- * Throws exceptions in case of error.
- *
- * @param string $token_key The key of the token to be authorized
- *
- * @access public
- **/
- public function authorize_token($token_key) {
- throw new Exception();
- }
+ /**
+ * Authorize specified OAuth token
+ *
+ * Authorizes the authorization token specified by $token_key.
+ * Throws exceptions in case of error.
+ *
+ * @param string $token_key The key of the token to be authorized
+ *
+ * @access public
+ */
+ public function authorize_token($token_key)
+ {
+ throw new Exception();
+ }
- /*********
- * OMB *
- *********/
+ /*********
+ * OMB *
+ *********/
- /**
- * Get profile by identifying URI
- *
- * Returns an OMB_Profile object representing the OMB profile identified by
- * $identifier_uri.
- * Returns null if there is no such OMB profile.
- * Throws exceptions in case of other error.
- *
- * @param string $identifier_uri The OMB identifier URI specifying the
- * requested profile
- *
- * @access public
- *
- * @return OMB_Profile The corresponding profile
- **/
- public function getProfile($identifier_uri) {
- throw new Exception();
- }
+ /**
+ * Get profile by identifying URI
+ *
+ * Returns an OMB_Profile object representing the OMB profile identified by
+ * $identifier_uri.
+ * Returns null if there is no such OMB profile.
+ * Throws exceptions in case of other error.
+ *
+ * @param string $identifier_uri The OMB identifier URI specifying the
+ * requested profile
+ *
+ * @access public
+ *
+ * @return OMB_Profile The corresponding profile
+ */
+ public function getProfile($identifier_uri)
+ {
+ throw new Exception();
+ }
- /**
- * Save passed profile
- *
- * Stores the OMB profile $profile. Overwrites an existing entry.
- * Throws exceptions in case of error.
- *
- * @param OMB_Profile $profile The OMB profile which should be saved
- *
- * @access public
- **/
- public function saveProfile($profile) {
- throw new Exception();
- }
+ /**
+ * Save passed profile
+ *
+ * Stores the OMB profile $profile. Overwrites an existing entry.
+ * Throws exceptions in case of error.
+ *
+ * @param OMB_Profile $profile The OMB profile which should be saved
+ *
+ * @access public
+ */
+ public function saveProfile($profile)
+ {
+ throw new Exception();
+ }
- /**
- * Save passed notice
- *
- * Stores the OMB notice $notice. The datastore may change the passed notice.
- * This might by neccessary for URIs depending on a database key. Note that
- * it is the user’s duty to present a mechanism for his OMB_Datastore to
- * appropriately change his OMB_Notice. TODO: Ugly.
- * Throws exceptions in case of error.
- *
- * @param OMB_Notice $notice The OMB notice which should be saved
- *
- * @access public
- **/
- public function saveNotice(&$notice) {
- throw new Exception();
- }
+ /**
+ * Save passed notice
+ *
+ * Stores the OMB notice $notice. The datastore may change the passed
+ * notice. This might by necessary for URIs depending on a database key.
+ * Note that it is the user’s duty to present a mechanism for his
+ * OMB_Datastore to appropriately change his OMB_Notice.
+ * Throws exceptions in case of error.
+ *
+ * @param OMB_Notice &$notice The OMB notice which should be saved
+ *
+ * @access public
+ */
+ public function saveNotice(&$notice)
+ {
+ throw new Exception();
+ }
- /**
- * Get subscriptions of a given profile
- *
- * Returns an array containing subscription informations for the specified
- * profile. Every array entry should in turn be an array with keys
- * 'uri´: The identifier URI of the subscriber
- * 'token´: The subscribe token
- * 'secret´: The secret token
- * Throws exceptions in case of error.
- *
- * @param string $subscribed_user_uri The OMB identifier URI specifying the
- * subscribed profile
- *
- * @access public
- *
- * @return mixed An array containing the subscriptions or 0 if no
- * subscription has been found.
- **/
- public function getSubscriptions($subscribed_user_uri) {
- throw new Exception();
- }
+ /**
+ * Get subscriptions of a given profile
+ *
+ * Returns an array containing subscription informations for the specified
+ * profile. Every array entry should in turn be an array with keys
+ * 'uri´: The identifier URI of the subscriber
+ * 'token´: The subscribe token
+ * 'secret´: The secret token
+ * Throws exceptions in case of error.
+ *
+ * @param string $subscribed_user_uri The OMB identifier URI specifying the
+ * subscribed profile
+ *
+ * @access public
+ *
+ * @return mixed An array containing the subscriptions or 0 if no
+ * subscription has been found.
+ */
+ public function getSubscriptions($subscribed_user_uri)
+ {
+ throw new Exception();
+ }
- /**
- * Delete a subscription
- *
- * Deletes the subscription from $subscriber_uri to $subscribed_user_uri.
- * Throws exceptions in case of error.
- *
- * @param string $subscriber_uri The OMB identifier URI specifying the
- * subscribing profile
- *
- * @param string $subscribed_user_uri The OMB identifier URI specifying the
- * subscribed profile
- *
- * @access public
- **/
- public function deleteSubscription($subscriber_uri, $subscribed_user_uri) {
- throw new Exception();
- }
+ /**
+ * Delete a subscription
+ *
+ * Deletes the subscription from $subscriber_uri to $subscribed_user_uri.
+ * Throws exceptions in case of error.
+ *
+ * @param string $subscriber_uri The OMB identifier URI specifying the
+ * subscribing profile
+ *
+ * @param string $subscribed_user_uri The OMB identifier URI specifying the
+ * subscribed profile
+ *
+ * @access public
+ */
+ public function deleteSubscription($subscriber_uri, $subscribed_user_uri)
+ {
+ throw new Exception();
+ }
- /**
- * Save a subscription
- *
- * Saves the subscription from $subscriber_uri to $subscribed_user_uri.
- * Throws exceptions in case of error.
- *
- * @param string $subscriber_uri The OMB identifier URI specifying
- * the subscribing profile
- *
- * @param string $subscribed_user_uri The OMB identifier URI specifying
- * the subscribed profile
- * @param OAuthToken $token The access token
- *
- * @access public
- **/
- public function saveSubscription($subscriber_uri, $subscribed_user_uri,
- $token) {
- throw new Exception();
- }
+ /**
+ * Save a subscription
+ *
+ * Saves the subscription from $subscriber_uri to $subscribed_user_uri.
+ * Throws exceptions in case of error.
+ *
+ * @param string $subscriber_uri The OMB identifier URI specifying
+ * the subscribing profile
+ *
+ * @param string $subscribed_user_uri The OMB identifier URI specifying
+ * the subscribed profile
+ * @param OAuthToken $token The access token
+ *
+ * @access public
+ */
+ public function saveSubscription($subscriber_uri, $subscribed_user_uri,
+ $token)
+ {
+ throw new Exception();
+ }
}
?>
diff --git a/extlib/libomb/helper.php b/extlib/libomb/helper.php
index a1f21f268..08e6e7ab4 100644
--- a/extlib/libomb/helper.php
+++ b/extlib/libomb/helper.php
@@ -1,11 +1,6 @@
<?php
-
-require_once 'Validate.php';
-
/**
- * Helper functions for libomb
- *
- * This file contains helper functions for libomb.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -22,78 +17,88 @@ require_once 'Validate.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
-class OMB_Helper {
+require_once 'Validate.php';
- /**
- * Non-scalar constants
- *
- * The set of OMB and OAuth Services an OMB Server has to implement.
- */
+/**
+ * Helper functions for libomb
+ *
+ * This class contains helper functions for libomb.
+ */
+class OMB_Helper
+{
- public static $OMB_SERVICES =
- array(OMB_ENDPOINT_UPDATEPROFILE, OMB_ENDPOINT_POSTNOTICE);
- public static $OAUTH_SERVICES =
- array(OAUTH_ENDPOINT_REQUEST, OAUTH_ENDPOINT_AUTHORIZE, OAUTH_ENDPOINT_ACCESS);
+ /**
+ * Non-scalar constants
+ *
+ * The set of OMB and OAuth Services an OMB Server has to implement.
+ */
- /**
- * Validate URL
- *
- * Basic URL validation. Currently http, https, ftp and gopher are supported
- * schemes.
- *
- * @param string $url The URL which is to be validated.
- *
- * @return bool Whether URL is valid.
- *
- * @access public
- */
- public static function validateURL($url) {
- return Validate::uri($url, array('allowed_schemes' => array('http', 'https',
- 'gopher', 'ftp')));
- }
+ public static $OMB_SERVICES = array(OMB_ENDPOINT_UPDATEPROFILE,
+ OMB_ENDPOINT_POSTNOTICE);
+ public static $OAUTH_SERVICES = array(OAUTH_ENDPOINT_REQUEST,
+ OAUTH_ENDPOINT_AUTHORIZE,
+ OAUTH_ENDPOINT_ACCESS);
- /**
- * Validate Media type
- *
- * Basic Media type validation. Checks for valid maintype and correct format.
- *
- * @param string $mediatype The Media type which is to be validated.
- *
- * @return bool Whether media type is valid.
- *
- * @access public
- */
- public static function validateMediaType($mediatype) {
- if (0 === preg_match('/^(\w+)\/([\w\d-+.]+)$/', $mediatype, $subtypes)) {
- return false;
+ /**
+ * Validate URL
+ *
+ * Basic URL validation. Currently http, https, ftp and gopher are supported
+ * schemes.
+ *
+ * @param string $url The URL which is to be validated.
+ *
+ * @return bool Whether URL is valid.
+ *
+ * @access public
+ */
+ public static function validateURL($url)
+ {
+ return Validate::uri($url, array('allowed_schemes' => array('http',
+ 'https', 'gopher', 'ftp')));
}
- if (!in_array(strtolower($subtypes[1]), array('application', 'audio', 'image',
- 'message', 'model', 'multipart', 'text', 'video'))) {
- return false;
+
+ /**
+ * Validate Media type
+ *
+ * Basic Media type validation. Checks for valid maintype and correct
+ * format.
+ *
+ * @param string $mediatype The Media type which is to be validated.
+ *
+ * @return bool Whether media type is valid.
+ *
+ * @access public
+ */
+ public static function validateMediaType($mediatype)
+ {
+ return preg_match('/^(\w+)\/([\w\d-+.]+)$/', $mediatype, $subtypes) > 0
+ &&
+ in_array(strtolower($subtypes[1]), array('application', 'audio',
+ 'image', 'message', 'model', 'multipart', 'text', 'video'));
}
- return true;
- }
- /**
- * Remove escaping from request parameters
- *
- * Neutralise the evil effects of magic_quotes_gpc in the current request.
- * This is used before handing a request off to OAuthRequest::from_request.
- * Many thanks to Ciaran Gultnieks for this fix.
- *
- * @access public
- */
- public static function removeMagicQuotesFromRequest() {
- if(get_magic_quotes_gpc() == 1) {
- $_POST = array_map('stripslashes', $_POST);
- $_GET = array_map('stripslashes', $_GET);
+ /**
+ * Remove escaping from request parameters
+ *
+ * Neutralise the evil effects of magic_quotes_gpc in the current request.
+ * This is used before handing a request off to OAuthRequest::from_request.
+ * Many thanks to Ciaran Gultnieks for this fix.
+ *
+ * @access public
+ */
+ public static function removeMagicQuotesFromRequest()
+ {
+ if (get_magic_quotes_gpc() === 1) {
+ $_POST = array_map('stripslashes', $_POST);
+ $_GET = array_map('stripslashes', $_GET);
+ }
}
- }
}
?>
diff --git a/extlib/libomb/invalidparameterexception.php b/extlib/libomb/invalidparameterexception.php
index 163e1dd4c..d95c7022c 100755
--- a/extlib/libomb/invalidparameterexception.php
+++ b/extlib/libomb/invalidparameterexception.php
@@ -1,8 +1,6 @@
<?php
/**
- * Exception stating that a passed parameter is invalid
- *
- * This exception is raised when a parameter does not obey the OMB standard.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -19,14 +17,36 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-class OMB_InvalidParameterException extends Exception {
- public function __construct($value, $type, $parameter) {
- parent::__construct("Invalid value $value for parameter $parameter in $type");
- }
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+/**
+ * Exception stating that a passed parameter is invalid
+ *
+ * This exception is raised when a parameter does not obey the OMB standard.
+ */
+class OMB_InvalidParameterException extends Exception
+{
+ /**
+ * Constructor
+ *
+ * Creates a new exception based on a parameter name, value, and object
+ * type.
+ *
+ * @param string $value The wrong value passed
+ * @param string $type The object type the parameter belongs to;
+ * Currently OMB uses profiles and notices
+ * @param string $parameter The name of the parameter the wrong value has
+ * been passed for
+ */
+ public function __construct($value, $type, $parameter)
+ {
+ parent::__construct("Invalid value ‘${value}’ for parameter " .
+ "‘${parameter}’ in $type");
+ }
}
?>
diff --git a/extlib/libomb/invalidyadisexception.php b/extlib/libomb/invalidyadisexception.php
index 797b7b95b..dc61a13ad 100755
--- a/extlib/libomb/invalidyadisexception.php
+++ b/extlib/libomb/invalidyadisexception.php
@@ -1,9 +1,6 @@
<?php
/**
- * Exception stating that a requested url does not resolve to a valid yadis
- *
- * This exception is raised when OMB_Service is not able to discover a valid
- * yadis location with XRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -20,12 +17,21 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-class OMB_InvalidYadisException extends Exception {
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+/**
+ * Exception stating that a requested url does not resolve to a valid yadis
+ *
+ * This exception is raised when OMB_Service is not able to discover a valid
+ * yadis location with XRDS.
+ */
+class OMB_InvalidYadisException extends Exception
+{
}
?>
diff --git a/extlib/libomb/notice.php b/extlib/libomb/notice.php
index 9ac36640a..4963597b2 100755
--- a/extlib/libomb/notice.php
+++ b/extlib/libomb/notice.php
@@ -1,15 +1,6 @@
<?php
-require_once 'invalidparameterexception.php';
-require_once 'Validate.php';
-require_once 'helper.php';
-
/**
- * OMB Notice representation
- *
- * This class represents an OMB notice.
- *
- * Do not call the setters with null values. Instead, if you want to delete a
- * field, pass an empty string. The getters will return null for empty fields.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -26,247 +17,278 @@ require_once 'helper.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Notice {
- protected $author;
- protected $uri;
- protected $content;
- protected $url;
- protected $license_url; /* url is an own addition for clarification. */
- protected $seealso_url; /* url is an own addition for clarification. */
- protected $seealso_disposition;
- protected $seealso_mediatype;
- protected $seealso_license_url; /* url is an addition for clarification. */
-
- /* The notice as OMB param array. Cached and rebuild on usage.
- false while outdated. */
- protected $param_array;
-
- /**
- * Constructor for OMB_Notice
- *
- * Initializes the OMB_Notice object with author, uri and content.
- * These parameters are mandatory for postNotice.
- *
- * @param object $author An OMB_Profile object representing the author of the
- * notice.
- * @param string $uri The notice URI as defined by the OMB. A unique and
- * unchanging identifier for a notice.
- * @param string $content The content of the notice. 140 chars recommended,
- * but there is no limit.
- *
- * @access public
- */
- public function __construct($author, $uri, $content) {
- $this->content = $content;
- if (is_null($author)) {
- throw new OMB_InvalidParameterException('', 'notice', 'omb_listenee');
- }
- $this->author = $author;
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
- if (!Validate::uri($uri)) {
- throw new OMB_InvalidParameterException($uri, 'notice', 'omb_notice');
- }
- $this->uri = $uri;
-
- $this->param_array = false;
- }
-
- /**
- * Returns the notice as array
- *
- * The method returns an array which contains the whole notice as array. The
- * array is cached and only rebuilt on changes of the notice.
- * Empty optional values are not passed.
- *
- * @access public
- * @returns array The notice as parameter array
- */
- public function asParameters() {
- if ($this->param_array !== false) {
- return $this->param_array;
+require_once 'invalidparameterexception.php';
+require_once 'Validate.php';
+require_once 'helper.php';
+
+/**
+ * OMB Notice representation
+ *
+ * This class represents an OMB notice.
+ *
+ * Do not call the setters with null values. Instead, if you want to delete a
+ * field, pass an empty string. The getters will return null for empty fields.
+ */
+class OMB_Notice
+{
+ protected $author;
+ protected $uri;
+ protected $content;
+ protected $url;
+ protected $license_url; /* url is an own addition for clarification. */
+ protected $seealso_url; /* url is an own addition for clarification. */
+ protected $seealso_disposition;
+ protected $seealso_mediatype;
+ protected $seealso_license_url; /* url is an addition for clarification. */
+
+ /* The notice as OMB param array. Cached and rebuild on usage.
+ false while outdated. */
+ protected $param_array;
+
+ /**
+ * Constructor for OMB_Notice
+ *
+ * Initializes the OMB_Notice object with author, uri and content.
+ * These parameters are mandatory for postNotice.
+ *
+ * @param object $author An OMB_Profile object representing the author of
+ * the notice.
+ * @param string $uri The notice URI as defined by the OMB. A unique and
+ * never changing identifier for a notice.
+ * @param string $content The content of the notice. 140 chars recommended,
+ * but there is no limit.
+ *
+ * @access public
+ */
+ public function __construct($author, $uri, $content)
+ {
+ $this->content = $content;
+ if (is_null($author)) {
+ throw new OMB_InvalidParameterException('', 'notice', 'omb_listenee');
+ }
+ $this->author = $author;
+
+ if (!Validate::uri($uri)) {
+ throw new OMB_InvalidParameterException($uri, 'notice', 'omb_notice');
+ }
+ $this->uri = $uri;
+
+ $this->param_array = false;
}
- $this->param_array = array(
- 'omb_notice' => $this->uri,
- 'omb_notice_content' => $this->content);
+ /**
+ * Return the notice as array
+ *
+ * Returns an array which contains the whole notice as array. The array is
+ * cached and only rebuilt on changes of the notice.
+ * Empty optional values are not passed.
+ *
+ * @access public
+ * @return array The notice as parameter array
+ */
+ public function asParameters()
+ {
+ if ($this->param_array !== false) {
+ return $this->param_array;
+ }
+
+ $this->param_array = array(
+ 'omb_notice' => $this->uri,
+ 'omb_notice_content' => $this->content);
+
+ if (!is_null($this->url))
+ $this->param_array['omb_notice_url'] = $this->url;
+
+ if (!is_null($this->license_url))
+ $this->param_array['omb_notice_license'] = $this->license_url;
+
+ if (!is_null($this->seealso_url)) {
+ $this->param_array['omb_seealso'] = $this->seealso_url;
+
+ /* This is actually a free interpretation of the OMB standard. We
+ assume that additional seealso parameters are not of any use if
+ seealso itself is not set. */
+ if (!is_null($this->seealso_disposition))
+ $this->param_array['omb_seealso_disposition'] =
+ $this->seealso_disposition;
+
+ if (!is_null($this->seealso_mediatype))
+ $this->param_array['omb_seealso_mediatype'] =
+ $this->seealso_mediatype;
- if (!is_null($this->url))
- $this->param_array['omb_notice_url'] = $this->url;
+ if (!is_null($this->seealso_license_url))
+ $this->param_array['omb_seealso_license'] =
+ $this->seealso_license_url;
+ }
+ return $this->param_array;
+ }
- if (!is_null($this->license_url))
- $this->param_array['omb_notice_license'] = $this->license_url;
+ /**
+ * Build an OMB_Notice object from array
+ *
+ * Builds an OMB_Notice object from the passed parameters array. The array
+ * MUST provide a notice URI and content. The array fields HAVE TO be named
+ * according to the OMB standard, i. e. omb_notice_* and omb_seealso_*.
+ * Values are handled as not passed if the corresponding array fields are
+ * not set or the empty string.
+ *
+ * @param object $author An OMB_Profile object representing the author
+ * of the notice.
+ * @param string $parameters An array containing the notice parameters.
+ *
+ * @access public
+ *
+ * @returns OMB_Notice The built OMB_Notice.
+ */
+ public static function fromParameters($author, $parameters)
+ {
+ $notice = new OMB_Notice($author, $parameters['omb_notice'],
+ $parameters['omb_notice_content']);
+
+ if (isset($parameters['omb_notice_url'])) {
+ $notice->setURL($parameters['omb_notice_url']);
+ }
+
+ if (isset($parameters['omb_notice_license'])) {
+ $notice->setLicenseURL($parameters['omb_notice_license']);
+ }
+
+ if (isset($parameters['omb_seealso'])) {
+ $notice->setSeealsoURL($parameters['omb_seealso']);
+ }
+
+ if (isset($parameters['omb_seealso_disposition'])) {
+ $notice->setSeealsoDisposition($parameters['omb_seealso_disposition']);
+ }
+
+ if (isset($parameters['omb_seealso_mediatype'])) {
+ $notice->setSeealsoMediatype($parameters['omb_seealso_mediatype']);
+ }
+
+ if (isset($parameters['omb_seealso_license'])) {
+ $notice->setSeealsoLicenseURL($parameters['omb_seealso_license']);
+ }
+ return $notice;
+ }
- if (!is_null($this->seealso_url)) {
- $this->param_array['omb_seealso'] = $this->seealso_url;
+ public function getAuthor()
+ {
+ return $this->author;
+ }
- /* This is actually a free interpretation of the OMB standard. We assume
- that additional seealso parameters are not of any use if seealso itself
- is not set. */
- if (!is_null($this->seealso_disposition))
- $this->param_array['omb_seealso_disposition'] =
- $this->seealso_disposition;
+ public function getIdentifierURI()
+ {
+ return $this->uri;
+ }
- if (!is_null($this->seealso_mediatype))
- $this->param_array['omb_seealso_mediatype'] = $this->seealso_mediatype;
+ public function getContent()
+ {
+ return $this->content;
+ }
- if (!is_null($this->seealso_license_url))
- $this->param_array['omb_seealso_license'] = $this->seealso_license_url;
+ public function getURL()
+ {
+ return $this->url;
}
- return $this->param_array;
- }
-
- /**
- * Builds an OMB_Notice object from array
- *
- * The method builds an OMB_Notice object from the passed parameters array.
- * The array MUST provide a notice URI and content. The array fields HAVE TO
- * be named according to the OMB standard, i. e. omb_notice_* and
- * omb_seealso_*. Values are handled as not passed if the corresponding array
- * fields are not set or the empty string.
- *
- * @param object $author An OMB_Profile object representing the author of
- * the notice.
- * @param string $parameters An array containing the notice parameters.
- *
- * @access public
- *
- * @returns OMB_Notice The built OMB_Notice.
- */
- public static function fromParameters($author, $parameters) {
- $notice = new OMB_Notice($author, $parameters['omb_notice'],
- $parameters['omb_notice_content']);
-
- if (isset($parameters['omb_notice_url'])) {
- $notice->setURL($parameters['omb_notice_url']);
+
+ public function getLicenseURL()
+ {
+ return $this->license_url;
}
- if (isset($parameters['omb_notice_license'])) {
- $notice->setLicenseURL($parameters['omb_notice_license']);
+ public function getSeealsoURL()
+ {
+ return $this->seealso_url;
}
- if (isset($parameters['omb_seealso'])) {
- $notice->setSeealsoURL($parameters['omb_seealso']);
+ public function getSeealsoDisposition()
+ {
+ return $this->seealso_disposition;
}
- if (isset($parameters['omb_seealso_disposition'])) {
- $notice->setSeealsoDisposition($parameters['omb_seealso_disposition']);
+ public function getSeealsoMediatype()
+ {
+ return $this->seealso_mediatype;
}
- if (isset($parameters['omb_seealso_mediatype'])) {
- $notice->setSeealsoMediatype($parameters['omb_seealso_mediatype']);
+ public function getSeealsoLicenseURL()
+ {
+ return $this->seealso_license_url;
}
- if (isset($parameters['omb_seealso_license'])) {
- $notice->setSeealsoLicenseURL($parameters['omb_seealso_license']);
+ public function setURL($url)
+ {
+ $this->setVal('notice_url', $url, 'OMB_Helper::validateURL', 'url');
}
- return $notice;
- }
-
- public function getAuthor() {
- return $this->author;
- }
-
- public function getIdentifierURI() {
- return $this->uri;
- }
-
- public function getContent() {
- return $this->content;
- }
-
- public function getURL() {
- return $this->url;
- }
-
- public function getLicenseURL() {
- return $this->license_url;
- }
-
- public function getSeealsoURL() {
- return $this->seealso_url;
- }
-
- public function getSeealsoDisposition() {
- return $this->seealso_disposition;
- }
-
- public function getSeealsoMediatype() {
- return $this->seealso_mediatype;
- }
-
- public function getSeealsoLicenseURL() {
- return $this->seealso_license_url;
- }
-
- public function setURL($url) {
- if ($url === '') {
- $url = null;
- } elseif (!OMB_Helper::validateURL($url)) {
- throw new OMB_InvalidParameterException($url, 'notice', 'omb_notice_url');
+
+ public function setLicenseURL($license_url)
+ {
+ $this->setVal('license', $license_url, 'OMB_Helper::validateURL',
+ 'license_url');
+ }
+
+ public function setSeealsoURL($seealso_url)
+ {
+ $this->setVal('seealso', $seealso_url, 'OMB_Helper::validateURL',
+ 'seealso_url');
}
- $this->url = $url;
- $this->param_array = false;
- }
-
- public function setLicenseURL($license_url) {
- if ($license_url === '') {
- $license_url = null;
- } elseif (!OMB_Helper::validateURL($license_url)) {
- throw new OMB_InvalidParameterException($license_url, 'notice',
- 'omb_notice_license');
+
+ public function setSeealsoDisposition($seealso_disposition)
+ {
+ $this->setVal('seealso_disposition', $seealso_disposition,
+ 'OMB_Notice::validateDisposition');
}
- $this->license_url = $license_url;
- $this->param_array = false;
- }
-
- public function setSeealsoURL($seealso_url) {
- if ($seealso_url === '') {
- $seealso_url = null;
- } elseif (!OMB_Helper::validateURL($seealso_url)) {
- throw new OMB_InvalidParameterException($seealso_url, 'notice',
- 'omb_seealso');
+
+ protected static function validateDisposition($str)
+ {
+ return in_array($str, array('link', 'inline'));
}
- $this->seealso_url = $seealso_url;
- $this->param_array = false;
- }
-
- public function setSeealsoDisposition($seealso_disposition) {
- if ($seealso_disposition === '') {
- $seealso_disposition = null;
- } elseif ($seealso_disposition !== 'link' && $seealso_disposition !== 'inline') {
- throw new OMB_InvalidParameterException($seealso_disposition, 'notice',
- 'omb_seealso_disposition');
+
+ public function setSeealsoMediatype($seealso_mediatype)
+ {
+ $this->setVal('seealso_mediatype', $seealso_mediatype,
+ 'OMB_Helper::validateMediaType');
}
- $this->seealso_disposition = $seealso_disposition;
- $this->param_array = false;
- }
-
- public function setSeealsoMediatype($seealso_mediatype) {
- if ($seealso_mediatype === '') {
- $seealso_mediatype = null;
- } elseif (!OMB_Helper::validateMediaType($seealso_mediatype)) {
- throw new OMB_InvalidParameterException($seealso_mediatype, 'notice',
- 'omb_seealso_mediatype');
+
+ public function setSeealsoLicenseURL($seealso_license_url)
+ {
+ $this->setVal('seealso_license', $seealso_license_url,
+ 'OMB_Helper::validateURL', 'seealso_license_url');
}
- $this->seealso_mediatype = $seealso_mediatype;
- $this->param_array = false;
- }
-
- public function setSeealsoLicenseURL($seealso_license_url) {
- if ($seealso_license_url === '') {
- $seealso_license_url = null;
- } elseif (!OMB_Helper::validateURL($seealso_license_url)) {
- throw new OMB_InvalidParameterException($seealso_license_url, 'notice',
- 'omb_seealso_license');
+
+ /**
+ * Set a value
+ *
+ * Updates a value specified by a parameter name and the new value.
+ *
+ * @param string $param The parameter name according to OMB
+ * @param string $value The new value
+ * @param callback $validator A validator function for the parameter
+ * @param string $field The name of the field in OMB_Notice
+ * @param bool $force Whether null values should be checked as well
+ */
+ protected function setVal($param, $value, $validator, $field = null,
+ $force = false)
+ {
+ if (is_null($field)) {
+ $field = $param;
+ }
+ if ($value === '' && !$force) {
+ $value = null;
+ } elseif (!call_user_func($validator, $value)) {
+ throw new OMB_InvalidParameterException($value, 'notice', $param);
+ }
+ if ($this->$field !== $value) {
+ $this->$field = $value;
+ $this->param_array = false;
+ }
}
- $this->seealso_license_url = $seealso_license_url;
- $this->param_array = false;
- }
}
?>
diff --git a/extlib/libomb/omb_yadis_xrds.php b/extlib/libomb/omb_yadis_xrds.php
index 89921203b..a05477c10 100755
--- a/extlib/libomb/omb_yadis_xrds.php
+++ b/extlib/libomb/omb_yadis_xrds.php
@@ -1,14 +1,6 @@
<?php
-
-require_once 'Auth/Yadis/Yadis.php';
-require_once 'unsupportedserviceexception.php';
-require_once 'invalidyadisexception.php';
-
/**
- * OMB XRDS representation
- *
- * This class represents a Yadis XRDS file for OMB. It adds some useful methods to
- * Auth_Yadis_XRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -25,172 +17,193 @@ require_once 'invalidyadisexception.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Yadis_XRDS extends Auth_Yadis_XRDS {
-
- protected $fetcher;
-
- /**
- * Create an instance from URL
- *
- * Constructs an OMB_Yadis_XRDS object from a given URL. A full Yadis
- * discovery is performed on the URL and the XRDS is parsed.
- * Throws an OMB_InvalidYadisException when no Yadis is discovered or the
- * detected XRDS file is broken.
- *
- * @param string $url The URL on which Yadis discovery
- * should be performed on
- * @param Auth_Yadis_HTTPFetcher $fetcher A fetcher used to get HTTP
- * resources
- *
- * @access public
- *
- * @return OMB_Yadis_XRDS The initialized object representing the given
- * resource
- **/
- public static function fromYadisURL($url, $fetcher) {
- /* Perform a Yadis discovery. */
- $yadis = Auth_Yadis_Yadis::discover($url, $fetcher);
- if ($yadis->failed) {
- throw new OMB_InvalidYadisException($url);
- }
-
- /* Parse the XRDS file. */
- $xrds = OMB_Yadis_XRDS::parseXRDS($yadis->response_text);
- if ($xrds === null) {
- throw new OMB_InvalidYadisException($url);
- }
- $xrds->fetcher = $fetcher;
- return $xrds;
- }
-
- /**
- * Get a specific service
- *
- * Returns the Auth_Yadis_Service object corresponding to the given service
- * URI.
- * Throws an OMB_UnsupportedServiceException if the service is not available.
- *
- * @param string $service URI specifier of the requested service
- *
- * @access public
- *
- * @return Auth_Yadis_Service The object representing the requested service
- **/
- public function getService($service) {
- $match = $this->services(array( create_function('$s',
- "return in_array('$service', \$s->getTypes());")));
- if ($match === array()) {
- throw new OMB_UnsupportedServiceException($service);
- }
- return $match[0];
- }
-
- /**
- * Get a specific XRD
- *
- * Returns the OMB_Yadis_XRDS object corresponding to the given URI.
- * Throws an OMB_UnsupportedServiceException if the XRD is not available.
- * Note that getXRD tries to resolve external XRD parts as well.
- *
- * @param string $uri URI specifier of the requested XRD
- *
- * @access public
- *
- * @return OMB_Yadis_XRDS The object representing the requested XRD
- **/
- public function getXRD($uri) {
- $nexthash = strpos($uri, '#');
- if ($nexthash !== 0) {
- if ($nexthash !== false) {
- $cururi = substr($uri, 0, $nexthash);
- $nexturi = substr($uri, $nexthash);
- }
- return
- OMB_Yadis_XRDS::fromYadisURL($cururi, $this->fetcher)->getXRD($nexturi);
- }
-
- $id = substr($uri, 1);
- foreach ($this->allXrdNodes as $node) {
- $attrs = $this->parser->attributes($node);
- if (array_key_exists('xml:id', $attrs) && $attrs['xml:id'] == $id) {
- /* Trick the constructor into thinking this is the only node. */
- $bogus_nodes = array($node);
- return new OMB_Yadis_XRDS($this->parser, $bogus_nodes);
- }
- }
- throw new OMB_UnsupportedServiceException($uri);
- }
-
- /**
- * Parse an XML string containing a XRDS document
- *
- * Parse an XML string (XRDS document) and return either a
- * Auth_Yadis_XRDS object or null, depending on whether the
- * XRDS XML is valid.
- * Copy and paste from parent to select correct constructor.
- *
- * @param string $xml_string An XRDS XML string.
- *
- * @access public
- *
- * @return mixed An instance of OMB_Yadis_XRDS or null,
- * depending on the validity of $xml_string
- **/
-
- public function &parseXRDS($xml_string, $extra_ns_map = null) {
- $_null = null;
-
- if (!$xml_string) {
- return $_null;
- }
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
- $parser = Auth_Yadis_getXMLParser();
-
- $ns_map = Auth_Yadis_getNSMap();
-
- if ($extra_ns_map && is_array($extra_ns_map)) {
- $ns_map = array_merge($ns_map, $extra_ns_map);
- }
-
- if (!($parser && $parser->init($xml_string, $ns_map))) {
- return $_null;
- }
+require_once 'Auth/Yadis/Yadis.php';
+require_once 'unsupportedserviceexception.php';
+require_once 'invalidyadisexception.php';
- // Try to get root element.
- $root = $parser->evalXPath('/xrds:XRDS[1]');
- if (!$root) {
- return $_null;
+/**
+ * OMB XRDS representation
+ *
+ * This class represents a Yadis XRDS file for OMB. It adds some useful methods to
+ * Auth_Yadis_XRDS.
+ */
+class OMB_Yadis_XRDS extends Auth_Yadis_XRDS
+{
+
+ protected $fetcher;
+
+ /**
+ * Create an instance from URL
+ *
+ * Constructs an OMB_Yadis_XRDS object from a given URL. A full Yadis
+ * discovery is performed on the URL and the XRDS is parsed.
+ * Throws an OMB_InvalidYadisException when no Yadis is discovered or the
+ * detected XRDS file is broken.
+ *
+ * @param string $url The URL on which Yadis discovery
+ * should be performed on
+ * @param Auth_Yadis_HTTPFetcher $fetcher A fetcher used to get HTTP
+ * resources
+ *
+ * @access public
+ *
+ * @return OMB_Yadis_XRDS The initialized object representing the given
+ * resource
+ */
+ public static function fromYadisURL($url, $fetcher)
+ {
+ /* Perform a Yadis discovery. */
+ $yadis = Auth_Yadis_Yadis::discover($url, $fetcher);
+ if ($yadis->failed) {
+ throw new OMB_InvalidYadisException($url);
+ }
+
+ /* Parse the XRDS file. */
+ $xrds = OMB_Yadis_XRDS::parseXRDS($yadis->response_text);
+ if ($xrds === null) {
+ throw new OMB_InvalidYadisException($url);
+ }
+ $xrds->fetcher = $fetcher;
+ return $xrds;
}
- if (is_array($root)) {
- $root = $root[0];
+ /**
+ * Get a specific service
+ *
+ * Returns the Auth_Yadis_Service object corresponding to the given service
+ * URI.
+ * Throws an OMB_UnsupportedServiceException if the service is not
+ * available.
+ *
+ * @param string $service URI specifier of the requested service
+ *
+ * @access public
+ *
+ * @return Auth_Yadis_Service The object representing the requested service
+ */
+ public function getService($service)
+ {
+ $match = $this->services(array(create_function('$s',
+ "return in_array('$service', \$s->getTypes());")));
+ if ($match === array()) {
+ throw new OMB_UnsupportedServiceException($service);
+ }
+ return $match[0];
}
- $attrs = $parser->attributes($root);
-
- if (array_key_exists('xmlns:xrd', $attrs) &&
- $attrs['xmlns:xrd'] != Auth_Yadis_XMLNS_XRDS) {
- return $_null;
- } else if (array_key_exists('xmlns', $attrs) &&
- preg_match('/xri/', $attrs['xmlns']) &&
- $attrs['xmlns'] != Auth_Yadis_XMLNS_XRD_2_0) {
- return $_null;
+ /**
+ * Get a specific XRD
+ *
+ * Returns the OMB_Yadis_XRDS object corresponding to the given URI.
+ * Throws an OMB_UnsupportedServiceException if the XRD is not available.
+ * Note that getXRD tries to resolve external XRD parts as well.
+ *
+ * @param string $uri URI specifier of the requested XRD
+ *
+ * @access public
+ *
+ * @return OMB_Yadis_XRDS The object representing the requested XRD
+ */
+ public function getXRD($uri)
+ {
+ $nexthash = strpos($uri, '#');
+ if ($nexthash === false) {
+ throw new OMB_InvalidYadisException("‘$uri’ does not specify a " .
+ 'valid XML node.');
+ }
+
+ if ($nexthash > 0) {
+ $cururi = substr($uri, 0, $nexthash);
+ $nexturi = substr($uri, $nexthash);
+ return OMB_Yadis_XRDS::fromYadisURL($cururi, $this->fetcher)
+ ->getXRD($nexturi);
+ }
+
+ $id = substr($uri, 1);
+ foreach ($this->allXrdNodes as $node) {
+ $attrs = $this->parser->attributes($node);
+ if (array_key_exists('xml:id', $attrs) && $attrs['xml:id'] == $id) {
+ /* Trick the constructor into thinking this is the only node. */
+ $bogus_nodes = array($node);
+ return new OMB_Yadis_XRDS($this->parser, $bogus_nodes);
+ }
+ }
+ throw new OMB_UnsupportedServiceException($uri);
}
- // Get the last XRD node.
- $xrd_nodes = $parser->evalXPath('/xrds:XRDS[1]/xrd:XRD');
-
- if (!$xrd_nodes) {
- return $_null;
+ /**
+ * Parse an XML string containing a XRDS document
+ *
+ * Parses an XML string (XRDS document) and returns either an
+ * Auth_Yadis_XRDS object or null, depending on whether the XRDS XML is
+ * valid.
+ * This method is just copy and paste from the parent class to select the
+ * correct constructor.
+ *
+ * @param string $xml_string An XRDS XML string
+ * @param array $extra_ns_map Additional namespace declarations
+ *
+ * @access public
+ *
+ * @return mixed An instance of OMB_Yadis_XRDS or null,
+ * depending on the validity of $xml_string
+ */
+ public static function parseXRDS($xml_string, $extra_ns_map = null)
+ {
+ $_null = null;
+
+ if (!$xml_string) {
+ return $_null;
+ }
+
+ $parser = Auth_Yadis_getXMLParser();
+
+ $ns_map = Auth_Yadis_getNSMap();
+
+ if ($extra_ns_map && is_array($extra_ns_map)) {
+ $ns_map = array_merge($ns_map, $extra_ns_map);
+ }
+
+ if (!($parser && $parser->init($xml_string, $ns_map))) {
+ return $_null;
+ }
+
+ // Try to get root element.
+ $root = $parser->evalXPath('/xrds:XRDS[1]');
+ if (!$root) {
+ return $_null;
+ }
+
+ if (is_array($root)) {
+ $root = $root[0];
+ }
+
+ $attrs = $parser->attributes($root);
+
+ if (array_key_exists('xmlns:xrd', $attrs) &&
+ $attrs['xmlns:xrd'] != Auth_Yadis_XMLNS_XRDS) {
+ return $_null;
+ } else if (array_key_exists('xmlns', $attrs) &&
+ preg_match('/xri/', $attrs['xmlns']) &&
+ $attrs['xmlns'] != Auth_Yadis_XMLNS_XRD_2_0) {
+ return $_null;
+ }
+
+ // Get the last XRD node.
+ $xrd_nodes = $parser->evalXPath('/xrds:XRDS[1]/xrd:XRD');
+
+ if (!$xrd_nodes) {
+ return $_null;
+ }
+
+ $xrds = new OMB_Yadis_XRDS($parser, $xrd_nodes);
+ return $xrds;
}
-
- $xrds = new OMB_Yadis_XRDS($parser, $xrd_nodes);
- return $xrds;
- }
}
diff --git a/extlib/libomb/plain_xrds_writer.php b/extlib/libomb/plain_xrds_writer.php
index b4a6e990b..ba1027b61 100755
--- a/extlib/libomb/plain_xrds_writer.php
+++ b/extlib/libomb/plain_xrds_writer.php
@@ -1,13 +1,6 @@
<?php
-
-require_once 'xrds_writer.php';
-
/**
- * Write OMB-specific XRDS using XMLWriter.
- *
- * This class writes the XRDS file announcing the OMB server. It uses
- * OMB_XMLWriter, which is a subclass of XMLWriter. An instance of
- * OMB_Plain_XRDS_Writer should be passed to OMB_Service_Provider->writeXRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -24,25 +17,45 @@ require_once 'xrds_writer.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+require_once 'xrds_writer.php';
-class OMB_Plain_XRDS_Writer implements OMB_XRDS_Writer {
- public function writeXRDS($user, $mapper) {
- header('Content-Type: application/xrds+xml');
- $xw = new XMLWriter();
- $xw->openURI('php://output');
- $xw->setIndent(true);
+/**
+ * Write OMB-specific XRDS using XMLWriter
+ *
+ * This class writes the XRDS file announcing the OMB server. It uses XMLWriter.
+ * An instance of OMB_Plain_XRDS_Writer should be passed to
+ * OMB_Service_Provider->writeXRDS.
+ */
+class OMB_Plain_XRDS_Writer implements OMB_XRDS_Writer
+{
+ /**
+ * Write XRDS using XMLWriter
+ *
+ * Outputs a XRDS document specifying an OMB service.
+ *
+ * @param OMB_profile $user The target user for the OMB service
+ * @param OMB_XRDS_Mapper $mapper An OMB_XRDS_Mapper providing endpoint URLs
+ */
+ public function writeXRDS($user, $mapper)
+ {
+ header('Content-Type: application/xrds+xml');
+ $xw = new XMLWriter();
+ $xw->openURI('php://output');
+ $xw->setIndent(true);
- $xw->startDocument('1.0', 'UTF-8');
- $this->writeFullElement($xw, 'XRDS', array('xmlns' => 'xri://$xrds'), array(
- array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
- 'xml:id' => 'oauth',
- 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
- 'version' => '2.0'), array(
+ $xw->startDocument('1.0', 'UTF-8');
+ $this->_writeFullElement($xw, 'XRDS', array('xmlns' => 'xri://$xrds'), array(
+ array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
+ 'xml:id' => 'oauth',
+ 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
+ 'version' => '2.0'), array(
array('Type', null, 'xri://$xrds*simple'),
array('Service', null, array(
array('Type', null, OAUTH_ENDPOINT_REQUEST),
@@ -73,10 +86,10 @@ class OMB_Plain_XRDS_Writer implements OMB_XRDS_Writer {
array('Type', null, OAUTH_HMAC_SHA1)
))
)),
- array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
- 'xml:id' => 'omb',
- 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
- 'version' => '2.0'), array(
+ array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
+ 'xml:id' => 'omb',
+ 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
+ 'version' => '2.0'), array(
array('Type', null, 'xri://$xrds*simple'),
array('Service', null, array(
array('Type', null, OMB_ENDPOINT_POSTNOTICE),
@@ -87,8 +100,8 @@ class OMB_Plain_XRDS_Writer implements OMB_XRDS_Writer {
array('URI', null, $mapper->getURL(OMB_ENDPOINT_UPDATEPROFILE))
))
)),
- array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
- 'version' => '2.0'), array(
+ array('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
+ 'version' => '2.0'), array(
array('Type', null, 'xri://$xrds*simple'),
array('Service', null, array(
array('Type', null, OAUTH_DISCOVERY),
@@ -98,27 +111,40 @@ class OMB_Plain_XRDS_Writer implements OMB_XRDS_Writer {
array('Type', null, OMB_VERSION),
array('URI', null, '#omb')
))
- ))
- ));
- $xw->endDocument();
- $xw->flush();
- }
-
- public static function writeFullElement($xw, $tag, $attributes, $content) {
- $xw->startElement($tag);
- if (!is_null($attributes)) {
- foreach ($attributes as $name => $value) {
- $xw->writeAttribute($name, $value);
- }
+ ))));
+ $xw->endDocument();
+ $xw->flush();
}
- if (is_array($content)) {
- foreach ($content as $values) {
- OMB_Plain_XRDS_Writer::writeFullElement($xw, $values[0], $values[1], $values[2]);
- }
- } else {
- $xw->text($content);
+
+ /**
+ * Write a complex XML element
+ *
+ * Outputs a XML element with attributes and content.
+ *
+ * @param XMLWriter $xw The XMLWriter used to output the element
+ * @param string $tag The tag name
+ * @param array|null $attributes A map of XML attributes
+ * @param array|string $content The content of the element; either an
+ * array of child nodes each specified by a
+ * three entry-array ($tag, $attributes,
+ * $content) or a string
+ */
+ private function _writeFullElement($xw, $tag, $attributes, $content)
+ {
+ $xw->startElement($tag);
+ if (!is_null($attributes)) {
+ foreach ($attributes as $name => $value) {
+ $xw->writeAttribute($name, $value);
+ }
+ }
+ if (is_array($content)) {
+ foreach ($content as $val) {
+ $this->_writeFullElement($xw, $val[0], $val[1], $val[2]);
+ }
+ } else {
+ $xw->text($content);
+ }
+ $xw->fullEndElement();
}
- $xw->fullEndElement();
- }
}
?>
diff --git a/extlib/libomb/profile.php b/extlib/libomb/profile.php
index 13314d3e8..d732e10d7 100755
--- a/extlib/libomb/profile.php
+++ b/extlib/libomb/profile.php
@@ -1,15 +1,6 @@
<?php
-require_once 'invalidparameterexception.php';
-require_once 'Validate.php';
-require_once 'helper.php';
-
/**
- * OMB profile representation
- *
- * This class represents an OMB profile.
- *
- * Do not call the setters with null values. Instead, if you want to delete a
- * field, pass an empty string. The getters will return null for empty fields.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -26,292 +17,329 @@ require_once 'helper.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Profile {
- protected $identifier_uri;
- protected $profile_url;
- protected $nickname;
- protected $license_url;
- protected $fullname;
- protected $homepage;
- protected $bio;
- protected $location;
- protected $avatar_url;
-
- /* The profile as OMB param array. Cached and rebuild on usage.
- false while outdated. */
- protected $param_array;
-
- /**
- * Constructor for OMB_Profile
- *
- * Initializes the OMB_Profile object with an identifier uri.
- *
- * @param string $identifier_uri The profile URI as defined by the OMB. A unique
- * and unchanging identifier for a profile.
- *
- * @access public
- */
- public function __construct($identifier_uri) {
- if (!Validate::uri($identifier_uri)) {
- throw new OMB_InvalidParameterException($identifier_uri, 'profile',
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+require_once 'invalidparameterexception.php';
+require_once 'Validate.php';
+require_once 'helper.php';
+
+/**
+ * OMB profile representation
+ *
+ * This class represents an OMB profile.
+ *
+ * Do not call the setters with null values. Instead, if you want to delete a
+ * field, pass an empty string. The getters will return null for empty fields.
+ */
+class OMB_Profile
+{
+ protected $identifier_uri;
+ protected $profile_url;
+ protected $nickname;
+ protected $license_url;
+ protected $fullname;
+ protected $homepage;
+ protected $bio;
+ protected $location;
+ protected $avatar_url;
+
+ /* The profile as OMB param array. Cached and rebuild on usage.
+ false while outdated. */
+ protected $param_array;
+
+ /**
+ * Constructor for OMB_Profile
+ *
+ * Initializes the OMB_Profile object with an identifier uri.
+ *
+ * @param string $identifier_uri The profile URI as defined by the OMB;
+ * A unique and never changing identifier for
+ * a profile
+ *
+ * @access public
+ */
+ public function __construct($identifier_uri)
+ {
+ if (!Validate::uri($identifier_uri)) {
+ throw new OMB_InvalidParameterException($identifier_uri, 'profile',
'omb_listenee or omb_listener');
+ }
+ $this->identifier_uri = $identifier_uri;
+ $this->param_array = false;
}
- $this->identifier_uri = $identifier_uri;
- $this->param_array = false;
- }
-
- /**
- * Returns the profile as array
- *
- * The method returns an array which contains the whole profile as array. The
- * array is cached and only rebuilt on changes of the profile.
- *
- * @param bool $force_all Specifies whether empty fields should be added to
- * the array as well. This is neccessary to clear
- * fields via updateProfile.
- *
- * @param string $prefix The common prefix to the key for all parameters.
- *
- * @access public
- *
- * @return array The profile as parameter array
- */
- public function asParameters($prefix, $force_all = false) {
- if ($this->param_array === false) {
- $this->param_array = array('' => $this->identifier_uri);
-
- if ($force_all || !is_null($this->profile_url)) {
- $this->param_array['_profile'] = $this->profile_url;
- }
-
- if ($force_all || !is_null($this->homepage)) {
- $this->param_array['_homepage'] = $this->homepage;
- }
-
- if ($force_all || !is_null($this->nickname)) {
- $this->param_array['_nickname'] = $this->nickname;
- }
-
- if ($force_all || !is_null($this->license_url)) {
- $this->param_array['_license'] = $this->license_url;
- }
-
- if ($force_all || !is_null($this->fullname)) {
- $this->param_array['_fullname'] = $this->fullname;
- }
-
- if ($force_all || !is_null($this->bio)) {
- $this->param_array['_bio'] = $this->bio;
- }
-
- if ($force_all || !is_null($this->location)) {
- $this->param_array['_location'] = $this->location;
- }
-
- if ($force_all || !is_null($this->avatar_url)) {
- $this->param_array['_avatar'] = $this->avatar_url;
- }
- }
- $ret = array();
- foreach ($this->param_array as $k => $v) {
- $ret[$prefix . $k] = $v;
- }
- return $ret;
- }
-
- /**
- * Builds an OMB_Profile object from array
- *
- * The method builds an OMB_Profile object from the passed parameters array. The
- * array MUST provide a profile URI. The array fields HAVE TO be named according
- * to the OMB standard. The prefix (omb_listener or omb_listenee) is passed as a
- * parameter.
- *
- * @param string $parameters An array containing the profile parameters.
- * @param string $prefix The common prefix of the profile parameter keys.
- *
- * @access public
- *
- * @returns OMB_Profile The built OMB_Profile.
- */
- public static function fromParameters($parameters, $prefix) {
- if (!isset($parameters[$prefix])) {
- throw new OMB_InvalidParameterException('', 'profile', $prefix);
+ /**
+ * Return the profile as array
+ *
+ * Returns an array which contains the whole profile as array.
+ * The array is cached and only rebuilt on changes of the profile.
+ *
+ * @param string $prefix The common prefix to the key for all parameters
+ * @param bool $force_all Specifies whether empty fields should be added
+ * to the array as well; This is necessary to
+ * clear fields via updateProfile
+ *
+ * @access public
+ *
+ * @return array The profile as parameter array
+ */
+ public function asParameters($prefix, $force_all = false)
+ {
+ if ($this->param_array === false) {
+ $this->param_array = array('' => $this->identifier_uri);
+
+ if ($force_all || !is_null($this->profile_url)) {
+ $this->param_array['_profile'] = $this->profile_url;
+ }
+
+ if ($force_all || !is_null($this->homepage)) {
+ $this->param_array['_homepage'] = $this->homepage;
+ }
+
+ if ($force_all || !is_null($this->nickname)) {
+ $this->param_array['_nickname'] = $this->nickname;
+ }
+
+ if ($force_all || !is_null($this->license_url)) {
+ $this->param_array['_license'] = $this->license_url;
+ }
+
+ if ($force_all || !is_null($this->fullname)) {
+ $this->param_array['_fullname'] = $this->fullname;
+ }
+
+ if ($force_all || !is_null($this->bio)) {
+ $this->param_array['_bio'] = $this->bio;
+ }
+
+ if ($force_all || !is_null($this->location)) {
+ $this->param_array['_location'] = $this->location;
+ }
+
+ if ($force_all || !is_null($this->avatar_url)) {
+ $this->param_array['_avatar'] = $this->avatar_url;
+ }
+
+ }
+ $ret = array();
+ foreach ($this->param_array as $k => $v) {
+ $ret[$prefix . $k] = $v;
+ }
+ return $ret;
}
- $profile = new OMB_Profile($parameters[$prefix]);
- $profile->updateFromParameters($parameters, $prefix);
- return $profile;
- }
-
- /**
- * Update from array
- *
- * Updates from the passed parameters array. The array does not have to
- * provide a profile URI. The array fields HAVE TO be named according to the
- * OMB standard. The prefix (omb_listener or omb_listenee) is passed as a
- * parameter.
- *
- * @param string $parameters An array containing the profile parameters.
- * @param string $prefix The common prefix of the profile parameter keys.
- *
- * @access public
- */
- public function updateFromParameters($parameters, $prefix) {
- if (isset($parameters[$prefix.'_profile'])) {
- $this->setProfileURL($parameters[$prefix.'_profile']);
+ /**
+ * Build an OMB_Profile object from array
+ *
+ * Builds an OMB_Profile object from the passed parameters array. The
+ * array MUST provide a profile URI. The array fields HAVE TO be named
+ * according to the OMB standard. The prefix (omb_listener or omb_listenee)
+ * is passed as a parameter.
+ *
+ * @param string $parameters An array containing the profile parameters
+ * @param string $prefix The common prefix of the profile parameter keys
+ *
+ * @access public
+ *
+ * @returns OMB_Profile The built OMB_Profile
+ */
+ public static function fromParameters($parameters, $prefix)
+ {
+ if (!isset($parameters[$prefix])) {
+ throw new OMB_InvalidParameterException('', 'profile', $prefix);
+ }
+
+ $profile = new OMB_Profile($parameters[$prefix]);
+ $profile->updateFromParameters($parameters, $prefix);
+ return $profile;
}
- if (isset($parameters[$prefix.'_license'])) {
- $this->setLicenseURL($parameters[$prefix.'_license']);
+ /**
+ * Update from array
+ *
+ * Updates from the passed parameters array. The array does not have to
+ * provide a profile URI. The array fields HAVE TO be named according to the
+ * OMB standard. The prefix (omb_listener or omb_listenee) is passed as a
+ * parameter.
+ *
+ * @param string $parameters An array containing the profile parameters
+ * @param string $prefix The common prefix of the profile parameter keys
+ *
+ * @access public
+ */
+ public function updateFromParameters($parameters, $prefix)
+ {
+ if (isset($parameters[$prefix.'_profile'])) {
+ $this->setProfileURL($parameters[$prefix.'_profile']);
+ }
+
+ if (isset($parameters[$prefix.'_license'])) {
+ $this->setLicenseURL($parameters[$prefix.'_license']);
+ }
+
+ if (isset($parameters[$prefix.'_nickname'])) {
+ $this->setNickname($parameters[$prefix.'_nickname']);
+ }
+
+ if (isset($parameters[$prefix.'_fullname'])) {
+ $this->setFullname($parameters[$prefix.'_fullname']);
+ }
+
+ if (isset($parameters[$prefix.'_homepage'])) {
+ $this->setHomepage($parameters[$prefix.'_homepage']);
+ }
+
+ if (isset($parameters[$prefix.'_bio'])) {
+ $this->setBio($parameters[$prefix.'_bio']);
+ }
+
+ if (isset($parameters[$prefix.'_location'])) {
+ $this->setLocation($parameters[$prefix.'_location']);
+ }
+
+ if (isset($parameters[$prefix.'_avatar'])) {
+ $this->setAvatarURL($parameters[$prefix.'_avatar']);
+ }
}
- if (isset($parameters[$prefix.'_nickname'])) {
- $this->setNickname($parameters[$prefix.'_nickname']);
+ public function getIdentifierURI()
+ {
+ return $this->identifier_uri;
}
- if (isset($parameters[$prefix.'_fullname'])) {
- $this->setFullname($parameters[$prefix.'_fullname']);
+ public function getProfileURL()
+ {
+ return $this->profile_url;
}
- if (isset($parameters[$prefix.'_homepage'])) {
- $this->setHomepage($parameters[$prefix.'_homepage']);
+ public function getHomepage()
+ {
+ return $this->homepage;
}
- if (isset($parameters[$prefix.'_bio'])) {
- $this->setBio($parameters[$prefix.'_bio']);
+ public function getNickname()
+ {
+ return $this->nickname;
}
- if (isset($parameters[$prefix.'_location'])) {
- $this->setLocation($parameters[$prefix.'_location']);
+ public function getLicenseURL()
+ {
+ return $this->license_url;
}
- if (isset($parameters[$prefix.'_avatar'])) {
- $this->setAvatarURL($parameters[$prefix.'_avatar']);
+ public function getFullname()
+ {
+ return $this->fullname;
}
- }
-
- public function getIdentifierURI() {
- return $this->identifier_uri;
- }
- public function getProfileURL() {
- return $this->profile_url;
- }
-
- public function getHomepage() {
- return $this->homepage;
- }
-
- public function getNickname() {
- return $this->nickname;
- }
-
- public function getLicenseURL() {
- return $this->license_url;
- }
+ public function getBio()
+ {
+ return $this->bio;
+ }
- public function getFullname() {
- return $this->fullname;
- }
+ public function getLocation()
+ {
+ return $this->location;
+ }
- public function getBio() {
- return $this->bio;
- }
+ public function getAvatarURL()
+ {
+ return $this->avatar_url;
+ }
- public function getLocation() {
- return $this->location;
- }
+ public function setProfileURL($profile_url)
+ {
+ $this->setVal('profile', $profile_url, 'OMB_Helper::validateURL',
+ 'profile_url');
+ }
- public function getAvatarURL() {
- return $this->avatar_url;
- }
+ public function setNickname($nickname)
+ {
+ $this->setVal('nickname', $nickname, 'OMB_Profile::validateNickname',
+ 'nickname', true);
+ }
- public function setProfileURL($profile_url) {
- if (!OMB_Helper::validateURL($profile_url)) {
- throw new OMB_InvalidParameterException($profile_url, 'profile',
- 'omb_listenee_profile or omb_listener_profile');
+ public function setLicenseURL($license_url)
+ {
+ $this->setVal('license', $license_url, 'OMB_Helper::validateURL',
+ 'license_url');
}
- $this->profile_url = $profile_url;
- $this->param_array = false;
- }
-
- public function setNickname($nickname) {
- if (!Validate::string($nickname,
- array('min_length' => 1,
- 'max_length' => 64,
- 'format' => VALIDATE_NUM . VALIDATE_ALPHA))) {
- throw new OMB_InvalidParameterException($nickname, 'profile', 'nickname');
+
+ public function setFullname($fullname)
+ {
+ $this->setVal('fullname', $fullname, 'OMB_Profile::validate255');
}
- $this->nickname = $nickname;
- $this->param_array = false;
- }
+ public function setHomepage($homepage)
+ {
+ $this->setVal('homepage', $homepage, 'OMB_Helper::validateURL');
+ }
- public function setLicenseURL($license_url) {
- if (!OMB_Helper::validateURL($license_url)) {
- throw new OMB_InvalidParameterException($license_url, 'profile',
- 'omb_listenee_license or omb_listener_license');
+ public function setBio($bio)
+ {
+ $this->setVal('bio', $bio, 'OMB_Profile::validate140');
}
- $this->license_url = $license_url;
- $this->param_array = false;
- }
-
- public function setFullname($fullname) {
- if ($fullname === '') {
- $fullname = null;
- } elseif (!Validate::string($fullname, array('max_length' => 255))) {
- throw new OMB_InvalidParameterException($fullname, 'profile', 'fullname');
+
+ public function setLocation($location)
+ {
+ $this->setVal('location', $location, 'OMB_Profile::validate255');
}
- $this->fullname = $fullname;
- $this->param_array = false;
- }
- public function setHomepage($homepage) {
- if ($homepage === '') {
- $homepage = null;
+ public function setAvatarURL($avatar_url)
+ {
+ $this->setVal('avatar', $avatar_url, 'OMB_Helper::validateURL',
+ 'avatar_url');
}
- $this->homepage = $homepage;
- $this->param_array = false;
- }
-
- public function setBio($bio) {
- if ($bio === '') {
- $bio = null;
- } elseif (!Validate::string($bio, array('max_length' => 140))) {
- throw new OMB_InvalidParameterException($bio, 'profile', 'fullname');
+
+ protected static function validate255($str)
+ {
+ return Validate::string($str, array('max_length' => 255));
}
- $this->bio = $bio;
- $this->param_array = false;
- }
-
- public function setLocation($location) {
- if ($location === '') {
- $location = null;
- } elseif (!Validate::string($location, array('max_length' => 255))) {
- throw new OMB_InvalidParameterException($location, 'profile', 'fullname');
+
+ protected static function validate140($str)
+ {
+ return Validate::string($str, array('max_length' => 140));
}
- $this->location = $location;
- $this->param_array = false;
- }
-
- public function setAvatarURL($avatar_url) {
- if ($avatar_url === '') {
- $avatar_url = null;
- } elseif (!OMB_Helper::validateURL($avatar_url)) {
- throw new OMB_InvalidParameterException($avatar_url, 'profile',
- 'omb_listenee_avatar or omb_listener_avatar');
+
+ protected static function validateNickname($str)
+ {
+ return Validate::string($str,
+ array('min_length' => 1,
+ 'max_length' => 64,
+ 'format' => VALIDATE_NUM . VALIDATE_ALPHA));
}
- $this->avatar_url = $avatar_url;
- $this->param_array = false;
- }
+ /**
+ * Set a value
+ *
+ * Updates a value specified by a parameter name and the new value.
+ *
+ * @param string $param The parameter name according to OMB
+ * @param string $value The new value
+ * @param callback $validator A validator function for the parameter
+ * @param string $field The name of the field in OMB_Profile
+ * @param bool $force Whether null values should be checked as well
+ */
+ protected function setVal($param, $value, $validator, $field = null,
+ $force = false)
+ {
+ if (is_null($field)) {
+ $field = $param;
+ }
+ if ($value === '' && !$force) {
+ $value = null;
+ } elseif (!call_user_func($validator, $value)) {
+ throw new OMB_InvalidParameterException($value, 'profile', $param);
+ }
+ if ($this->$field !== $value) {
+ $this->$field = $value;
+ $this->param_array = false;
+ }
+ }
}
?>
diff --git a/extlib/libomb/remoteserviceexception.php b/extlib/libomb/remoteserviceexception.php
index 374d15973..f8341e82b 100755
--- a/extlib/libomb/remoteserviceexception.php
+++ b/extlib/libomb/remoteserviceexception.php
@@ -1,9 +1,6 @@
<?php
/**
- * Exception stating that the remote service had a failure
- *
- * This exception is raised when a remote service failed to return a valid
- * response to a request or send a valid request.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -20,23 +17,57 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-class OMB_RemoteServiceException extends Exception {
- public static function fromYadis($request_uri, $result) {
- if ($result->status == 200) {
- $err = 'Got wrong response ' . $result->body;
- } else {
- $err = 'Got error code ' . $result->status . ' with response ' . $result->body;
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+/**
+ * Exception stating that the remote service had a failure
+ *
+ * This exception is raised when a remote service failed to return a valid
+ * response to a request or send a valid request.
+ */
+class OMB_RemoteServiceException extends Exception
+{
+ /**
+ * Create exception from Yadis response
+ *
+ * Creates an exception from a passed yadis result.
+ *
+ * @param string $request_uri The target URI for the failed
+ * request
+ * @param Auth_Yadis_HTTPResponse $result The result of the failed
+ * request
+ *
+ * @return OMB_RemoteServiceException A new exception
+ */
+ public static function fromYadis($request_uri, $result)
+ {
+ if ($result->status == 200) {
+ $err = 'Got wrong response ' . $result->body;
+ } else {
+ $err = 'Got error code ' . $result->status . ' with response ' .
+ $result->body;
+ }
+ return OMB_RemoteServiceException::forRequest($request_uri, $err);
}
- return new OMB_RemoteServiceException($request_uri . ': ' . $err);
- }
- public static function forRequest($action_uri, $failure) {
- return new OMB_RemoteServiceException("Handler for $action_uri: " . $failure);
- }
+ /**
+ * Create exception for a call to a resource
+ *
+ * Creates an exception for a given error message and target URI.
+ *
+ * @param string $action_uri The target URI for the failed request
+ * @param string $failure An error message
+ *
+ * @return OMB_RemoteServiceException A new exception
+ */
+ public static function forRequest($action_uri, $failure)
+ {
+ return new OMB_RemoteServiceException("Handler for $action_uri: $failure");
+ }
}
?>
diff --git a/extlib/libomb/service_consumer.php b/extlib/libomb/service_consumer.php
index 273fd052e..33ebccc65 100755
--- a/extlib/libomb/service_consumer.php
+++ b/extlib/libomb/service_consumer.php
@@ -1,19 +1,6 @@
<?php
-
-require_once 'constants.php';
-require_once 'Validate.php';
-require_once 'Auth/Yadis/Yadis.php';
-require_once 'OAuth.php';
-require_once 'unsupportedserviceexception.php';
-require_once 'remoteserviceexception.php';
-require_once 'omb_yadis_xrds.php';
-require_once 'helper.php';
-
/**
- * OMB service representation
- *
- * This class represents a complete remote OMB service. It provides discovery
- * and execution of the service’s methods.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -30,401 +17,445 @@ require_once 'helper.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Service_Consumer {
- protected $url; /* The service URL */
- protected $services; /* An array of strings mapping service URI to
- service URL */
-
- protected $token; /* An OAuthToken */
-
- protected $listener_uri; /* The URI identifying the listener, i. e. the
- remote user. */
-
- protected $listenee_uri; /* The URI identifying the listenee, i. e. the
- local user during an auth request. */
-
- /**
- * According to OAuth Core 1.0, an user authorization request is no full-blown
- * OAuth request. nonce, timestamp, consumer_key and signature are not needed
- * in this step. See http://laconi.ca/trac/ticket/827 for more informations.
- *
- * Since Laconica up to version 0.7.2 performs a full OAuth request check, a
- * correct request would fail.
- **/
- public $performLegacyAuthRequest = true;
-
- /* Helper stuff we are going to need. */
- protected $fetcher;
- protected $oauth_consumer;
- protected $datastore;
-
- /**
- * Constructor for OMB_Service_Consumer
- *
- * Initializes an OMB_Service_Consumer object representing the OMB service
- * specified by $service_url. Performs a complete service discovery using
- * Yadis.
- * Throws OMB_UnsupportedServiceException if XRDS file does not specify a
- * complete OMB service.
- *
- * @param string $service_url The URL of the service
- * @param string $consumer_url An URL representing the consumer
- * @param OMB_Datastore $datastore An instance of a class implementing
- * OMB_Datastore
- *
- * @access public
- **/
- public function __construct ($service_url, $consumer_url, $datastore) {
- $this->url = $service_url;
- $this->fetcher = Auth_Yadis_Yadis::getHTTPFetcher();
- $this->datastore = $datastore;
- $this->oauth_consumer = new OAuthConsumer($consumer_url, '');
-
- $xrds = OMB_Yadis_XRDS::fromYadisURL($service_url, $this->fetcher);
-
- /* Detect our services. This performs a validation as well, since
- getService und getXRD throw exceptions on failure. */
- $this->services = array();
-
- foreach (array(OAUTH_DISCOVERY => OMB_Helper::$OAUTH_SERVICES,
- OMB_VERSION => OMB_Helper::$OMB_SERVICES)
- as $service_root => $targetservices) {
- $uris = $xrds->getService($service_root)->getURIs();
- $xrd = $xrds->getXRD($uris[0]);
- foreach ($targetservices as $targetservice) {
- $yadis_service = $xrd->getService($targetservice);
- if ($targetservice == OAUTH_ENDPOINT_REQUEST) {
- $localid = $yadis_service->getElements('xrd:LocalID');
- $this->listener_uri = $yadis_service->parser->content($localid[0]);
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+require_once 'Validate.php';
+require_once 'Auth/Yadis/Yadis.php';
+require_once 'OAuth.php';
+require_once 'constants.php';
+require_once 'helper.php';
+require_once 'omb_yadis_xrds.php';
+require_once 'profile.php';
+require_once 'remoteserviceexception.php';
+require_once 'unsupportedserviceexception.php';
+
+/**
+ * OMB service representation
+ *
+ * This class represents a complete remote OMB service. It provides discovery
+ * and execution of the service’s methods.
+ */
+class OMB_Service_Consumer
+{
+ protected $url; /* The service URL */
+ protected $services; /* An array of strings mapping service URI to
+ service URL */
+
+ protected $token; /* An OAuthToken */
+
+ protected $listener_uri; /* The URI identifying the listener, i. e. the
+ remote user. */
+
+ protected $listenee_uri; /* The URI identifying the listenee, i. e. the
+ local user during an auth request. */
+
+ /**
+ * According to OAuth Core 1.0, an user authorization request is no
+ * full-blown OAuth request. nonce, timestamp, consumer_key and signature
+ * are not needed in this step. See http://laconi.ca/trac/ticket/827 for
+ * more informations.
+ *
+ * Since Laconica up to version 0.7.2 performs a full OAuth request check, a
+ * correct request would fail.
+ */
+ public $performLegacyAuthRequest = true;
+
+ /* Helper stuff we are going to need. */
+ protected $fetcher;
+ protected $oauth_consumer;
+ protected $datastore;
+
+ /**
+ * Constructor for OMB_Service_Consumer
+ *
+ * Initializes an OMB_Service_Consumer object representing the OMB service
+ * specified by $service_url. Performs a complete service discovery using
+ * Yadis.
+ * Throws OMB_UnsupportedServiceException if XRDS file does not specify a
+ * complete OMB service.
+ *
+ * @param string $service_url The URL of the service
+ * @param string $consumer_url An URL representing the consumer
+ * @param OMB_Datastore $datastore An instance of a class implementing
+ * OMB_Datastore
+ *
+ * @access public
+ */
+ public function __construct ($service_url, $consumer_url, $datastore)
+ {
+ $this->url = $service_url;
+ $this->fetcher = Auth_Yadis_Yadis::getHTTPFetcher();
+ $this->datastore = $datastore;
+ $this->oauth_consumer = new OAuthConsumer($consumer_url, '');
+
+ $xrds = OMB_Yadis_XRDS::fromYadisURL($service_url, $this->fetcher);
+
+ /* Detect our services. This performs a validation as well, since
+ getService und getXRD throw exceptions on failure. */
+ $this->services = array();
+
+ foreach (array(OAUTH_DISCOVERY => OMB_Helper::$OAUTH_SERVICES,
+ OMB_VERSION => OMB_Helper::$OMB_SERVICES)
+ as $service_root => $targetservices) {
+ $uris = $xrds->getService($service_root)->getURIs();
+ $xrd = $xrds->getXRD($uris[0]);
+ foreach ($targetservices as $targetservice) {
+ $yadis_service = $xrd->getService($targetservice);
+ if ($targetservice == OAUTH_ENDPOINT_REQUEST) {
+ $localid =
+ $yadis_service->getElements('xrd:LocalID');
+ $this->listener_uri =
+ $yadis_service->parser->content($localid[0]);
+ }
+ $uris = $yadis_service->getURIs();
+ $this->services[$targetservice] = $uris[0];
+ }
}
- $uris = $yadis_service->getURIs();
- $this->services[$targetservice] = $uris[0];
- }
}
- }
-
- /**
- * Get the handler URI for a service
- *
- * Returns the URI the remote web service has specified for the given
- * service.
- *
- * @param string $service The URI identifying the service
- *
- * @access public
- *
- * @return string The service handler URI
- **/
- public function getServiceURI($service) {
- return $this->services[$service];
- }
-
- /**
- * Get the remote user’s URI
- *
- * Returns the URI of the remote user, i. e. the listener.
- *
- * @access public
- *
- * @return string The remote user’s URI
- **/
- public function getRemoteUserURI() {
- return $this->listener_uri;
- }
-
- /**
- * Get the listenee’s URI
- *
- * Returns the URI of the user being subscribed to, i. e. the local user.
- *
- * @access public
- *
- * @return string The local user’s URI
- **/
- public function getListeneeURI() {
- return $this->listenee_uri;
- }
-
- /**
- * Request a request token
- *
- * Performs a token request on the service. Returns an OAuthToken on success.
- * Throws an exception if the request fails.
- *
- * @access public
- *
- * @return OAuthToken An unauthorized request token
- **/
- public function requestToken() {
- /* Set the token to null just in case the user called setToken. */
- $this->token = null;
-
- $result = $this->performAction(OAUTH_ENDPOINT_REQUEST,
- array('omb_listener' => $this->listener_uri));
- if ($result->status != 200) {
- throw OMB_RemoteServiceException::fromYadis(OAUTH_ENDPOINT_REQUEST,
- $result);
+
+ /**
+ * Get the handler URI for a service
+ *
+ * Returns the URI the remote web service has specified for the given
+ * service.
+ *
+ * @param string $service The URI identifying the service
+ *
+ * @access public
+ *
+ * @return string The service handler URI
+ */
+ public function getServiceURI($service)
+ {
+ return $this->services[$service];
}
- parse_str($result->body, $return);
- if (!isset($return['oauth_token']) || !isset($return['oauth_token_secret'])) {
- throw OMB_RemoteServiceException::fromYadis(OAUTH_ENDPOINT_REQUEST,
- $result);
+
+ /**
+ * Get the remote user’s URI
+ *
+ * Returns the URI of the remote user, i. e. the listener.
+ *
+ * @access public
+ *
+ * @return string The remote user’s URI
+ */
+ public function getRemoteUserURI()
+ {
+ return $this->listener_uri;
}
- $this->setToken($return['oauth_token'], $return['oauth_token_secret']);
- return $this->token;
- }
-
- /**
- *
- * Request authorization
- *
- * Returns an URL which equals to an authorization request. The end user
- * should be redirected to this location to perform authorization.
- * The $finish_url should be a local resource which invokes
- * OMB_Consumer::finishAuthorization on request.
- *
- * @param OMB_Profile $profile An OMB_Profile object representing the
- * soon-to-be subscribed (i. e. local) user
- * @param string $finish_url Target location after successful
- * authorization
- *
- * @access public
- *
- * @return string An URL representing an authorization request
- **/
- public function requestAuthorization($profile, $finish_url) {
- if ($this->performLegacyAuthRequest) {
- $params = $profile->asParameters('omb_listenee', false);
- $params['omb_listener'] = $this->listener_uri;
- $params['oauth_callback'] = $finish_url;
-
- $url = $this->prepareAction(OAUTH_ENDPOINT_AUTHORIZE, $params, 'GET')->to_url();
- } else {
-
- $params = array(
- 'oauth_callback' => $finish_url,
- 'oauth_token' => $this->token->key,
- 'omb_version' => OMB_VERSION,
- 'omb_listener' => $this->listener_uri);
-
- $params = array_merge($profile->asParameters('omb_listenee', false). $params);
-
- /* Build result URL. */
- $url = $this->services[OAUTH_ENDPOINT_AUTHORIZE];
- $url .= (strrpos($url, '?') === false ? '?' : '&');
- foreach ($params as $k => $v) {
- $url .= OAuthUtil::urlencode_rfc3986($k) . '=' . OAuthUtil::urlencode_rfc3986($v) . '&';
- }
+
+ /**
+ * Get the listenee’s URI
+ *
+ * Returns the URI of the user being subscribed to, i. e. the local user.
+ *
+ * @access public
+ *
+ * @return string The local user’s URI
+ */
+ public function getListeneeURI()
+ {
+ return $this->listenee_uri;
}
- $this->listenee_uri = $profile->getIdentifierURI();
-
- return $url;
- }
-
- /**
- * Finish authorization
- *
- * Finish the subscription process by converting the received and authorized
- * request token into an access token. After that, the subscriber’s profile
- * and the subscription are stored in the database.
- * Expects an OAuthRequest in query parameters.
- * Throws exceptions on failure.
- *
- * @access public
- **/
- public function finishAuthorization() {
- OMB_Helper::removeMagicQuotesFromRequest();
- $req = OAuthRequest::from_request();
- if ($req->get_parameter('oauth_token') !=
- $this->token->key) {
- /* That’s not the token I wanted to get authorized. */
- throw new OAuthException('The authorized token does not equal the ' .
- 'submitted token.');
+ /**
+ * Request a request token
+ *
+ * Performs a token request on the service. Returns an OAuthToken on success.
+ * Throws an exception if the request fails.
+ *
+ * @access public
+ *
+ * @return OAuthToken An unauthorized request token
+ */
+ public function requestToken()
+ {
+ /* Set the token to null just in case the user called setToken. */
+ $this->token = null;
+
+ $result = $this->performAction(OAUTH_ENDPOINT_REQUEST,
+ array('omb_listener' => $this->listener_uri));
+ if ($result->status != 200) {
+ throw OMB_RemoteServiceException::fromYadis(OAUTH_ENDPOINT_REQUEST,
+ $result);
+ }
+ parse_str($result->body, $return);
+ if (!isset($return['oauth_token']) ||
+ !isset($return['oauth_token_secret'])) {
+ throw OMB_RemoteServiceException::fromYadis(OAUTH_ENDPOINT_REQUEST,
+ $result);
+ }
+ $this->setToken($return['oauth_token'], $return['oauth_token_secret']);
+ return $this->token;
}
- if ($req->get_parameter('omb_version') != OMB_VERSION) {
- throw new OMB_RemoteServiceException('The remote service uses an ' .
- 'unsupported OMB version');
+ /**
+ * Request authorization
+ *
+ * Returns an URL which equals to an authorization request. The end user
+ * should be redirected to this location to perform authorization.
+ * The $finish_url should be a local resource which invokes
+ * OMB_Consumer::finishAuthorization on request.
+ *
+ * @param OMB_Profile $profile An OMB_Profile object representing the
+ * soon-to-be subscribed (i. e. local) user
+ * @param string $finish_url Target location after successful
+ * authorization
+ *
+ * @access public
+ *
+ * @return string An URL representing an authorization request
+ */
+ public function requestAuthorization($profile, $finish_url)
+ {
+ if ($this->performLegacyAuthRequest) {
+ $params = $profile->asParameters('omb_listenee',
+ false);
+ $params['omb_listener'] = $this->listener_uri;
+ $params['oauth_callback'] = $finish_url;
+
+ $url = $this->prepareAction(OAUTH_ENDPOINT_AUTHORIZE, $params,
+ 'GET')->to_url();
+ } else {
+ $params = array('oauth_callback' => $finish_url,
+ 'oauth_token' => $this->token->key,
+ 'omb_version' => OMB_VERSION,
+ 'omb_listener' => $this->listener_uri);
+
+ $params = array_merge($profile->asParameters('omb_listenee', false),
+ $params);
+
+ /* Build result URL. */
+ $url = $this->services[OAUTH_ENDPOINT_AUTHORIZE] .
+ (strrpos($url, '?') === false ? '?' : '&');
+ foreach ($params as $k => $v) {
+ $url .= OAuthUtil::urlencode_rfc3986($k) . '=' .
+ OAuthUtil::urlencode_rfc3986($v) . '&';
+ }
+ }
+
+ $this->listenee_uri = $profile->getIdentifierURI();
+
+ return $url;
}
- /* Construct the profile to validate it. */
+ /**
+ * Finish authorization
+ *
+ * Finish the subscription process by converting the received and authorized
+ * request token into an access token. After that, the subscriber’s profile
+ * and the subscription are stored in the database.
+ * Expects an OAuthRequest in query parameters.
+ * Throws exceptions on failure.
+ *
+ * @access public
+ */
+ public function finishAuthorization()
+ {
+ OMB_Helper::removeMagicQuotesFromRequest();
+ $req = OAuthRequest::from_request();
+ if ($req->get_parameter('oauth_token') != $this->token->key) {
+ /* That’s not the token I wanted to get authorized. */
+ throw new OAuthException('The authorized token does not equal ' .
+ 'the submitted token.');
+ }
+
+ if ($req->get_parameter('omb_version') != OMB_VERSION) {
+ throw new OMB_RemoteServiceException('The remote service uses an ' .
+ 'unsupported OMB version');
+ }
+
+ /* Construct the profile to validate it. */
+
+ /* Fix OMB bug. Listener URI is not passed. */
+ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
+ $params = $_POST;
+ } else {
+ $params = $_GET;
+ }
+ $params['omb_listener'] = $this->listener_uri;
+
+ $listener = OMB_Profile::fromParameters($params, 'omb_listener');
- /* Fix OMB bug. Listener URI is not passed. */
- if ($_SERVER['REQUEST_METHOD'] == 'POST') {
- $params = $_POST;
- } else {
- $params = $_GET;
+ /* Ask the remote service to convert the authorized request token into
+ an access token. */
+
+ $result = $this->performAction(OAUTH_ENDPOINT_ACCESS, array());
+ if ($result->status != 200) {
+ throw new OAuthException('Could not get access token');
+ }
+
+ parse_str($result->body, $return);
+ if (!isset($return['oauth_token']) ||
+ !isset($return['oauth_token_secret'])) {
+ throw new OAuthException('Could not get access token');
+ }
+ $this->setToken($return['oauth_token'], $return['oauth_token_secret']);
+
+ /* Subscription is finished and valid. Now store the new subscriber and
+ the subscription in the database. */
+
+ $this->datastore->saveProfile($listener);
+ $this->datastore->saveSubscription($this->listener_uri,
+ $this->listenee_uri,
+ $this->token);
+ }
+
+ /**
+ * Return the URI identifying the listener
+ *
+ * Returns the URI for the OMB user who tries to subscribe or already has
+ * subscribed our user. This method is a workaround for a serious OMB flaw:
+ * The Listener URI is not passed in the finishauthorization call.
+ *
+ * @access public
+ *
+ * @return string the listener’s URI
+ */
+ public function getListenerURI()
+ {
+ return $this->listener_uri;
}
- $params['omb_listener'] = $this->listener_uri;
- require_once 'profile.php';
- $listener = OMB_Profile::fromParameters($params, 'omb_listener');
+ /**
+ * Inform the service about a profile update
+ *
+ * Sends an updated profile to the service.
+ *
+ * @param OMB_Profile $profile The profile that has changed
+ *
+ * @access public
+ */
+ public function updateProfile($profile)
+ {
+ $params = $profile->asParameters('omb_listenee', true);
+ $this->performOMBAction(OMB_ENDPOINT_UPDATEPROFILE, $params,
+ $profile->getIdentifierURI());
+ }
- /* Ask the remote service to convert the authorized request token into an
- access token. */
+ /**
+ * Inform the service about a new notice
+ *
+ * Sends a notice to the service.
+ *
+ * @param OMB_Notice $notice The notice
+ *
+ * @access public
+ */
+ public function postNotice($notice)
+ {
+ $params = $notice->asParameters();
+ $params['omb_listenee'] = $notice->getAuthor()->getIdentifierURI();
+ $this->performOMBAction(OMB_ENDPOINT_POSTNOTICE, $params,
+ $params['omb_listenee']);
+ }
- $result = $this->performAction(OAUTH_ENDPOINT_ACCESS, array());
- if ($result->status != 200) {
- throw new OAuthException('Could not get access token');
+ /**
+ * Set the token member variable
+ *
+ * Initializes the token based on given token and secret token.
+ *
+ * @param string $token The token
+ * @param string $secret The secret token
+ *
+ * @access public
+ */
+ public function setToken($token, $secret)
+ {
+ $this->token = new OAuthToken($token, $secret);
}
- parse_str($result->body, $return);
- if (!isset($return['oauth_token']) || !isset($return['oauth_token_secret'])) {
- throw new OAuthException('Could not get access token');
+ /**
+ * Prepare an OAuthRequest object
+ *
+ * Creates an OAuthRequest object mapping the request specified by the
+ * parameters.
+ *
+ * @param string $action_uri The URI specifying the target service
+ * @param array $params Additional parameters for the service call
+ * @param string $method The HTTP method used to call the service
+ * ('POST' or 'GET', usually)
+ *
+ * @access protected
+ *
+ * @return OAuthRequest the prepared request
+ */
+ protected function prepareAction($action_uri, $params, $method)
+ {
+ $url = $this->services[$action_uri];
+
+ $url_params = array();
+ parse_str(parse_url($url, PHP_URL_QUERY), $url_params);
+
+ /* Add OMB version. */
+ $url_params['omb_version'] = OMB_VERSION;
+
+ /* Add user-defined parameters. */
+ $url_params = array_merge($url_params, $params);
+
+ $req = OAuthRequest::from_consumer_and_token($this->oauth_consumer,
+ $this->token, $method,
+ $url, $url_params);
+
+ /* Sign the request. */
+ $req->sign_request(new OAuthSignatureMethod_HMAC_SHA1(),
+ $this->oauth_consumer, $this->token);
+
+ return $req;
}
- $this->setToken($return['oauth_token'], $return['oauth_token_secret']);
-
- /* Subscription is finished and valid. Now store the new subscriber and the
- subscription in the database. */
-
- $this->datastore->saveProfile($listener);
- $this->datastore->saveSubscription($this->listener_uri,
- $this->listenee_uri,
- $this->token);
- }
-
- /**
- * Return the URI identifying the listener
- *
- * Returns the URI for the OMB user who tries to subscribe or already has
- * subscribed our user. This method is a workaround for a serious OMB flaw:
- * The Listener URI is not passed in the finishauthorization call.
- *
- * @access public
- *
- * @return string the listener’s URI
- **/
- public function getListenerURI() {
- return $this->listener_uri;
- }
-
- /**
- * Inform the service about a profile update
- *
- * Sends an updated profile to the service.
- *
- * @param OMB_Profile $profile The profile that has changed
- *
- * @access public
- **/
- public function updateProfile($profile) {
- $params = $profile->asParameters('omb_listenee', true);
- $this->performOMBAction(OMB_ENDPOINT_UPDATEPROFILE, $params, $profile->getIdentifierURI());
- }
-
- /**
- * Inform the service about a new notice
- *
- * Sends a notice to the service.
- *
- * @param OMB_Notice $notice The notice
- *
- * @access public
- **/
- public function postNotice($notice) {
- $params = $notice->asParameters();
- $params['omb_listenee'] = $notice->getAuthor()->getIdentifierURI();
- $this->performOMBAction(OMB_ENDPOINT_POSTNOTICE, $params, $params['omb_listenee']);
- }
-
- /**
- * Set the token member variable
- *
- * Initializes the token based on given token and secret token.
- *
- * @param string $token The token
- * @param string $secret The secret token
- *
- * @access public
- **/
- public function setToken($token, $secret) {
- $this->token = new OAuthToken($token, $secret);
- }
-
- /**
- * Prepare an OAuthRequest object
- *
- * Creates an OAuthRequest object mapping the request specified by the
- * parameters.
- *
- * @param string $action_uri The URI specifying the target service
- * @param array $params Additional parameters for the service call
- * @param string $method The HTTP method used to call the service
- * ('POST' or 'GET', usually)
- *
- * @access protected
- *
- * @return OAuthRequest the prepared request
- **/
- protected function prepareAction($action_uri, $params, $method) {
- $url = $this->services[$action_uri];
-
- $url_params = array();
- parse_str(parse_url($url, PHP_URL_QUERY), $url_params);
-
- /* Add OMB version. */
- $url_params['omb_version'] = OMB_VERSION;
-
- /* Add user-defined parameters. */
- $url_params = array_merge($url_params, $params);
-
- $req = OAuthRequest::from_consumer_and_token($this->oauth_consumer,
- $this->token, $method, $url, $url_params);
-
- /* Sign the request. */
- $req->sign_request(new OAuthSignatureMethod_HMAC_SHA1(),
- $this->oauth_consumer, $this->token);
-
- return $req;
- }
-
- /**
- * Perform a service call
- *
- * Creates an OAuthRequest object and execute the mapped call as POST request.
- *
- * @param string $action_uri The URI specifying the target service
- * @param array $params Additional parameters for the service call
- *
- * @access protected
- *
- * @return Auth_Yadis_HTTPResponse The POST request response
- **/
- protected function performAction($action_uri, $params) {
- $req = $this->prepareAction($action_uri, $params, 'POST');
-
- /* Return result page. */
- return $this->fetcher->post($req->get_normalized_http_url(), $req->to_postdata(), array());
- }
-
- /**
- * Perform an OMB action
- *
- * Executes an OMB action – to date, it’s one of updateProfile or postNotice.
- *
- * @param string $action_uri The URI specifying the target service
- * @param array $params Additional parameters for the service call
- * @param string $listenee_uri The URI identifying the local user for whom
- * the action is performed
- *
- * @access protected
- **/
- protected function performOMBAction($action_uri, $params, $listenee_uri) {
- $result = $this->performAction($action_uri, $params);
- if ($result->status == 403) {
- /* The remote user unsubscribed us. */
- $this->datastore->deleteSubscription($this->listener_uri, $listenee_uri);
- } else if ($result->status != 200 ||
- strpos($result->body, 'omb_version=' . OMB_VERSION) === false) {
- /* The server signaled an error or sent an incorrect response. */
- throw OMB_RemoteServiceException::fromYadis($action_uri, $result);
+
+ /**
+ * Perform a service call
+ *
+ * Creates an OAuthRequest object and execute the mapped call as POST
+ * request.
+ *
+ * @param string $action_uri The URI specifying the target service
+ * @param array $params Additional parameters for the service call
+ *
+ * @access protected
+ *
+ * @return Auth_Yadis_HTTPResponse The POST request response
+ */
+ protected function performAction($action_uri, $params)
+ {
+ $req = $this->prepareAction($action_uri, $params, 'POST');
+
+ /* Return result page. */
+ return $this->fetcher->post($req->get_normalized_http_url(),
+ $req->to_postdata(), array());
+ }
+
+ /**
+ * Perform an OMB action
+ *
+ * Executes an OMB action – as of OMB 0.1, it’s one of updateProfile and
+ * postNotice.
+ *
+ * @param string $action_uri The URI specifying the target service
+ * @param array $params Additional parameters for the service call
+ * @param string $listenee_uri The URI identifying the local user for whom
+ * the action is performed
+ *
+ * @access protected
+ */
+ protected function performOMBAction($action_uri, $params, $listenee_uri)
+ {
+ $result = $this->performAction($action_uri, $params);
+ if ($result->status == 403) {
+ /* The remote user unsubscribed us. */
+ $this->datastore->deleteSubscription($this->listener_uri,
+ $listenee_uri);
+ } else if ($result->status != 200 ||
+ strpos($result->body, 'omb_version=' . OMB_VERSION) === false) {
+ /* The server signaled an error or sent an incorrect response. */
+ throw OMB_RemoteServiceException::fromYadis($action_uri, $result);
+ }
}
- }
}
+?>
diff --git a/extlib/libomb/service_provider.php b/extlib/libomb/service_provider.php
index a1c69e86f..9a1a488a6 100755
--- a/extlib/libomb/service_provider.php
+++ b/extlib/libomb/service_provider.php
@@ -1,13 +1,6 @@
<?php
-
-require_once 'constants.php';
-require_once 'remoteserviceexception.php';
-require_once 'helper.php';
-
/**
- * OMB service realization
- *
- * This class realizes a complete, simple OMB service.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -24,406 +17,445 @@ require_once 'helper.php';
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-
-class OMB_Service_Provider {
- protected $user; /* An OMB_Profile representing the user */
- protected $datastore; /* AN OMB_Datastore */
-
- protected $remote_user; /* An OMB_Profile representing the remote user during
- the authorization process */
-
- protected $oauth_server; /* An OAuthServer; should only be accessed via
- getOAuthServer. */
-
- /**
- * Initialize an OMB_Service_Provider object
- *
- * Constructs an OMB_Service_Provider instance that provides OMB services
- * referring to a particular user.
- *
- * @param OMB_Profile $user An OMB_Profile; mandatory for XRDS
- * output, user auth handling and OMB
- * action performing
- * @param OMB_Datastore $datastore An OMB_Datastore; mandatory for
- * everything but XRDS output
- * @param OAuthServer $oauth_server An OAuthServer; used for token writing
- * and OMB action handling; will use
- * default value if not set
- *
- * @access public
- **/
- public function __construct ($user = null, $datastore = null, $oauth_server = null) {
- $this->user = $user;
- $this->datastore = $datastore;
- $this->oauth_server = $oauth_server;
- }
-
- public function getRemoteUser() {
- return $this->remote_user;
- }
-
- /**
- * Write a XRDS document
- *
- * Writes a XRDS document specifying the OMB service. Optionally uses a
- * given object of a class implementing OMB_XRDS_Writer for output. Else
- * OMB_Plain_XRDS_Writer is used.
- *
- * @param OMB_XRDS_Mapper $xrds_mapper An object mapping actions to URLs
- * @param OMB_XRDS_Writer $xrds_writer Optional; The OMB_XRDS_Writer used to
- * write the XRDS document
- *
- * @access public
- *
- * @return mixed Depends on the used OMB_XRDS_Writer; OMB_Plain_XRDS_Writer
- * returns nothing.
- **/
- public function writeXRDS($xrds_mapper, $xrds_writer = null) {
- if ($xrds_writer == null) {
- require_once 'plain_xrds_writer.php';
- $xrds_writer = new OMB_Plain_XRDS_Writer();
- }
- return $xrds_writer->writeXRDS($this->user, $xrds_mapper);
- }
-
- /**
- * Echo a request token
- *
- * Outputs an unauthorized request token for the query found in $_GET or
- * $_POST.
- *
- * @access public
- **/
- public function writeRequestToken() {
- OMB_Helper::removeMagicQuotesFromRequest();
- echo $this->getOAuthServer()->fetch_request_token(OAuthRequest::from_request());
- }
-
- /**
- * Handle an user authorization request.
- *
- * Parses an authorization request. This includes OAuth and OMB verification.
- * Throws exceptions on failures. Returns an OMB_Profile object representing
- * the remote user.
- *
- * The OMB_Profile passed to the constructor of OMB_Service_Provider should
- * not represent the user specified in the authorization request, but the one
- * currently logged in to the service. This condition being satisfied,
- * handleUserAuth will check whether the listener specified in the request is
- * identical to the logged in user.
- *
- * @access public
- *
- * @return OMB_Profile The profile of the soon-to-be subscribed, i. e. remote
- * user
- **/
- public function handleUserAuth() {
- OMB_Helper::removeMagicQuotesFromRequest();
-
- /* Verify the request token. */
-
- $this->token = $this->datastore->lookup_token(null, "request", $_GET['oauth_token']);
- if (is_null($this->token)) {
- throw new OAuthException('The given request token has not been issued ' .
- 'by this service.');
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+
+require_once 'constants.php';
+require_once 'helper.php';
+require_once 'notice.php';
+require_once 'remoteserviceexception.php';
+
+/**
+ * OMB service realization
+ *
+ * This class realizes a complete, simple OMB service.
+ */
+class OMB_Service_Provider
+{
+ protected $user; /* An OMB_Profile representing the user */
+ protected $datastore; /* AN OMB_Datastore */
+
+ protected $remote_user; /* An OMB_Profile representing the remote user
+ during the authorization process */
+
+ protected $oauth_server; /* An OAuthServer; should only be accessed via
+ getOAuthServer. */
+
+ /**
+ * Initialize an OMB_Service_Provider object
+ *
+ * Constructs an OMB_Service_Provider instance that provides OMB services
+ * referring to a particular user.
+ *
+ * @param OMB_Profile $user An OMB_Profile; mandatory for XRDS
+ * output, user auth handling and OMB
+ * action performing
+ * @param OMB_Datastore $datastore An OMB_Datastore; mandatory for
+ * everything but XRDS output
+ * @param OAuthServer $oauth_server An OAuthServer; used for token writing
+ * and OMB action handling; will use
+ * default value if not set
+ *
+ * @access public
+ */
+ public function __construct ($user = null, $datastore = null,
+ $oauth_server = null)
+ {
+ $this->user = $user;
+ $this->datastore = $datastore;
+ $this->oauth_server = $oauth_server;
}
- /* Verify the OMB part. */
+ /**
+ * Return the remote user during user authorization
+ *
+ * Returns an OMB_Profile representing the remote user during the user
+ * authorization request.
+ *
+ * @return OMB_Profile The remote user
+ */
+ public function getRemoteUser()
+ {
+ return $this->remote_user;
+ }
- if ($_GET['omb_version'] !== OMB_VERSION) {
- throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
- 'Wrong OMB version ' . $_GET['omb_version']);
+ /**
+ * Write a XRDS document
+ *
+ * Writes a XRDS document specifying the OMB service. Optionally uses a
+ * given object of a class implementing OMB_XRDS_Writer for output. Else
+ * OMB_Plain_XRDS_Writer is used.
+ *
+ * @param OMB_XRDS_Mapper $xrds_mapper An object mapping actions to URLs
+ * @param OMB_XRDS_Writer $xrds_writer Optional; The OMB_XRDS_Writer used to
+ * write the XRDS document
+ *
+ * @access public
+ *
+ * @return mixed Depends on the used OMB_XRDS_Writer; OMB_Plain_XRDS_Writer
+ * returns nothing.
+ */
+ public function writeXRDS($xrds_mapper, $xrds_writer = null)
+ {
+ if ($xrds_writer == null) {
+ require_once 'plain_xrds_writer.php';
+ $xrds_writer = new OMB_Plain_XRDS_Writer();
+ }
+ return $xrds_writer->writeXRDS($this->user, $xrds_mapper);
}
- if ($_GET['omb_listener'] !== $this->user->getIdentifierURI()) {
- throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
- 'Wrong OMB listener ' . $_GET['omb_listener']);
+ /**
+ * Echo a request token
+ *
+ * Outputs an unauthorized request token for the query found in $_GET or
+ * $_POST.
+ *
+ * @access public
+ */
+ public function writeRequestToken()
+ {
+ OMB_Helper::removeMagicQuotesFromRequest();
+ echo $this->getOAuthServer()->fetch_request_token(
+ OAuthRequest::from_request());
}
- foreach (array('omb_listenee', 'omb_listenee_profile',
- 'omb_listenee_nickname', 'omb_listenee_license') as $param) {
- if (!isset($_GET[$param]) || is_null($_GET[$param])) {
- throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
+ /**
+ * Handle an user authorization request.
+ *
+ * Parses an authorization request. This includes OAuth and OMB
+ * verification.
+ * Throws exceptions on failures. Returns an OMB_Profile object representing
+ * the remote user.
+ *
+ * The OMB_Profile passed to the constructor of OMB_Service_Provider should
+ * not represent the user specified in the authorization request, but the
+ * one currently logged in to the service. This condition being satisfied,
+ * handleUserAuth will check whether the listener specified in the request
+ * is identical to the logged in user.
+ *
+ * @access public
+ *
+ * @return OMB_Profile The profile of the soon-to-be subscribed, i. e.
+ * remote user
+ */
+ public function handleUserAuth()
+ {
+ OMB_Helper::removeMagicQuotesFromRequest();
+
+ /* Verify the request token. */
+
+ $this->token = $this->datastore->lookup_token(null, "request",
+ $_GET['oauth_token']);
+ if (is_null($this->token)) {
+ throw new OAuthException('The given request token has not been ' .
+ 'issued by this service.');
+ }
+
+ /* Verify the OMB part. */
+
+ if ($_GET['omb_version'] !== OMB_VERSION) {
+ throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
+ 'Wrong OMB version ' .
+ $_GET['omb_version']);
+ }
+
+ if ($_GET['omb_listener'] !== $this->user->getIdentifierURI()) {
+ throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
+ 'Wrong OMB listener ' .
+ $_GET['omb_listener']);
+ }
+
+ foreach (array('omb_listenee', 'omb_listenee_profile',
+ 'omb_listenee_nickname', 'omb_listenee_license') as $param) {
+ if (!isset($_GET[$param]) || is_null($_GET[$param])) {
+ throw OMB_RemoteServiceException::forRequest(
+ OAUTH_ENDPOINT_AUTHORIZE,
"Required parameter '$param' not found");
- }
- }
+ }
+ }
- /* Store given callback for later use. */
- if (isset($_GET['oauth_callback']) && $_GET['oauth_callback'] !== '') {
- $this->callback = $_GET['oauth_callback'];
- if (!OMB_Helper::validateURL($this->callback)) {
- throw OMB_RemoteServiceException::forRequest(OAUTH_ENDPOINT_AUTHORIZE,
- 'Invalid callback URL specified');
- }
+ /* Store given callback for later use. */
+ if (isset($_GET['oauth_callback']) && $_GET['oauth_callback'] !== '') {
+ $this->callback = $_GET['oauth_callback'];
+ if (!OMB_Helper::validateURL($this->callback)) {
+ throw OMB_RemoteServiceException::forRequest(
+ OAUTH_ENDPOINT_AUTHORIZE,
+ 'Invalid callback URL specified');
+ }
+ }
+ $this->remote_user = OMB_Profile::fromParameters($_GET, 'omb_listenee');
+
+ return $this->remote_user;
}
- $this->remote_user = OMB_Profile::fromParameters($_GET, 'omb_listenee');
-
- return $this->remote_user;
- }
-
- /**
- * Continue the OAuth dance after user authorization
- *
- * Performs the appropriate actions after user answered the authorization
- * request.
- *
- * @param bool $accepted Whether the user granted authorization
- *
- * @access public
- *
- * @return array A two-component array with the values:
- * - callback The callback URL or null if none given
- * - token The authorized request token or null if not
- * authorized.
- **/
- public function continueUserAuth($accepted) {
- $callback = $this->callback;
- if (!$accepted) {
- $this->datastore->revoke_token($this->token->key);
- $this->token = null;
- /* TODO: The handling is probably wrong in terms of OAuth 1.0 but the way
- laconica works. Moreover I don’t know the right way either. */
-
- } else {
- $this->datastore->authorize_token($this->token->key);
- $this->datastore->saveProfile($this->remote_user);
- $this->datastore->saveSubscription($this->user->getIdentifierURI(),
- $this->remote_user->getIdentifierURI(), $this->token);
-
- if (!is_null($this->callback)) {
- /* Callback wants to get some informations as well. */
- $params = $this->user->asParameters('omb_listener', false);
-
- $params['oauth_token'] = $this->token->key;
- $params['omb_version'] = OMB_VERSION;
-
- $callback .= (parse_url($this->callback, PHP_URL_QUERY) ? '&' : '?');
- foreach ($params as $k => $v) {
- $callback .= OAuthUtil::urlencode_rfc3986($k) . '=' .
- OAuthUtil::urlencode_rfc3986($v) . '&';
+
+ /**
+ * Continue the OAuth dance after user authorization
+ *
+ * Performs the appropriate actions after user answered the authorization
+ * request.
+ *
+ * @param bool $accepted Whether the user granted authorization
+ *
+ * @access public
+ *
+ * @return array A two-component array with the values:
+ * - callback The callback URL or null if none given
+ * - token The authorized request token or null if not
+ * authorized.
+ */
+ public function continueUserAuth($accepted)
+ {
+ $callback = $this->callback;
+ if (!$accepted) {
+ $this->datastore->revoke_token($this->token->key);
+ $this->token = null;
+
+ } else {
+ $this->datastore->authorize_token($this->token->key);
+ $this->datastore->saveProfile($this->remote_user);
+ $this->datastore->saveSubscription($this->user->getIdentifierURI(),
+ $this->remote_user->getIdentifierURI(),
+ $this->token);
+
+ if (!is_null($this->callback)) {
+ /* Callback wants to get some informations as well. */
+ $params = $this->user->asParameters('omb_listener', false);
+
+ $params['oauth_token'] = $this->token->key;
+ $params['omb_version'] = OMB_VERSION;
+
+ $callback .= (parse_url($this->callback, PHP_URL_QUERY) ? '&' : '?');
+ foreach ($params as $k => $v) {
+ $callback .= OAuthUtil::urlencode_rfc3986($k) . '=' .
+ OAuthUtil::urlencode_rfc3986($v) . '&';
+ }
+ }
}
- }
+ return array($callback, $this->token);
}
- return array($callback, $this->token);
- }
-
- /**
- * Echo an access token
- *
- * Outputs an access token for the query found in $_POST. OMB 0.1 specifies
- * that the access token request has to be a POST even if OAuth allows GET as
- * well.
- *
- * @access public
- **/
- public function writeAccessToken() {
- OMB_Helper::removeMagicQuotesFromRequest();
- echo $this->getOAuthServer()->fetch_access_token(
+
+ /**
+ * Echo an access token
+ *
+ * Outputs an access token for the query found in $_POST. OMB 0.1 specifies
+ * that the access token request has to be a POST even if OAuth allows GET
+ * as well.
+ *
+ * @access public
+ */
+ public function writeAccessToken()
+ {
+ OMB_Helper::removeMagicQuotesFromRequest();
+ echo $this->getOAuthServer()->fetch_access_token(
OAuthRequest::from_request('POST'));
- }
-
- /**
- * Handle an updateprofile request
- *
- * Handles an updateprofile request posted to this service. Updates the
- * profile through the OMB_Datastore.
- *
- * @access public
- *
- * @return OMB_Profile The updated profile
- **/
- public function handleUpdateProfile() {
- list($req, $profile) = $this->handleOMBRequest(OMB_ENDPOINT_UPDATEPROFILE);
- $profile->updateFromParameters($req->get_parameters(), 'omb_listenee');
- $this->datastore->saveProfile($profile);
- $this->finishOMBRequest();
- return $profile;
- }
-
- /**
- * Handle a postnotice request
- *
- * Handles a postnotice request posted to this service. Saves the notice
- * through the OMB_Datastore.
- *
- * @access public
- *
- * @return OMB_Notice The received notice
- **/
- public function handlePostNotice() {
- list($req, $profile) = $this->handleOMBRequest(OMB_ENDPOINT_POSTNOTICE);
- require_once 'notice.php';
- $notice = OMB_Notice::fromParameters($profile, $req->get_parameters());
- $this->datastore->saveNotice($notice);
- $this->finishOMBRequest();
- return $notice;
- }
-
- /**
- * Handle an OMB request
- *
- * Performs common OMB request handling.
- *
- * @param string $uri The URI defining the OMB endpoint being served
- *
- * @access protected
- *
- * @return array(OAuthRequest, OMB_Profile)
- **/
- protected function handleOMBRequest($uri) {
-
- OMB_Helper::removeMagicQuotesFromRequest();
- $req = OAuthRequest::from_request('POST');
- $listenee = $req->get_parameter('omb_listenee');
-
- try {
- list($consumer, $token) = $this->getOAuthServer()->verify_request($req);
- } catch (OAuthException $e) {
- header('HTTP/1.1 403 Forbidden');
- // @debug hack
- throw OMB_RemoteServiceException::forRequest($uri,
- 'Revoked accesstoken for ' . $listenee . ': ' . $e->getMessage());
- // @end debug
- throw OMB_RemoteServiceException::forRequest($uri,
- 'Revoked accesstoken for ' . $listenee);
}
- $version = $req->get_parameter('omb_version');
- if ($version !== OMB_VERSION) {
- header('HTTP/1.1 400 Bad Request');
- throw OMB_RemoteServiceException::forRequest($uri,
- 'Wrong OMB version ' . $version);
+ /**
+ * Handle an updateprofile request
+ *
+ * Handles an updateprofile request posted to this service. Updates the
+ * profile through the OMB_Datastore.
+ *
+ * @access public
+ *
+ * @return OMB_Profile The updated profile
+ */
+ public function handleUpdateProfile()
+ {
+ list($req, $profile) = $this->handleOMBRequest(OMB_ENDPOINT_UPDATEPROFILE);
+ $profile->updateFromParameters($req->get_parameters(), 'omb_listenee');
+ $this->datastore->saveProfile($profile);
+ $this->finishOMBRequest();
+ return $profile;
}
- $profile = $this->datastore->getProfile($listenee);
- if (is_null($profile)) {
- header('HTTP/1.1 400 Bad Request');
- throw OMB_RemoteServiceException::forRequest($uri,
- 'Unknown remote profile ' . $listenee);
+ /**
+ * Handle a postnotice request
+ *
+ * Handles a postnotice request posted to this service. Saves the notice
+ * through the OMB_Datastore.
+ *
+ * @access public
+ *
+ * @return OMB_Notice The received notice
+ */
+ public function handlePostNotice()
+ {
+ list($req, $profile) = $this->handleOMBRequest(OMB_ENDPOINT_POSTNOTICE);
+
+ $notice = OMB_Notice::fromParameters($profile, $req->get_parameters());
+ $this->datastore->saveNotice($notice);
+ $this->finishOMBRequest();
+
+ return $notice;
}
- $subscribers = $this->datastore->getSubscriptions($listenee);
- if (count($subscribers) === 0) {
- header('HTTP/1.1 403 Forbidden');
- throw OMB_RemoteServiceException::forRequest($uri,
- 'No subscriber for ' . $listenee);
- }
+ /**
+ * Handle an OMB request
+ *
+ * Performs common OMB request handling.
+ *
+ * @param string $uri The URI defining the OMB endpoint being served
+ *
+ * @access protected
+ *
+ * @return array(OAuthRequest, OMB_Profile)
+ */
+ protected function handleOMBRequest($uri)
+ {
+ OMB_Helper::removeMagicQuotesFromRequest();
+ $req = OAuthRequest::from_request('POST');
+ $listenee = $req->get_parameter('omb_listenee');
+
+ try {
+ list($consumer, $token) = $this->getOAuthServer()->verify_request($req);
+ } catch (OAuthException $e) {
+ header('HTTP/1.1 403 Forbidden');
+ throw OMB_RemoteServiceException::forRequest($uri,
+ 'Revoked accesstoken for ' . $listenee);
+ }
- return array($req, $profile);
- }
-
- /**
- * Finishes an OMB request handling
- *
- * Performs common OMB request handling finishing.
- *
- * @access protected
- **/
- protected function finishOMBRequest() {
- header('HTTP/1.1 200 OK');
- header('Content-type: text/plain');
- /* There should be no clutter but the version. */
- echo "omb_version=" . OMB_VERSION;
- }
-
- /**
- * Return an OAuthServer
- *
- * Checks whether the OAuthServer is null. If so, initializes it with a
- * default value. Returns the OAuth server.
- *
- * @access protected
- **/
- protected function getOAuthServer() {
- if (is_null($this->oauth_server)) {
- $this->oauth_server = new OAuthServer($this->datastore);
- $this->oauth_server->add_signature_method(
- new OAuthSignatureMethod_HMAC_SHA1());
+ $version = $req->get_parameter('omb_version');
+ if ($version !== OMB_VERSION) {
+ header('HTTP/1.1 400 Bad Request');
+ throw OMB_RemoteServiceException::forRequest($uri,
+ 'Wrong OMB version ' . $version);
+ }
+
+ $profile = $this->datastore->getProfile($listenee);
+ if (is_null($profile)) {
+ header('HTTP/1.1 400 Bad Request');
+ throw OMB_RemoteServiceException::forRequest($uri,
+ 'Unknown remote profile ' . $listenee);
+ }
+
+ $subscribers = $this->datastore->getSubscriptions($listenee);
+ if (count($subscribers) === 0) {
+ header('HTTP/1.1 403 Forbidden');
+ throw OMB_RemoteServiceException::forRequest($uri,
+ 'No subscriber for ' . $listenee);
+ }
+
+ return array($req, $profile);
}
- return $this->oauth_server;
- }
-
- /**
- * Publish a notice
- *
- * Posts an OMB notice. This includes storing the notice and posting it to
- * subscribed users.
- *
- * @param OMB_Notice $notice The new notice
- *
- * @access public
- *
- * @return array An array mapping subscriber URIs to the exception posting to
- * them has raised; Empty array if no exception occured
- **/
- public function postNotice($notice) {
- $uri = $this->user->getIdentifierURI();
-
- /* $notice is passed by reference and may change. */
- $this->datastore->saveNotice($notice);
- $subscribers = $this->datastore->getSubscriptions($uri);
-
- /* No one to post to. */
- if (is_null($subscribers)) {
- return array();
+
+ /**
+ * Finishes an OMB request handling
+ *
+ * Performs common OMB request handling finishing.
+ *
+ * @access protected
+ */
+ protected function finishOMBRequest()
+ {
+ header('HTTP/1.1 200 OK');
+ header('Content-type: text/plain');
+ /* There should be no clutter but the version. */
+ echo "omb_version=" . OMB_VERSION;
}
- require_once 'service_consumer.php';
-
- $err = array();
- foreach($subscribers as $subscriber) {
- try {
- $service = new OMB_Service_Consumer($subscriber['uri'], $uri, $this->datastore);
- $service->setToken($subscriber['token'], $subscriber['secret']);
- $service->postNotice($notice);
- } catch (Exception $e) {
- $err[$subscriber['uri']] = $e;
- continue;
- }
+ /**
+ * Return an OAuthServer
+ *
+ * Checks whether the OAuthServer is null. If so, initializes it with a
+ * default value. Returns the OAuth server.
+ *
+ * @access protected
+ */
+ protected function getOAuthServer()
+ {
+ if (is_null($this->oauth_server)) {
+ $this->oauth_server = new OAuthServer($this->datastore);
+ $this->oauth_server->add_signature_method(
+ new OAuthSignatureMethod_HMAC_SHA1());
+ }
+ return $this->oauth_server;
}
- return $err;
- }
-
- /**
- * Publish a profile update
- *
- * Posts the current profile as an OMB profile update. This includes updating
- * the stored profile and posting it to subscribed users.
- *
- * @access public
- *
- * @return array An array mapping subscriber URIs to the exception posting to
- * them has raised; Empty array if no exception occured
- **/
- public function updateProfile() {
- $uri = $this->user->getIdentifierURI();
-
- $this->datastore->saveProfile($this->user);
- $subscribers = $this->datastore->getSubscriptions($uri);
-
- /* No one to post to. */
- if (is_null($subscribers)) {
- return array();
+
+ /**
+ * Publish a notice
+ *
+ * Posts an OMB notice. This includes storing the notice and posting it to
+ * subscribed users.
+ *
+ * @param OMB_Notice $notice The new notice
+ *
+ * @access public
+ *
+ * @return array An array mapping subscriber URIs to the exception posting
+ * to them has raised; Empty array if no exception occured
+ */
+ public function postNotice($notice)
+ {
+ $uri = $this->user->getIdentifierURI();
+
+ /* $notice is passed by reference and may change. */
+ $this->datastore->saveNotice($notice);
+ $subscribers = $this->datastore->getSubscriptions($uri);
+
+ /* No one to post to. */
+ if (is_null($subscribers)) {
+ return array();
+ }
+
+ require_once 'service_consumer.php';
+
+ $err = array();
+ foreach ($subscribers as $subscriber) {
+ try {
+ $service = new OMB_Service_Consumer($subscriber['uri'], $uri,
+ $this->datastore);
+ $service->setToken($subscriber['token'], $subscriber['secret']);
+ $service->postNotice($notice);
+ } catch (Exception $e) {
+ $err[$subscriber['uri']] = $e;
+ continue;
+ }
+ }
+ return $err;
}
- require_once 'service_consumer.php';
-
- $err = array();
- foreach($subscribers as $subscriber) {
- try {
- $service = new OMB_Service_Consumer($subscriber['uri'], $uri, $this->datastore);
- $service->setToken($subscriber['token'], $subscriber['secret']);
- $service->updateProfile($this->user);
- } catch (Exception $e) {
- $err[$subscriber['uri']] = $e;
- continue;
- }
+ /**
+ * Publish a profile update
+ *
+ * Posts the current profile as an OMB profile update. This includes
+ * updating the stored profile and posting it to subscribed users.
+ *
+ * @access public
+ *
+ * @return array An array mapping subscriber URIs to the exception posting
+ * to them has raised; Empty array if no exception occured
+ */
+ public function updateProfile()
+ {
+ $uri = $this->user->getIdentifierURI();
+
+ $this->datastore->saveProfile($this->user);
+ $subscribers = $this->datastore->getSubscriptions($uri);
+
+ /* No one to post to. */
+ if (is_null($subscribers)) {
+ return array();
+ }
+
+ require_once 'service_consumer.php';
+
+ $err = array();
+ foreach ($subscribers as $subscriber) {
+ try {
+ $service = new OMB_Service_Consumer($subscriber['uri'], $uri,
+ $this->datastore);
+ $service->setToken($subscriber['token'], $subscriber['secret']);
+ $service->updateProfile($this->user);
+ } catch (Exception $e) {
+ $err[$subscriber['uri']] = $e;
+ continue;
+ }
+ }
+ return $err;
}
- return $err;
- }
}
diff --git a/extlib/libomb/unsupportedserviceexception.php b/extlib/libomb/unsupportedserviceexception.php
index 4dab63ebe..be30a1f69 100755
--- a/extlib/libomb/unsupportedserviceexception.php
+++ b/extlib/libomb/unsupportedserviceexception.php
@@ -1,9 +1,6 @@
<?php
/**
- * Exception stating that a requested service is not available
- *
- * This exception is raised when OMB_Service is asked to call a service the remote
- * server does not provide.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -20,12 +17,20 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
-class OMB_UnsupportedServiceException extends Exception {
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
+/**
+ * Exception stating that a requested service is not available
+ *
+ * This exception is raised when OMB_Service is asked to call a service the
+ * remote server does not provide.
+ */
+class OMB_UnsupportedServiceException extends Exception
+{
}
?>
diff --git a/extlib/libomb/xrds_mapper.php b/extlib/libomb/xrds_mapper.php
index 7552154e5..8fbe65249 100755
--- a/extlib/libomb/xrds_mapper.php
+++ b/extlib/libomb/xrds_mapper.php
@@ -1,10 +1,6 @@
<?php
/**
- * Map XRDS actions to URLs
- *
- * This interface specifies classes which write the XRDS file announcing
- * the OMB server. An instance of an implementing class should be passed to
- * OMB_Service_Provider->writeXRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -21,13 +17,31 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
-interface OMB_XRDS_Mapper {
- public function getURL($action);
+/**
+ * Map XRDS actions to URLs
+ *
+ * This interface specifies classes which write the XRDS file announcing
+ * the OMB server. An instance of an implementing class should be passed to
+ * OMB_Service_Provider->writeXRDS.
+ */
+interface OMB_XRDS_Mapper
+{
+ /**
+ * Fetch an URL for a specified action
+ *
+ * Returns the action URL for an action specified by the endpoint URI.
+ *
+ * @param string $action The endpoint URI
+ *
+ * @return string The action URL
+ */
+ public function getURL($action);
}
?>
diff --git a/extlib/libomb/xrds_writer.php b/extlib/libomb/xrds_writer.php
index 31b451b9c..c7939d60a 100755
--- a/extlib/libomb/xrds_writer.php
+++ b/extlib/libomb/xrds_writer.php
@@ -1,10 +1,6 @@
<?php
/**
- * Write OMB-specific XRDS
- *
- * This interface specifies classes which write the XRDS file announcing
- * the OMB server. An instance of an implementing class should be passed to
- * OMB_Service_Provider->writeXRDS.
+ * This file is part of libomb
*
* PHP version 5
*
@@ -21,13 +17,30 @@
* 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 OMB
- * @author Adrian Lang <mail@adrianlang.de>
- * @copyright 2009 Adrian Lang
- * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
- **/
+ * @package OMB
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @license http://www.gnu.org/licenses/agpl.html GNU AGPL 3.0
+ * @version 0.1a-20090828
+ * @link http://adrianlang.de/libomb
+ */
-interface OMB_XRDS_Writer {
- public function writeXRDS($user, $mapper);
+/**
+ * Write OMB-specific XRDS
+ *
+ * This interface specifies classes which write the XRDS file announcing
+ * the OMB server. An instance of an implementing class should be passed to
+ * OMB_Service_Provider->writeXRDS.
+ */
+interface OMB_XRDS_Writer
+{
+ /**
+ * Write XRDS
+ *
+ * Outputs a XRDS document specifying an OMB service.
+ *
+ * @param OMB_profile $user The target user for the OMB service
+ * @param OMB_XRDS_Mapper $mapper An OMB_XRDS_Mapper providing endpoint URLs
+ */
+ public function writeXRDS($user, $mapper);
}
?>
diff --git a/htaccess.sample b/htaccess.sample
index 18a868698..fa09b30f6 100644
--- a/htaccess.sample
+++ b/htaccess.sample
@@ -1,12 +1,17 @@
<IfModule mod_rewrite.c>
RewriteEngine On
- # NOTE: change this to your actual StatusNet path; may be "/".
-
+ # NOTE: change this to your actual StatusNet base URL path,
+ # minus the domain part:
+ #
+ # http://example.com/ => /
+ # http://example.com/mublog/ => /mublog/
+ #
RewriteBase /mublog/
## Uncomment these if having trouble with API authentication
## when PHP is running in CGI or FastCGI mode.
+ #
#RewriteCond %{HTTP:Authorization} ^(.*)
#RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
diff --git a/index.php b/index.php
index 36ba3a0d2..bf6cf7c00 100644
--- a/index.php
+++ b/index.php
@@ -19,16 +19,20 @@
* @category StatusNet
* @package StatusNet
* @author Brenda Wallace <shiny@cpan.org>
+ * @author Brion Vibber <brion@pobox.com>
* @author Christopher Vollick <psycotica0@gmail.com>
* @author CiaranG <ciaran@ciarang.com>
* @author Craig Andrews <candrews@integralblue.com>
* @author Evan Prodromou <evan@controlezvous.ca>
* @author Gina Haeussge <osd@foosel.net>
+ * @author James Walker <walkah@walkah.net>
* @author Jeffery To <jeffery.to@gmail.com>
* @author Mike Cochrane <mikec@mikenz.geek.nz>
* @author Robin Millette <millette@controlyourself.ca>
* @author Sarven Capadisli <csarven@controlyourself.ca>
* @author Tom Adams <tom@holizz.com>
+ * @author Zach Copley <zach@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
*
* @license GNU Affero General Public License http://www.gnu.org/licenses/
*/
@@ -185,7 +189,7 @@ function checkMirror($action_obj, $args)
function isLoginAction($action)
{
- static $loginActions = array('login', 'recoverpassword', 'api', 'doc', 'register', 'publicxrds', 'otp');
+ static $loginActions = array('login', 'recoverpassword', 'api', 'doc', 'register', 'publicxrds', 'otp', 'opensearch', 'rsd');
$login = null;
@@ -324,10 +328,10 @@ function main()
$cac = new ClientErrorAction($cex->getMessage(), $cex->getCode());
$cac->showPage();
} catch (ServerException $sex) { // snort snort guffaw
- $sac = new ServerErrorAction($sex->getMessage(), $sex->getCode());
+ $sac = new ServerErrorAction($sex->getMessage(), $sex->getCode(), $sex);
$sac->showPage();
} catch (Exception $ex) {
- $sac = new ServerErrorAction($ex->getMessage());
+ $sac = new ServerErrorAction($ex->getMessage(), 500, $ex);
$sac->showPage();
}
}
diff --git a/install.php b/install.php
index 9a7e27fa2..158d51fa3 100644
--- a/install.php
+++ b/install.php
@@ -1,8 +1,7 @@
-
<?php
/**
* StatusNet - the distributed open-source microblogging tool
- * Copyright (C) 2009, StatusNet, Inc.
+ * 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
@@ -32,6 +31,7 @@
* @author Sarven Capadisli <csarven@status.net>
* @author Tom Adams <tom@holizz.com>
* @author Zach Copley <zach@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license GNU Affero General Public License http://www.gnu.org/licenses/
* @version 0.9.x
* @link http://status.net
@@ -39,880 +39,246 @@
define('INSTALLDIR', dirname(__FILE__));
-$external_libraries=array(
- array(
- 'name'=>'gettext',
- 'url'=>'http://us.php.net/manual/en/book.gettext.php',
- 'check_function'=>'gettext'
- ),
- array(
- 'name'=>'PEAR',
- 'url'=>'http://pear.php.net/',
- 'deb'=>'php-pear',
- 'include'=>'PEAR.php',
- 'check_class'=>'PEAR'
- ),
- array(
- 'name'=>'DB',
- 'pear'=>'DB',
- 'url'=>'http://pear.php.net/package/DB',
- 'deb'=>'php-db',
- 'include'=>'DB/common.php',
- 'check_class'=>'DB_common'
- ),
- array(
- 'name'=>'DB_DataObject',
- 'pear'=>'DB_DataObject',
- 'url'=>'http://pear.php.net/package/DB_DataObject',
- 'include'=>'DB/DataObject.php',
- 'check_class'=>'DB_DataObject'
- ),
- array(
- 'name'=>'Console_Getopt',
- 'pear'=>'Console_Getopt',
- 'url'=>'http://pear.php.net/package/Console_Getopt',
- 'include'=>'Console/Getopt.php',
- 'check_class'=>'Console_Getopt'
- ),
- array(
- 'name'=>'Facebook API',
- 'url'=>'http://developers.facebook.com/',
- 'include'=>'facebook/facebook.php',
- 'check_class'=>'Facebook'
- ),
- array(
- 'name'=>'htmLawed',
- 'url'=>'http://www.bioinformatics.org/phplabware/internal_utilities/htmLawed',
- 'include'=>'htmLawed/htmLawed.php',
- 'check_function'=>'htmLawed'
- ),
- array(
- 'name'=>'HTTP_Request',
- 'pear'=>'HTTP_Request',
- 'url'=>'http://pear.php.net/package/HTTP_Request',
- 'deb'=>'php-http-request',
- 'include'=>'HTTP/Request.php',
- 'check_class'=>'HTTP_Request'
- ),
- array(
- 'name'=>'HTTP_Request2',
- 'pear'=>'HTTP_Request2',
- 'url'=>'http://pear.php.net/package/HTTP_Request2',
- 'include'=>'HTTP/Request2.php',
- 'check_class'=>'HTTP_Request2'
- ),
- array(
- 'name'=>'Mail',
- 'pear'=>'Mail',
- 'url'=>'http://pear.php.net/package/Mail',
- 'deb'=>'php-mail',
- 'include'=>'Mail.php',
- 'check_class'=>'Mail'
- ),
- array(
- 'name'=>'Mail_mimeDecode',
- 'pear'=>'Mail_mimeDecode',
- 'url'=>'http://pear.php.net/package/Mail_mimeDecode',
- 'deb'=>'php-mail-mimedecode',
- 'include'=>'Mail/mimeDecode.php',
- 'check_class'=>'Mail_mimeDecode'
- ),
- array(
- 'name'=>'Mime_Type',
- 'pear'=>'Mime_Type',
- 'url'=>'http://pear.php.net/package/Mime_Type',
- 'include'=>'MIME/Type.php',
- 'check_class'=>'Mime_Type'
- ),
- array(
- 'name'=>'Net_URL_Mapper',
- 'pear'=>'Net_URL_Mapper',
- 'url'=>'http://pear.php.net/package/Net_URL_Mapper',
- 'include'=>'Net/URL/Mapper.php',
- 'check_class'=>'Net_URL_Mapper'
- ),
- array(
- 'name'=>'Net_LDAP2',
- 'pear'=>'Net_LDAP2',
- 'url'=>'http://pear.php.net/package/Net_LDAP2',
- 'deb'=>'php-net-ldap2',
- 'include'=>'Net/LDAP2.php',
- 'check_class'=>'Net_LDAP2'
- ),
- array(
- 'name'=>'Net_Socket',
- 'pear'=>'Net_Socket',
- 'url'=>'http://pear.php.net/package/Net_Socket',
- 'deb'=>'php-net-socket',
- 'include'=>'Net/Socket.php',
- 'check_class'=>'Net_Socket'
- ),
- array(
- 'name'=>'Net_SMTP',
- 'pear'=>'Net_SMTP',
- 'url'=>'http://pear.php.net/package/Net_SMTP',
- 'deb'=>'php-net-smtp',
- 'include'=>'Net/SMTP.php',
- 'check_class'=>'Net_SMTP'
- ),
- array(
- 'name'=>'Net_URL',
- 'pear'=>'Net_URL',
- 'url'=>'http://pear.php.net/package/Net_URL',
- 'deb'=>'php-net-url',
- 'include'=>'Net/URL.php',
- 'check_class'=>'Net_URL'
- ),
- array(
- 'name'=>'Net_URL2',
- 'pear'=>'Net_URL2',
- 'url'=>'http://pear.php.net/package/Net_URL2',
- 'include'=>'Net/URL2.php',
- 'check_class'=>'Net_URL2'
- ),
- array(
- 'name'=>'Services_oEmbed',
- 'pear'=>'Services_oEmbed',
- 'url'=>'http://pear.php.net/package/Services_oEmbed',
- 'include'=>'Services/oEmbed.php',
- 'check_class'=>'Services_oEmbed'
- ),
- array(
- 'name'=>'Stomp',
- 'url'=>'http://stomp.codehaus.org/PHP',
- 'include'=>'Stomp.php',
- 'check_class'=>'Stomp'
- ),
- array(
- 'name'=>'System_Command',
- 'pear'=>'System_Command',
- 'url'=>'http://pear.php.net/package/System_Command',
- 'include'=>'System/Command.php',
- 'check_class'=>'System_Command'
- ),
- array(
- 'name'=>'XMPPHP',
- 'url'=>'http://code.google.com/p/xmpphp',
- 'include'=>'XMPPHP/XMPP.php',
- 'check_class'=>'XMPPHP_XMPP'
- ),
- array(
- 'name'=>'PHP Markdown',
- 'url'=>'http://www.michelf.com/projects/php-markdown/',
- 'include'=>'markdown.php',
- 'check_class'=>'Markdown_Parser'
- ),
- array(
- 'name'=>'OAuth',
- 'url'=>'http://code.google.com/p/oauth-php',
- 'include'=>'OAuth.php',
- 'check_class'=>'OAuthRequest'
- ),
- array(
- 'name'=>'Validate',
- 'pear'=>'Validate',
- 'url'=>'http://pear.php.net/package/Validate',
- 'include'=>'Validate.php',
- 'check_class'=>'Validate'
- )
-);
-$dbModules = array(
- 'mysql' => array(
- 'name' => 'MySQL',
- 'check_module' => 'mysql', // mysqli?
- 'installer' => 'mysql_db_installer',
- ),
- 'pgsql' => array(
- 'name' => 'PostgreSQL',
- 'check_module' => 'pgsql',
- 'installer' => 'pgsql_db_installer',
- ),
-);
+require INSTALLDIR . '/lib/installer.php';
/**
- * the actual installation.
- * If call libraries are present, then install
- *
- * @return void
+ * Helper class for building form
*/
-function main()
-{
- if (!checkPrereqs()) {
- return;
- }
-
- if (!empty($_GET['checklibs'])) {
- showLibs();
- } else {
- if ($_SERVER['REQUEST_METHOD'] == 'POST') {
- handlePost();
+class Posted {
+ function value($name)
+ {
+ if (isset($_POST[$name])) {
+ return htmlspecialchars(strval($_POST[$name]));
} else {
- showForm();
+ return '';
}
}
}
/**
- * checks if an external libary is present
- *
- * @param string $external_library Name of library
- *
- * @return boolean indicates if library present
- */
-function haveExternalLibrary($external_library)
-{
- if (isset($external_library['include']) && !haveIncludeFile($external_library['include'])) {
- return false;
- }
- if (isset($external_library['check_function']) && ! function_exists($external_library['check_function'])) {
- return false;
- }
- if (isset($external_library['check_class']) && ! class_exists($external_library['check_class'])) {
- return false;
- }
- return true;
-}
-
-// Attempt to include a PHP file and report if it worked, while
-// suppressing the annoying warning messages on failure.
-function haveIncludeFile($filename) {
- $old = error_reporting(error_reporting() & ~E_WARNING);
- $ok = include_once($filename);
- error_reporting($old);
- return $ok;
-}
-
-/**
- * Check if all is ready for installation
- *
- * @return void
+ * Web-based installer: provides a form and such.
*/
-function checkPrereqs()
+class WebInstaller extends Installer
{
- $pass = true;
-
- if (file_exists(INSTALLDIR.'/config.php')) {
- printf('<p class="error">Config file &quot;config.php&quot; already exists.</p>');
- $pass = false;
- }
-
- if (version_compare(PHP_VERSION, '5.2.3', '<')) {
- printf('<p class="error">Require PHP version 5.2.3 or greater.</p>');
- $pass = false;
- }
-
- // Look for known library bugs
- $str = "abcdefghijklmnopqrstuvwxyz";
- $replaced = preg_replace('/[\p{Cc}\p{Cs}]/u', '*', $str);
- if ($str != $replaced) {
- printf('<p class="error">PHP is linked to a version of the PCRE library ' .
- 'that does not support Unicode properties. ' .
- 'If you are running Red Hat Enterprise Linux / ' .
- 'CentOS 5.4 or earlier, see <a href="' .
- 'http://status.net/wiki/Red_Hat_Enterprise_Linux#PCRE_library' .
- '">our documentation page</a> on fixing this.</p>');
- $pass = false;
- }
-
- $reqs = array('gd', 'curl',
- 'xmlwriter', 'mbstring', 'xml', 'dom', 'simplexml');
-
- foreach ($reqs as $req) {
- if (!checkExtension($req)) {
- printf('<p class="error">Cannot load required extension: <code>%s</code></p>', $req);
- $pass = false;
- }
- }
- // Make sure we have at least one database module available
- global $dbModules;
- $missingExtensions = array();
- foreach ($dbModules as $type => $info) {
- if (!checkExtension($info['check_module'])) {
- $missingExtensions[] = $info['check_module'];
+ /**
+ * the actual installation.
+ * If call libraries are present, then install
+ *
+ * @return void
+ */
+ function main()
+ {
+ if (!$this->checkPrereqs()) {
+ $this->showForm();
+ return;
}
- }
-
- if (count($missingExtensions) == count($dbModules)) {
- $req = implode(', ', $missingExtensions);
- printf('<p class="error">Cannot find mysql or pgsql extension. You need one or the other.');
- $pass = false;
- }
-
- if (!is_writable(INSTALLDIR)) {
- printf('<p class="error">Cannot write config file to: <code>%s</code></p>', INSTALLDIR);
- printf('<p>On your server, try this command: <code>chmod a+w %s</code>', INSTALLDIR);
- $pass = false;
- }
- // Check the subdirs used for file uploads
- $fileSubdirs = array('avatar', 'background', 'file');
- foreach ($fileSubdirs as $fileSubdir) {
- $fileFullPath = INSTALLDIR."/$fileSubdir/";
- if (!is_writable($fileFullPath)) {
- printf('<p class="error">Cannot write to %s directory: <code>%s</code></p>', $fileSubdir, $fileFullPath);
- printf('<p>On your server, try this command: <code>chmod a+w %s</code></p>', $fileFullPath);
- $pass = false;
+ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
+ $this->handlePost();
+ } else {
+ $this->showForm();
}
}
- return $pass;
-}
-
-/**
- * Checks if a php extension is both installed and loaded
- *
- * @param string $name of extension to check
- *
- * @return boolean whether extension is installed and loaded
- */
-function checkExtension($name)
-{
- if (extension_loaded($name)) {
- return true;
- } elseif (function_exists('dl') && ini_get('enable_dl') && !ini_get('safe_mode')) {
- // dl will throw a fatal error if it's disabled or we're in safe mode.
- // More fun, it may not even exist under some SAPIs in 5.3.0 or later...
- $soname = $name . '.' . PHP_SHLIB_SUFFIX;
- if (PHP_SHLIB_SUFFIX == 'dll') {
- $soname = "php_" . $soname;
+ /**
+ * Web implementation of warning output
+ */
+ function warning($message, $submessage='')
+ {
+ print "<p class=\"error\">$message</p>\n";
+ if ($submessage != '') {
+ print "<p>$submessage</p>\n";
}
- return @dl($soname);
- } else {
- return false;
}
-}
-/**
- * Show list of libraries
- *
- * @return void
- */
-function showLibs()
-{
- global $external_libraries;
- $present_libraries=array();
- $absent_libraries=array();
- foreach ($external_libraries as $external_library) {
- if (haveExternalLibrary($external_library)) {
- $present_libraries[]=$external_library;
- } else {
- $absent_libraries[]=$external_library;
- }
- }
- echo<<<E_O_T
- <div class="instructions">
- <p>StatusNet comes bundled with a number of libraries required for the application to work. However, it is best that you use PEAR or you distribution to manage
- libraries instead, as they tend to provide security updates faster, and may offer improved performance.</p>
- <p>On Debian based distributions, such as Ubuntu, use a package manager (such as &quot;aptitude&quot;, &quot;apt-get&quot;, and &quot;synaptic&quot;) to install the package listed.</p>
- <p>On RPM based distributions, such as Red Hat, Fedora, CentOS, Scientific Linux, Yellow Dog Linux and Oracle Enterprise Linux, use a package manager (such as &quot;yum&quot;, &quot;apt-rpm&quot;, and &quot;up2date&quot;) to install the package listed.</p>
- <p>On servers without a package manager (such as Windows), or if the library is not packaged for your distribution, you can use PHP's PEAR to install the library. Simply run &quot;pear install &lt;name&gt;&quot;.</p>
- </div>
- <h2>Absent Libraries</h2>
- <ul id="absent_libraries">
-E_O_T;
- foreach ($absent_libraries as $library) {
- echo '<li>';
- if (isset($library['url'])) {
- echo '<a href="'.$library['url'].'">'.htmlentities($library['name']).'</a>';
- } else {
- echo htmlentities($library['name']);
- }
- echo '<ul>';
- if (isset($library['deb'])) {
- echo '<li class="deb package">deb: <a href="apt:' . urlencode($library['deb']) . '">' . htmlentities($library['deb']) . '</a></li>';
- }
- if (isset($library['rpm'])) {
- echo '<li class="rpm package">rpm: ' . htmlentities($library['rpm']) . '</li>';
- }
- if (isset($library['pear'])) {
- echo '<li class="pear package">pear: ' . htmlentities($library['pear']) . '</li>';
- }
- echo '</ul>';
- }
- echo<<<E_O_T
- </ul>
- <h2>Installed Libraries</h2>
- <ul id="present_libraries">
-E_O_T;
- foreach ($present_libraries as $library) {
- echo '<li>';
- if (isset($library['url'])) {
- echo '<a href="'.$library['url'].'">'.htmlentities($library['name']).'</a>';
- } else {
- echo htmlentities($library['name']);
- }
- echo '</li>';
+ /**
+ * Web implementation of status output
+ */
+ function updateStatus($status, $error=false)
+ {
+ echo '<li' . ($error ? ' class="error"': '' ) . ">$status</li>";
}
- echo<<<E_O_T
- </ul>
-E_O_T;
-}
-/**
- * Helper class for building form
- */
-class Posted {
- function value($name)
+ /**
+ * Show the web form!
+ */
+ function showForm()
{
- if (isset($_POST[$name])) {
- return htmlspecialchars(strval($_POST[$name]));
+ global $dbModules;
+ $post = new Posted();
+ $dbRadios = '';
+ if (isset($_POST['dbtype'])) {
+ $dbtype = $_POST['dbtype'];
} else {
- return '';
+ $dbtype = null;
}
- }
-}
-
-function showForm()
-{
- global $dbModules;
- $post = new Posted();
- $dbRadios = '';
- if (isset($_POST['dbtype'])) {
- $dbtype = $_POST['dbtype'];
- } else {
- $dbtype = null;
- }
- foreach ($dbModules as $type => $info) {
- if (checkExtension($info['check_module'])) {
- if ($dbtype == null || $dbtype == $type) {
- $checked = 'checked="checked" ';
- $dbtype = $type; // if we didn't have one checked, hit the first
- } else {
- $checked = '';
+ foreach (self::$dbModules as $type => $info) {
+ if ($this->checkExtension($info['check_module'])) {
+ if ($dbtype == null || $dbtype == $type) {
+ $checked = 'checked="checked" ';
+ $dbtype = $type; // if we didn't have one checked, hit the first
+ } else {
+ $checked = '';
+ }
+ $dbRadios .= "<input type=\"radio\" name=\"dbtype\" id=\"dbtype-$type\" value=\"$type\" $checked/> $info[name]<br />\n";
}
- $dbRadios .= "<input type=\"radio\" name=\"dbtype\" id=\"dbtype-$type\" value=\"$type\" $checked/> $info[name]<br />\n";
}
- }
- echo<<<E_O_T
- </ul>
- </dd>
-</dl>
-<form method="post" action="install.php" class="form_settings" id="form_install">
- <fieldset>
- <fieldset id="settings_site">
- <legend>Site settings</legend>
- <ul class="form_data">
- <li>
- <label for="sitename">Site name</label>
- <input type="text" id="sitename" name="sitename" value="{$post->value('sitename')}" />
- <p class="form_guide">The name of your site</p>
- </li>
- <li>
- <label for="fancy-enable">Fancy URLs</label>
- <input type="radio" name="fancy" id="fancy-enable" value="enable" checked='checked' /> enable<br />
- <input type="radio" name="fancy" id="fancy-disable" value="" /> disable<br />
- <p class="form_guide" id='fancy-form_guide'>Enable fancy (pretty) URLs. Auto-detection failed, it depends on Javascript.</p>
- </li>
- </ul>
+ echo<<<E_O_T
+ <form method="post" action="install.php" class="form_settings" id="form_install">
+ <fieldset>
+ <fieldset id="settings_site">
+ <legend>Site settings</legend>
+ <ul class="form_data">
+ <li>
+ <label for="sitename">Site name</label>
+ <input type="text" id="sitename" name="sitename" value="{$post->value('sitename')}" />
+ <p class="form_guide">The name of your site</p>
+ </li>
+ <li>
+ <label for="fancy-enable">Fancy URLs</label>
+ <input type="radio" name="fancy" id="fancy-enable" value="enable" checked='checked' /> enable<br />
+ <input type="radio" name="fancy" id="fancy-disable" value="" /> disable<br />
+ <p class="form_guide" id='fancy-form_guide'>Enable fancy (pretty) URLs. Auto-detection failed, it depends on Javascript.</p>
+ </li>
+ </ul>
+ </fieldset>
+
+ <fieldset id="settings_db">
+ <legend>Database settings</legend>
+ <ul class="form_data">
+ <li>
+ <label for="host">Hostname</label>
+ <input type="text" id="host" name="host" value="{$post->value('host')}" />
+ <p class="form_guide">Database hostname</p>
+ </li>
+ <li>
+ <label for="dbtype">Type</label>
+ $dbRadios
+ <p class="form_guide">Database type</p>
+ </li>
+ <li>
+ <label for="database">Name</label>
+ <input type="text" id="database" name="database" value="{$post->value('database')}" />
+ <p class="form_guide">Database name</p>
+ </li>
+ <li>
+ <label for="dbusername">DB username</label>
+ <input type="text" id="dbusername" name="dbusername" value="{$post->value('dbusername')}" />
+ <p class="form_guide">Database username</p>
+ </li>
+ <li>
+ <label for="dbpassword">DB password</label>
+ <input type="password" id="dbpassword" name="dbpassword" value="{$post->value('dbpassword')}" />
+ <p class="form_guide">Database password (optional)</p>
+ </li>
+ </ul>
+ </fieldset>
+
+ <fieldset id="settings_admin">
+ <legend>Administrator settings</legend>
+ <ul class="form_data">
+ <li>
+ <label for="admin_nickname">Administrator nickname</label>
+ <input type="text" id="admin_nickname" name="admin_nickname" value="{$post->value('admin_nickname')}" />
+ <p class="form_guide">Nickname for the initial StatusNet user (administrator)</p>
+ </li>
+ <li>
+ <label for="admin_password">Administrator password</label>
+ <input type="password" id="admin_password" name="admin_password" value="{$post->value('admin_password')}" />
+ <p class="form_guide">Password for the initial StatusNet user (administrator)</p>
+ </li>
+ <li>
+ <label for="admin_password2">Confirm password</label>
+ <input type="password" id="admin_password2" name="admin_password2" value="{$post->value('admin_password2')}" />
+ </li>
+ <li>
+ <label for="admin_email">Administrator e-mail</label>
+ <input id="admin_email" name="admin_email" value="{$post->value('admin_email')}" />
+ <p class="form_guide">Optional email address for the initial StatusNet user (administrator)</p>
+ </li>
+ <li>
+ <label for="admin_updates">Subscribe to announcements</label>
+ <input type="checkbox" id="admin_updates" name="admin_updates" value="true" checked="checked" />
+ <p class="form_guide">Release and security feed from <a href="http://update.status.net/">update@status.net</a> (recommended)</p>
+ </li>
+ </ul>
+ </fieldset>
+ <input type="submit" name="submit" class="submit" value="Submit" />
</fieldset>
-
- <fieldset id="settings_db">
- <legend>Database settings</legend>
- <ul class="form_data">
- <li>
- <label for="host">Hostname</label>
- <input type="text" id="host" name="host" value="{$post->value('host')}" />
- <p class="form_guide">Database hostname</p>
- </li>
- <li>
- <label for="dbtype">Type</label>
- $dbRadios
- <p class="form_guide">Database type</p>
- </li>
- <li>
- <label for="database">Name</label>
- <input type="text" id="database" name="database" value="{$post->value('database')}" />
- <p class="form_guide">Database name</p>
- </li>
- <li>
- <label for="dbusername">DB username</label>
- <input type="text" id="dbusername" name="dbusername" value="{$post->value('dbusername')}" />
- <p class="form_guide">Database username</p>
- </li>
- <li>
- <label for="dbpassword">DB password</label>
- <input type="password" id="dbpassword" name="dbpassword" value="{$post->value('dbpassword')}" />
- <p class="form_guide">Database password (optional)</p>
- </li>
- </ul>
- </fieldset>
-
- <fieldset id="settings_admin">
- <legend>Administrator settings</legend>
- <ul class="form_data">
- <li>
- <label for="admin_nickname">Administrator nickname</label>
- <input type="text" id="admin_nickname" name="admin_nickname" value="{$post->value('admin_nickname')}" />
- <p class="form_guide">Nickname for the initial StatusNet user (administrator)</p>
- </li>
- <li>
- <label for="admin_password">Administrator password</label>
- <input type="password" id="admin_password" name="admin_password" value="{$post->value('admin_password')}" />
- <p class="form_guide">Password for the initial StatusNet user (administrator)</p>
- </li>
- <li>
- <label for="admin_password2">Confirm password</label>
- <input type="password" id="admin_password2" name="admin_password2" value="{$post->value('admin_password2')}" />
- </li>
- <li>
- <label for="admin_email">Administrator e-mail</label>
- <input id="admin_email" name="admin_email" value="{$post->value('admin_email')}" />
- <p class="form_guide">Optional email address for the initial StatusNet user (administrator)</p>
- </li>
- <li>
- <label for="admin_updates">Subscribe to announcements</label>
- <input type="checkbox" id="admin_updates" name="admin_updates" value="true" checked="checked" />
- <p class="form_guide">Release and security feed from <a href="http://update.status.net/">update@status.net</a> (recommended)</p>
- </li>
- </ul>
- </fieldset>
- <input type="submit" name="submit" class="submit" value="Submit" />
- </fieldset>
-</form>
+ </form>
E_O_T;
-}
-
-function updateStatus($status, $error=false)
-{
- echo '<li' . ($error ? ' class="error"': '' ) . ">$status</li>";
-}
-
-function handlePost()
-{
- $host = $_POST['host'];
- $dbtype = $_POST['dbtype'];
- $database = $_POST['database'];
- $username = $_POST['dbusername'];
- $password = $_POST['dbpassword'];
- $sitename = $_POST['sitename'];
- $fancy = !empty($_POST['fancy']);
-
- $adminNick = strtolower($_POST['admin_nickname']);
- $adminPass = $_POST['admin_password'];
- $adminPass2 = $_POST['admin_password2'];
- $adminEmail = $_POST['admin_email'];
- $adminUpdates = $_POST['admin_updates'];
-
- $server = $_SERVER['HTTP_HOST'];
- $path = substr(dirname($_SERVER['PHP_SELF']), 1);
-
- echo <<<STR
- <dl class="system_notice">
- <dt>Page notice</dt>
- <dd>
- <ul>
-STR;
- $fail = false;
-
- if (empty($host)) {
- updateStatus("No hostname specified.", true);
- $fail = true;
- }
-
- if (empty($database)) {
- updateStatus("No database specified.", true);
- $fail = true;
- }
-
- if (empty($username)) {
- updateStatus("No username specified.", true);
- $fail = true;
- }
-
- if (empty($sitename)) {
- updateStatus("No sitename specified.", true);
- $fail = true;
- }
-
- if (empty($adminNick)) {
- updateStatus("No initial StatusNet user nickname specified.", true);
- $fail = true;
- }
- if ($adminNick && !preg_match('/^[0-9a-z]{1,64}$/', $adminNick)) {
- updateStatus('The user nickname "' . htmlspecialchars($adminNick) .
- '" is invalid; should be plain letters and numbers no longer than 64 characters.', true);
- $fail = true;
- }
- // @fixme hardcoded list; should use User::allowed_nickname()
- // if/when it's safe to have loaded the infrastructure here
- $blacklist = array('main', 'admin', 'twitter', 'settings', 'rsd.xml', 'favorited', 'featured', 'favoritedrss', 'featuredrss', 'rss', 'getfile', 'api', 'groups', 'group', 'peopletag', 'tag', 'user', 'message', 'conversation', 'bookmarklet', 'notice', 'attachment', 'search', 'index.php', 'doc', 'opensearch', 'robots.txt', 'xd_receiver.html', 'facebook');
- if (in_array($adminNick, $blacklist)) {
- updateStatus('The user nickname "' . htmlspecialchars($adminNick) .
- '" is reserved.', true);
- $fail = true;
- }
-
- if (empty($adminPass)) {
- updateStatus("No initial StatusNet user password specified.", true);
- $fail = true;
- }
-
- if ($adminPass != $adminPass2) {
- updateStatus("Administrator passwords do not match. Did you mistype?", true);
- $fail = true;
- }
-
- if ($fail) {
- showForm();
- return;
- }
-
- global $dbModules;
- $db = call_user_func($dbModules[$dbtype]['installer'], $host, $database, $username, $password);
-
- if (!$db) {
- // database connection failed, do not move on to create config file.
- return false;
- }
-
- updateStatus("Writing config file...");
- $res = writeConf($sitename, $server, $path, $fancy, $db);
-
- if (!$res) {
- updateStatus("Can't write config file.", true);
- showForm();
- return;
- }
-
- // Okay, cross fingers and try to register an initial user
- if (registerInitialUser($adminNick, $adminPass, $adminEmail, $adminUpdates)) {
- updateStatus(
- "An initial user with the administrator role has been created."
- );
- } else {
- updateStatus(
- "Could not create initial StatusNet user (administrator).",
- true
- );
- showForm();
- return;
- }
-
- /*
- TODO https needs to be considered
- */
- $link = "http://".$server.'/'.$path;
-
- updateStatus("StatusNet has been installed at $link");
- updateStatus(
- "<strong>DONE!</strong> You can visit your <a href='$link'>new StatusNet site</a> (login as '$adminNick'). If this is your first StatusNet install, you may want to poke around our <a href='http://status.net/wiki/Getting_started'>Getting Started guide</a>."
- );
-}
-
-function Pgsql_Db_installer($host, $database, $username, $password)
-{
- $connstring = "dbname=$database host=$host user=$username";
-
- //No password would mean trust authentication used.
- if (!empty($password)) {
- $connstring .= " password=$password";
- }
- updateStatus("Starting installation...");
- updateStatus("Checking database...");
- $conn = pg_connect($connstring);
-
- if ($conn ===false) {
- updateStatus("Failed to connect to database: $connstring");
- showForm();
- return false;
}
- //ensure database encoding is UTF8
- $record = pg_fetch_object(pg_query($conn, 'SHOW server_encoding'));
- if ($record->server_encoding != 'UTF8') {
- updateStatus("StatusNet requires UTF8 character encoding. Your database is ". htmlentities($record->server_encoding));
- showForm();
- return false;
- }
-
- updateStatus("Running database script...");
- //wrap in transaction;
- pg_query($conn, 'BEGIN');
- $res = runDbScript(INSTALLDIR.'/db/statusnet_pg.sql', $conn, 'pgsql');
-
- if ($res === false) {
- updateStatus("Can't run database script.", true);
- showForm();
- return false;
- }
- foreach (array('sms_carrier' => 'SMS carrier',
- 'notice_source' => 'notice source',
- 'foreign_services' => 'foreign service')
- as $scr => $name) {
- updateStatus(sprintf("Adding %s data to database...", $name));
- $res = runDbScript(INSTALLDIR.'/db/'.$scr.'.sql', $conn, 'pgsql');
- if ($res === false) {
- updateStatus(sprintf("Can't run %d script.", $name), true);
- showForm();
- return false;
+ /**
+ * Handle a POST submission... if we have valid input, start the install!
+ * Otherwise shows the form along with any error messages.
+ */
+ function handlePost()
+ {
+ echo <<<STR
+ <dl class="system_notice">
+ <dt>Page notice</dt>
+ <dd>
+ <ul>
+STR;
+ $this->validated = $this->prepare();
+ if ($this->validated) {
+ $this->doInstall();
}
- }
- pg_query($conn, 'COMMIT');
-
- if (empty($password)) {
- $sqlUrl = "pgsql://$username@$host/$database";
- } else {
- $sqlUrl = "pgsql://$username:$password@$host/$database";
- }
-
- $db = array('type' => 'pgsql', 'database' => $sqlUrl);
-
- return $db;
-}
-
-function Mysql_Db_installer($host, $database, $username, $password)
-{
- updateStatus("Starting installation...");
- updateStatus("Checking database...");
-
- $conn = mysql_connect($host, $username, $password);
- if (!$conn) {
- updateStatus("Can't connect to server '$host' as '$username'.", true);
- showForm();
- return false;
- }
- updateStatus("Changing to database...");
- $res = mysql_select_db($database, $conn);
- if (!$res) {
- updateStatus("Can't change to database.", true);
- showForm();
- return false;
- }
- updateStatus("Running database script...");
- $res = runDbScript(INSTALLDIR.'/db/statusnet.sql', $conn);
- if ($res === false) {
- updateStatus("Can't run database script.", true);
- showForm();
- return false;
- }
- foreach (array('sms_carrier' => 'SMS carrier',
- 'notice_source' => 'notice source',
- 'foreign_services' => 'foreign service')
- as $scr => $name) {
- updateStatus(sprintf("Adding %s data to database...", $name));
- $res = runDbScript(INSTALLDIR.'/db/'.$scr.'.sql', $conn);
- if ($res === false) {
- updateStatus(sprintf("Can't run %d script.", $name), true);
- showForm();
- return false;
+ echo <<<STR
+ </ul>
+ </dd>
+ </dl>
+STR;
+ if (!$this->validated) {
+ $this->showForm();
}
}
- $sqlUrl = "mysqli://$username:$password@$host/$database";
- $db = array('type' => 'mysql', 'database' => $sqlUrl);
- return $db;
-}
-
-function writeConf($sitename, $server, $path, $fancy, $db)
-{
- // assemble configuration file in a string
- $cfg = "<?php\n".
- "if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }\n\n".
-
- // site name
- "\$config['site']['name'] = '$sitename';\n\n".
-
- // site location
- "\$config['site']['server'] = '$server';\n".
- "\$config['site']['path'] = '$path'; \n\n".
-
- // checks if fancy URLs are enabled
- ($fancy ? "\$config['site']['fancy'] = true;\n\n":'').
-
- // database
- "\$config['db']['database'] = '{$db['database']}';\n\n".
- ($db['type'] == 'pgsql' ? "\$config['db']['quote_identifiers'] = true;\n\n":'').
- "\$config['db']['type'] = '{$db['type']}';\n\n";
- // write configuration file out to install directory
- $res = file_put_contents(INSTALLDIR.'/config.php', $cfg);
-
- return $res;
-}
-
-/**
- * Install schema into the database
- *
- * @param string $filename location of database schema file
- * @param dbconn $conn connection to database
- * @param string $type type of database, currently mysql or pgsql
- *
- * @return boolean - indicating success or failure
- */
-function runDbScript($filename, $conn, $type = 'mysqli')
-{
- $sql = trim(file_get_contents($filename));
- $stmts = explode(';', $sql);
- foreach ($stmts as $stmt) {
- $stmt = trim($stmt);
- if (!mb_strlen($stmt)) {
- continue;
- }
- // FIXME: use PEAR::DB or PDO instead of our own switch
- switch ($type) {
- case 'mysqli':
- $res = mysql_query($stmt, $conn);
- if ($res === false) {
- $error = mysql_error();
- }
- break;
- case 'pgsql':
- $res = pg_query($conn, $stmt);
- if ($res === false) {
- $error = pg_last_error();
- }
- break;
- default:
- updateStatus("runDbScript() error: unknown database type ". $type ." provided.");
- }
- if ($res === false) {
- updateStatus("ERROR ($error) for SQL '$stmt'");
- return $res;
+ /**
+ * Read and validate input data.
+ * May output side effects.
+ *
+ * @return boolean success
+ */
+ function prepare()
+ {
+ $this->host = $_POST['host'];
+ $this->dbtype = $_POST['dbtype'];
+ $this->database = $_POST['database'];
+ $this->username = $_POST['dbusername'];
+ $this->password = $_POST['dbpassword'];
+ $this->sitename = $_POST['sitename'];
+ $this->fancy = !empty($_POST['fancy']);
+
+ $this->adminNick = strtolower($_POST['admin_nickname']);
+ $this->adminPass = $_POST['admin_password'];
+ $adminPass2 = $_POST['admin_password2'];
+ $this->adminEmail = $_POST['admin_email'];
+ $this->adminUpdates = $_POST['admin_updates'];
+
+ $this->server = $_SERVER['HTTP_HOST'];
+ $this->path = substr(dirname($_SERVER['PHP_SELF']), 1);
+
+ $fail = false;
+ if (!$this->validateDb()) {
+ $fail = true;
}
- }
- return true;
-}
-function registerInitialUser($nickname, $password, $email, $adminUpdates)
-{
- define('STATUSNET', true);
- define('LACONICA', true); // compatibility
-
- require_once INSTALLDIR . '/lib/common.php';
-
- $data = array('nickname' => $nickname,
- 'password' => $password,
- 'fullname' => $nickname);
- if ($email) {
- $data['email'] = $email;
- }
- $user = User::register($data);
-
- if (empty($user)) {
- return false;
- }
-
- // give initial user carte blanche
-
- $user->grantRole('owner');
- $user->grantRole('moderator');
- $user->grantRole('administrator');
-
- // Attempt to do a remote subscribe to update@status.net
- // Will fail if instance is on a private network.
-
- if (class_exists('Ostatus_profile') && $adminUpdates) {
- try {
- $oprofile = Ostatus_profile::ensureProfile('http://update.status.net/');
- Subscription::start($user->getProfile(), $oprofile->localProfile());
- updateStatus("Set up subscription to <a href='http://update.status.net/'>update@status.net</a>.");
- } catch (Exception $e) {
- updateStatus("Could not set up subscription to <a href='http://update.status.net/'>update@status.net</a>.");
+ if (!$this->validateAdmin()) {
+ $fail = true;
}
+
+ if ($this->adminPass != $adminPass2) {
+ $this->updateStatus("Administrator passwords do not match. Did you mistype?", true);
+ $fail = true;
+ }
+
+ return !$fail;
}
- return true;
}
?>
@@ -945,7 +311,10 @@ PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
<div id="content">
<div id="content_inner">
<h1>Install StatusNet</h1>
-<?php main(); ?>
+<?php
+$installer = new WebInstaller();
+$installer->main();
+?>
</div>
</div>
</div>
diff --git a/js/util.js b/js/util.js
index 3efda0d7b..6a67da4bc 100644
--- a/js/util.js
+++ b/js/util.js
@@ -61,10 +61,8 @@ var SN = { // StatusNet
U: { // Utils
FormNoticeEnhancements: function(form) {
- form_id = form.attr('id');
-
if (jQuery.data(form[0], 'ElementData') === undefined) {
- MaxLength = $('#'+form_id+' #'+SN.C.S.NoticeTextCount).text();
+ MaxLength = form.find('#'+SN.C.S.NoticeTextCount).text();
if (typeof(MaxLength) == 'undefined') {
MaxLength = SN.C.I.MaxLength;
}
@@ -72,7 +70,7 @@ var SN = { // StatusNet
SN.U.Counter(form);
- NDT = $('#'+form_id+' #'+SN.C.S.NoticeDataText);
+ NDT = form.find('#'+SN.C.S.NoticeDataText);
NDT.bind('keyup', function(e) {
SN.U.Counter(form);
@@ -83,11 +81,11 @@ var SN = { // StatusNet
});
}
else {
- $('#'+form_id+' #'+SN.C.S.NoticeTextCount).text(jQuery.data(form[0], 'ElementData').MaxLength);
+ form.find('#'+SN.C.S.NoticeTextCount).text(jQuery.data(form[0], 'ElementData').MaxLength);
}
- if ($('body')[0].id != 'conversation') {
- $('#'+form_id+' textarea').focus();
+ if ($('body')[0].id != 'conversation' && window.location.hash.length === 0 && $(window).scrollTop() == 0) {
+ form.find('textarea').focus();
}
},
@@ -105,7 +103,6 @@ var SN = { // StatusNet
Counter: function(form) {
SN.C.I.FormNoticeCurrent = form;
- form_id = form.attr('id');
var MaxLength = jQuery.data(form[0], 'ElementData').MaxLength;
@@ -113,8 +110,8 @@ var SN = { // StatusNet
return;
}
- var remaining = MaxLength - $('#'+form_id+' #'+SN.C.S.NoticeDataText).val().length;
- var counter = $('#'+form_id+' #'+SN.C.S.NoticeTextCount);
+ var remaining = MaxLength - form.find('#'+SN.C.S.NoticeDataText).val().length;
+ var counter = form.find('#'+SN.C.S.NoticeTextCount);
if (remaining.toString() != counter.text()) {
if (!SN.C.I.CounterBlackout || remaining === 0) {
@@ -174,7 +171,6 @@ var SN = { // StatusNet
FormNoticeXHR: function(form) {
SN.C.I.NoticeDataGeo = {};
- form_id = form.attr('id');
form.append('<input type="hidden" name="ajax" value="1"/>');
form.ajaxForm({
dataType: 'xml',
@@ -262,9 +258,10 @@ var SN = { // StatusNet
form.append('<p class="form_response success">'+result+'</p>');
}
else {
+ // New notice post was successful. If on our timeline, show it!
+ var notice = document._importNode($('li', data)[0], true);
var notices = $('#notices_primary .notices');
- if (notices.length > 0) {
- var notice = document._importNode($('li', data)[0], true);
+ if (notices.length > 0 && SN.U.belongsOnTimeline(notice)) {
if ($('#'+notice.id).length === 0) {
var notice_irt_value = $('#'+SN.C.S.NoticeInReplyTo).val();
var notice_irt = '#notices_primary #notice-'+notice_irt_value;
@@ -285,6 +282,8 @@ var SN = { // StatusNet
}
}
else {
+ // Not on a timeline that this belongs on?
+ // Just show a success message.
result = document._importNode($('title', data)[0], true);
result_title = result.textContent || result.innerHTML;
form.append('<p class="form_response success">'+result_title+'</p>');
@@ -403,58 +402,72 @@ var SN = { // StatusNet
return;
}
- $.fn.jOverlay.options = {
- method : 'GET',
- data : '',
- url : '',
- color : '#000',
- opacity : '0.6',
- zIndex : 9999,
- center : false,
- imgLoading : $('address .url')[0].href+'theme/base/images/illustrations/illu_progress_loading-01.gif',
- bgClickToClose : true,
- success : function() {
- $('#jOverlayContent').append('<button class="close">&#215;</button>');
- $('#jOverlayContent button').click($.closeOverlay);
- },
- timeout : 0,
- autoHide : true,
- css : {'max-width':'542px', 'top':'5%', 'left':'32.5%'}
- };
-
- notice.find('a.attachment').click(function() {
- var attachId = ($(this).attr('id').substring('attachment'.length + 1));
- if (attachId) {
- $().jOverlay({url: $('address .url')[0].href+'attachment/' + attachId + '/ajax'});
- return false;
- }
- });
+ var attachment_more = notice.find('.attachment.more');
+ if (attachment_more.length > 0) {
+ $(attachment_more[0]).click(function() {
+ var m = $(this);
+ m.addClass(SN.C.S.Processing);
+ $.get(m.attr('href')+'/ajax', null, function(data) {
+ m.parent('.entry-content').html($(data).find('#attachment_view .entry-content').html());
+ });
- if ($('#shownotice').length == 0) {
- var t;
- notice.find('a.thumbnail').hover(
- function() {
- var anchor = $(this);
- $('a.thumbnail').children('img').hide();
- anchor.closest(".entry-title").addClass('ov');
-
- if (anchor.children('img').length === 0) {
- t = setTimeout(function() {
- $.get($('address .url')[0].href+'attachment/' + (anchor.attr('id').substring('attachment'.length + 1)) + '/thumbnail', null, function(data) {
- anchor.append(data);
- });
- }, 500);
- }
- else {
- anchor.children('img').show();
- }
+ return false;
+ });
+ }
+ else {
+ $.fn.jOverlay.options = {
+ method : 'GET',
+ data : '',
+ url : '',
+ color : '#000',
+ opacity : '0.6',
+ zIndex : 9999,
+ center : false,
+ imgLoading : $('address .url')[0].href+'theme/base/images/illustrations/illu_progress_loading-01.gif',
+ bgClickToClose : true,
+ success : function() {
+ $('#jOverlayContent').append('<button class="close">&#215;</button>');
+ $('#jOverlayContent button').click($.closeOverlay);
},
- function() {
- clearTimeout(t);
- $('a.thumbnail').children('img').hide();
- $(this).closest('.entry-title').removeClass('ov');
+ timeout : 0,
+ autoHide : true,
+ css : {'max-width':'542px', 'top':'5%', 'left':'32.5%'}
+ };
+
+ notice.find('a.attachment').click(function() {
+ var attachId = ($(this).attr('id').substring('attachment'.length + 1));
+ if (attachId) {
+ $().jOverlay({url: $('address .url')[0].href+'attachment/' + attachId + '/ajax'});
+ return false;
}
- );
+ });
+
+ if ($('#shownotice').length == 0) {
+ var t;
+ notice.find('a.thumbnail').hover(
+ function() {
+ var anchor = $(this);
+ $('a.thumbnail').children('img').hide();
+ anchor.closest(".entry-title").addClass('ov');
+
+ if (anchor.children('img').length === 0) {
+ t = setTimeout(function() {
+ $.get($('address .url')[0].href+'attachment/' + (anchor.attr('id').substring('attachment'.length + 1)) + '/thumbnail', null, function(data) {
+ anchor.append(data);
+ });
+ }, 500);
+ }
+ else {
+ anchor.children('img').show();
+ }
+ },
+ function() {
+ clearTimeout(t);
+ $('a.thumbnail').children('img').hide();
+ $(this).closest('.entry-title').removeClass('ov');
+ }
+ );
+ }
}
},
@@ -697,6 +710,38 @@ var SN = { // StatusNet
Delete: function() {
$.cookie(SN.C.S.StatusNetInstance, null);
}
+ },
+
+ /**
+ * Check if the current page is a timeline where the current user's
+ * posts should be displayed immediately on success.
+ *
+ * @fixme this should be done in a saner way, with machine-readable
+ * info about what page we're looking at.
+ */
+ belongsOnTimeline: function(notice) {
+ var action = $("body").attr('id');
+ if (action == 'public') {
+ return true;
+ }
+
+ var profileLink = $('#nav_profile a').attr('href');
+ if (profileLink) {
+ var authorUrl = $(notice).find('.entry-title .author a.url').attr('href');
+ if (authorUrl == profileLink) {
+ if (action == 'all' || action == 'showstream') {
+ // Posts always show on your own friends and profile streams.
+ return true;
+ }
+ }
+ }
+
+ // @fixme tag, group, reply timelines should be feasible as well.
+ // Mismatch between id-based and name-based user/group links currently complicates
+ // the lookup, since all our inline mentions contain the absolute links but the
+ // UI links currently on the page use malleable names.
+
+ return false;
}
},
diff --git a/lib/accountsettingsaction.php b/lib/accountsettingsaction.php
index c79a1f5d7..57740f8b8 100644
--- a/lib/accountsettingsaction.php
+++ b/lib/accountsettingsaction.php
@@ -105,27 +105,45 @@ class AccountSettingsNav extends Widget
$user = common_current_user();
if(Event::handle('StartAccountSettingsProfileMenuItem', array($this, &$menu))){
- $this->showMenuItem('profilesettings',_('Profile'),_('Change your profile settings'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Change your profile settings');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('profilesettings',_('Profile'),$title);
Event::handle('EndAccountSettingsProfileMenuItem', array($this, &$menu));
}
if(Event::handle('StartAccountSettingsAvatarMenuItem', array($this, &$menu))){
- $this->showMenuItem('avatarsettings',_('Avatar'),_('Upload an avatar'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Upload an avatar');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('avatarsettings',_('Avatar'),$title);
Event::handle('EndAccountSettingsAvatarMenuItem', array($this, &$menu));
}
if(Event::handle('StartAccountSettingsPasswordMenuItem', array($this, &$menu))){
- $this->showMenuItem('passwordsettings',_('Password'),_('Change your password'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Change your password');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('passwordsettings',_('Password'),$title);
Event::handle('EndAccountSettingsPasswordMenuItem', array($this, &$menu));
}
if(Event::handle('StartAccountSettingsEmailMenuItem', array($this, &$menu))){
- $this->showMenuItem('emailsettings',_('Email'),_('Change email handling'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Change email handling');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('emailsettings',_('Email'),$title);
Event::handle('EndAccountSettingsEmailMenuItem', array($this, &$menu));
}
if(Event::handle('StartAccountSettingsDesignMenuItem', array($this, &$menu))){
- $this->showMenuItem('userdesignsettings',_('Design'),_('Design your profile'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Design your profile');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('userdesignsettings',_('Design'),$title);
Event::handle('EndAccountSettingsDesignMenuItem', array($this, &$menu));
}
if(Event::handle('StartAccountSettingsOtherMenuItem', array($this, &$menu))){
- $this->showMenuItem('othersettings',_('Other'),_('Other options'));
+ // TRANS: Link title attribute in user account settings menu.
+ $title = _('Other options');
+ // TRANS: Link description in user account settings menu.
+ $this->showMenuItem('othersettings',_('Other'),$title);
Event::handle('EndAccountSettingsOtherMenuItem', array($this, &$menu));
}
diff --git a/lib/action.php b/lib/action.php
index 491d7d481..2b3b707c5 100644
--- a/lib/action.php
+++ b/lib/action.php
@@ -141,6 +141,7 @@ class Action extends HTMLOutputter // lawsuit
function showTitle()
{
$this->element('title', null,
+ // TRANS: Page title. %1$s is the title, %2$s is the site name.
sprintf(_("%1\$s - %2\$s"),
$this->title(),
common_config('site', 'name')));
@@ -156,6 +157,7 @@ class Action extends HTMLOutputter // lawsuit
function title()
{
+ // TRANS: Page title for a page without a title set.
return _("Untitled page");
}
@@ -198,8 +200,7 @@ class Action extends HTMLOutputter // lawsuit
if (Event::handle('StartShowStatusNetStyles', array($this)) &&
Event::handle('StartShowLaconicaStyles', array($this))) {
- $this->cssLink('css/display.css',null,'screen, projection, tv');
- $this->cssLink('css/print.css','base','print');
+ $this->cssLink('css/display.css',null, 'screen, projection, tv, print');
Event::handle('EndShowStatusNetStyles', array($this));
Event::handle('EndShowLaconicaStyles', array($this));
}
@@ -234,6 +235,16 @@ class Action extends HTMLOutputter // lawsuit
Event::handle('EndShowDesign', array($this));
}
Event::handle('EndShowStyles', array($this));
+
+ if (common_config('custom_css', 'enabled')) {
+ $css = common_config('custom_css', 'css');
+ if (Event::handle('StartShowCustomCss', array($this, &$css))) {
+ if (trim($css) != '') {
+ $this->style($css);
+ }
+ Event::handle('EndShowCustomCss', array($this));
+ }
+ }
}
}
@@ -421,6 +432,7 @@ class Action extends HTMLOutputter // lawsuit
{
$user = common_current_user();
$this->elementStart('dl', array('id' => 'site_nav_global_primary'));
+ // TRANS: DT element for primary navigation menu. String is hidden in default CSS.
$this->element('dt', null, _('Primary site navigation'));
$this->elementStart('dd');
$this->elementStart('ul', array('class' => 'nav'));
@@ -428,31 +440,31 @@ class Action extends HTMLOutputter // lawsuit
if ($user) {
// TRANS: Tooltip for main menu option "Personal"
$tooltip = _m('TOOLTIP', 'Personal profile and friends timeline');
- // TRANS: Main menu option when logged in for access to personal profile and friends timeline
$this->menuItem(common_local_url('all', array('nickname' => $user->nickname)),
+ // TRANS: Main menu option when logged in for access to personal profile and friends timeline
_m('MENU', 'Personal'), $tooltip, false, 'nav_home');
// TRANS: Tooltip for main menu option "Account"
$tooltip = _m('TOOLTIP', 'Change your email, avatar, password, profile');
- // TRANS: Main menu option when logged in for access to user settings
$this->menuItem(common_local_url('profilesettings'),
+ // TRANS: Main menu option when logged in for access to user settings
_('Account'), $tooltip, false, 'nav_account');
// TRANS: Tooltip for main menu option "Services"
$tooltip = _m('TOOLTIP', 'Connect to services');
- // TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
$this->menuItem(common_local_url('oauthconnectionssettings'),
+ // TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
_('Connect'), $tooltip, false, 'nav_connect');
if ($user->hasRight(Right::CONFIGURESITE)) {
// TRANS: Tooltip for menu option "Admin"
$tooltip = _m('TOOLTIP', 'Change site configuration');
- // TRANS: Main menu option when logged in and site admin for access to site configuration
$this->menuItem(common_local_url('siteadminpanel'),
+ // TRANS: Main menu option when logged in and site admin for access to site configuration
_m('MENU', 'Admin'), $tooltip, false, 'nav_admin');
}
if (common_config('invite', 'enabled')) {
// TRANS: Tooltip for main menu option "Invite"
$tooltip = _m('TOOLTIP', 'Invite friends and colleagues to join you on %s');
- // TRANS: Main menu option when logged in and invitations are allowed for inviting new users
$this->menuItem(common_local_url('invite'),
+ // TRANS: Main menu option when logged in and invitations are allowed for inviting new users
_m('MENU', 'Invite'),
sprintf($tooltip,
common_config('site', 'name')),
@@ -460,16 +472,16 @@ class Action extends HTMLOutputter // lawsuit
}
// TRANS: Tooltip for main menu option "Logout"
$tooltip = _m('TOOLTIP', 'Logout from the site');
- // TRANS: Main menu option when logged in to log out the current user
$this->menuItem(common_local_url('logout'),
+ // TRANS: Main menu option when logged in to log out the current user
_m('MENU', 'Logout'), $tooltip, false, 'nav_logout');
}
else {
- if (!common_config('site', 'closed')) {
+ if (!common_config('site', 'closed') && !common_config('site', 'inviteonly')) {
// TRANS: Tooltip for main menu option "Register"
$tooltip = _m('TOOLTIP', 'Create an account');
- // TRANS: Main menu option when not logged in to register a new account
$this->menuItem(common_local_url('register'),
+ // TRANS: Main menu option when not logged in to register a new account
_m('MENU', 'Register'), $tooltip, false, 'nav_register');
}
// TRANS: Tooltip for main menu option "Login"
@@ -576,6 +588,7 @@ class Action extends HTMLOutputter // lawsuit
function showLocalNavBlock()
{
$this->elementStart('dl', array('id' => 'site_nav_local_views'));
+ // TRANS: DT element for local views block. String is hidden in default CSS.
$this->element('dt', null, _('Local views'));
$this->elementStart('dd');
$this->showLocalNav();
@@ -642,6 +655,7 @@ class Action extends HTMLOutputter // lawsuit
$this->elementStart('dl', array('id' => 'page_notice',
'class' => 'system_notice'));
+ // TRANS: DT element for page notice. String is hidden in default CSS.
$this->element('dt', null, _('Page notice'));
$this->elementStart('dd');
if (Event::handle('StartShowPageNotice', array($this))) {
@@ -744,28 +758,37 @@ class Action extends HTMLOutputter // lawsuit
function showSecondaryNav()
{
$this->elementStart('dl', array('id' => 'site_nav_global_secondary'));
+ // TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
$this->element('dt', null, _('Secondary site navigation'));
$this->elementStart('dd', null);
$this->elementStart('ul', array('class' => 'nav'));
if (Event::handle('StartSecondaryNav', array($this))) {
$this->menuItem(common_local_url('doc', array('title' => 'help')),
+ // TRANS: Secondary navigation menu option leading to help on StatusNet.
_('Help'));
$this->menuItem(common_local_url('doc', array('title' => 'about')),
+ // TRANS: Secondary navigation menu option leading to text about StatusNet site.
_('About'));
$this->menuItem(common_local_url('doc', array('title' => 'faq')),
+ // TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
_('FAQ'));
$bb = common_config('site', 'broughtby');
if (!empty($bb)) {
$this->menuItem(common_local_url('doc', array('title' => 'tos')),
+ // TRANS: Secondary navigation menu option leading to Terms of Service.
_('TOS'));
}
$this->menuItem(common_local_url('doc', array('title' => 'privacy')),
+ // TRANS: Secondary navigation menu option leading to privacy policy.
_('Privacy'));
$this->menuItem(common_local_url('doc', array('title' => 'source')),
+ // TRANS: Secondary navigation menu option.
_('Source'));
$this->menuItem(common_local_url('version'),
+ // TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
_('Version'));
$this->menuItem(common_local_url('doc', array('title' => 'contact')),
+ // TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
_('Contact'));
$this->menuItem(common_local_url('doc', array('title' => 'badge')),
_('Badge'));
@@ -796,16 +819,18 @@ class Action extends HTMLOutputter // lawsuit
*/
function showStatusNetLicense()
{
+ // TRANS: DT element for StatusNet software license.
$this->element('dt', array('id' => 'site_statusnet_license'), _('StatusNet software license'));
$this->elementStart('dd', null);
- // @fixme drop the final spaces in the messages when at good spot
- // to let translations get updated.
if (common_config('site', 'broughtby')) {
- $instr = _('**%%site.name%%** is a microblogging service brought to you by [%%site.broughtby%%](%%site.broughtbyurl%%). ');
+ // TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+ $instr = _('**%%site.name%%** is a microblogging service brought to you by [%%site.broughtby%%](%%site.broughtbyurl%%).');
} else {
- $instr = _('**%%site.name%%** is a microblogging service. ');
+ // TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+ $instr = _('**%%site.name%%** is a microblogging service.');
}
$instr .= ' ';
+ // TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
$instr .= sprintf(_('It runs the [StatusNet](http://status.net/) microblogging software, version %s, available under the [GNU Affero General Public License](http://www.fsf.org/licensing/licenses/agpl-3.0.html).'), STATUSNET_VERSION);
$output = common_markup_to_html($instr);
$this->raw($output);
@@ -821,19 +846,25 @@ class Action extends HTMLOutputter // lawsuit
function showContentLicense()
{
if (Event::handle('StartShowContentLicense', array($this))) {
+ // TRANS: DT element for StatusNet site content license.
$this->element('dt', array('id' => 'site_content_license'), _('Site content license'));
$this->elementStart('dd', array('id' => 'site_content_license_cc'));
switch (common_config('license', 'type')) {
case 'private':
+ // TRANS: Content license displayed when license is set to 'private'.
+ // TRANS: %1$s is the site name.
$this->element('p', null, sprintf(_('Content and data of %1$s are private and confidential.'),
common_config('site', 'name')));
// fall through
case 'allrightsreserved':
if (common_config('license', 'owner')) {
+ // TRANS: Content license displayed when license is set to 'allrightsreserved'.
+ // TRANS: %1$s is the copyright owner.
$this->element('p', null, sprintf(_('Content and data copyright by %1$s. All rights reserved.'),
common_config('license', 'owner')));
} else {
+ // TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
$this->element('p', null, _('Content and data copyright by contributors. All rights reserved.'));
}
break;
@@ -846,14 +877,16 @@ class Action extends HTMLOutputter // lawsuit
'width' => '80',
'height' => '15'));
$this->text(' ');
- //TODO: This is dirty: i18n
- $this->text(_('All '.common_config('site', 'name').' content and data are available under the '));
- $this->element('a', array('class' => 'license',
- 'rel' => 'external license',
- 'href' => common_config('license', 'url')),
- common_config('license', 'title'));
- $this->text(' ');
- $this->text(_('license.'));
+ // TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+ $notice = _('All %1$s content and data are available under the %2$s license.');
+ $link = "<a class=\"license\" rel=\"external license\" href=\"" .
+ htmlspecialchars(common_config('license', 'url')) .
+ "\">" .
+ htmlspecialchars(common_config('license', 'title')) .
+ "</a>";
+ $this->raw(sprintf(htmlspecialchars($notice),
+ htmlspecialchars(common_config('site', 'name')),
+ $link));
$this->elementEnd('p');
break;
}
@@ -1147,11 +1180,15 @@ class Action extends HTMLOutputter // lawsuit
*
* @return nothing
*/
+ // XXX: The messages in this pagination method only tailor to navigating
+ // notices. In other lists, "Previous"/"Next" type navigation is
+ // desirable, but not available.
function pagination($have_before, $have_after, $page, $action, $args=null)
{
// Does a little before-after block for next/prev page
if ($have_before || $have_after) {
$this->elementStart('dl', 'pagination');
+ // TRANS: DT element for pagination (previous/next, etc.).
$this->element('dt', null, _('Pagination'));
$this->elementStart('dd', null);
$this->elementStart('ul', array('class' => 'nav'));
@@ -1161,6 +1198,8 @@ class Action extends HTMLOutputter // lawsuit
$this->elementStart('li', array('class' => 'nav_prev'));
$this->element('a', array('href' => common_local_url($action, $args, $pargs),
'rel' => 'prev'),
+ // TRANS: Pagination message to go to a page displaying information more in the
+ // TRANS: present than the currently displayed information.
_('After'));
$this->elementEnd('li');
}
@@ -1169,6 +1208,8 @@ class Action extends HTMLOutputter // lawsuit
$this->elementStart('li', array('class' => 'nav_next'));
$this->element('a', array('href' => common_local_url($action, $args, $pargs),
'rel' => 'next'),
+ // TRANS: Pagination message to go to a page displaying information more in the
+ // TRANS: past than the currently displayed information.
_('Before'));
$this->elementEnd('li');
}
@@ -1212,6 +1253,8 @@ class Action extends HTMLOutputter // lawsuit
* @return void
*/
+ // XXX: Finding this type of check with the same message about 50 times.
+ // Possible to refactor?
function checkSessionToken()
{
// CSRF protection
diff --git a/lib/activity.php b/lib/activity.php
index bd1d5d56c..8e2da99bb 100644
--- a/lib/activity.php
+++ b/lib/activity.php
@@ -53,6 +53,7 @@ class Activity
{
const SPEC = 'http://activitystrea.ms/spec/1.0/';
const SCHEMA = 'http://activitystrea.ms/schema/1.0/';
+ const MEDIA = 'http://purl.org/syndication/atommedia';
const VERB = 'verb';
const OBJECT = 'object';
@@ -82,10 +83,11 @@ class Activity
const CREATOR = 'creator';
const CONTENTNS = 'http://purl.org/rss/1.0/modules/content/';
+ const ENCODED = 'encoded';
public $actor; // an ActivityObject
public $verb; // a string (the URL)
- public $object; // an ActivityObject
+ public $objects = array(); // an array of ActivityObjects
public $target; // an ActivityObject
public $context; // an ActivityObject
public $time; // Time of the activity
@@ -116,7 +118,8 @@ class Activity
// Insist on a feed's root DOMElement; don't allow a DOMDocument
if ($feed instanceof DOMDocument) {
throw new ClientException(
- _("Expecting a root feed element but got a whole XML document.")
+ // TRANS: Client exception thrown when a feed instance is a DOMDocument.
+ _('Expecting a root feed element but got a whole XML document.')
);
}
@@ -161,12 +164,15 @@ class Activity
// XXX: do other implied stuff here
}
- $objectEl = $this->_child($entry, self::OBJECT);
+ $objectEls = $entry->getElementsByTagNameNS(self::SPEC, self::OBJECT);
- if (!empty($objectEl)) {
- $this->object = new ActivityObject($objectEl);
+ if ($objectEls->length > 0) {
+ for ($i = 0; $i < $objectEls->length; $i++) {
+ $objectEl = $objectEls->item($i);
+ $this->objects[] = new ActivityObject($objectEl);
+ }
} else {
- $this->object = new ActivityObject($entry);
+ $this->objects[] = new ActivityObject($entry);
}
$actorEl = $this->_child($entry, self::ACTOR);
@@ -175,6 +181,17 @@ class Activity
$this->actor = new ActivityObject($actorEl);
+ // Cliqset has bad actor IDs (just nickname of user). We
+ // work around it by getting the author data and using its
+ // id instead
+
+ if (!preg_match('/^\w+:/', $this->actor->id)) {
+ $authorEl = ActivityUtils::child($entry, 'author');
+ if (!empty($authorEl)) {
+ $authorObj = new ActivityObject($authorEl);
+ $this->actor->id = $authorObj->id;
+ }
+ }
} else if (!empty($feed) &&
$subjectEl = $this->_child($feed, self::SUBJECT)) {
@@ -253,14 +270,21 @@ class Activity
$this->title = ActivityUtils::childContent($item, ActivityObject::TITLE, self::RSS);
- $contentEl = ActivityUtils::child($item, ActivityUtils::CONTENT, self::CONTENTNS);
+ $contentEl = ActivityUtils::child($item, self::ENCODED, self::CONTENTNS);
if (!empty($contentEl)) {
- $this->content = htmlspecialchars_decode($contentEl->textContent, ENT_QUOTES);
+ // <content:encoded> XML node's text content is HTML; no further processing needed.
+ $this->content = $contentEl->textContent;
} else {
$descriptionEl = ActivityUtils::child($item, self::DESCRIPTION, self::RSS);
if (!empty($descriptionEl)) {
- $this->content = htmlspecialchars_decode($descriptionEl->textContent, ENT_QUOTES);
+ // Per spec, <description> must be plaintext.
+ // In practice, often there's HTML... but these days good
+ // feeds are using <content:encoded> which is explicitly
+ // real HTML.
+ // We'll treat this following spec, and do HTML escaping
+ // to convert from plaintext to HTML.
+ $this->content = htmlspecialchars($descriptionEl->textContent);
}
}
@@ -280,8 +304,8 @@ class Activity
}
}
- $this->object = new ActivityObject($item);
- $this->context = new ActivityContext($item);
+ $this->objects[] = new ActivityObject($item);
+ $this->context = new ActivityContext($item);
}
/**
@@ -339,8 +363,10 @@ class Activity
$xs->element('activity:verb', null, $this->verb);
- if ($this->object) {
- $xs->raw($this->object->asString());
+ if (!empty($this->objects)) {
+ foreach($this->objects as $object) {
+ $xs->raw($object->asString());
+ }
}
if ($this->target) {
diff --git a/lib/activitycontext.php b/lib/activitycontext.php
index 2df7613f7..09a457924 100644
--- a/lib/activitycontext.php
+++ b/lib/activitycontext.php
@@ -51,6 +51,7 @@ class ActivityContext
const POINT = 'point';
const ATTENTION = 'ostatus:attention';
+ const MENTIONED = 'mentioned';
const CONVERSATION = 'ostatus:conversation';
function __construct($element)
@@ -70,16 +71,22 @@ class ActivityContext
$links = $element->getElementsByTagNameNS(ActivityUtils::ATOM, ActivityUtils::LINK);
+ $attention = array();
for ($i = 0; $i < $links->length; $i++) {
$link = $links->item($i);
$linkRel = $link->getAttribute(ActivityUtils::REL);
+ // XXX: Deprecate this in favour of "mentioned" from Salmon spec
+ // http://salmon-protocol.googlecode.com/svn/trunk/draft-panzer-salmon-00.html#SALR
if ($linkRel == self::ATTENTION) {
- $this->attention[] = $link->getAttribute(self::HREF);
+ $attention[] = $link->getAttribute(self::HREF);
+ } elseif ($linkRel == self::MENTIONED) {
+ $attention[] = $link->getAttribute(self::HREF);
}
}
+ $this->attention = array_unique($attention);
}
/**
diff --git a/lib/activityobject.php b/lib/activityobject.php
index e5cea727b..677a48197 100644
--- a/lib/activityobject.php
+++ b/lib/activityobject.php
@@ -100,6 +100,13 @@ class ActivityObject
public $poco;
public $displayName;
+ // @todo move this stuff to it's own PHOTO activity object
+ const MEDIA_DESCRIPTION = 'description';
+
+ public $thumbnail;
+ public $largerImage;
+ public $description;
+
/**
* Constructor
*
@@ -150,13 +157,27 @@ class ActivityObject
$this->poco = new PoCo($element);
}
+
+ if ($this->type == self::PHOTO) {
+
+ $this->thumbnail = ActivityUtils::getLink($element, 'preview');
+ $this->largerImage = ActivityUtils::getLink($element, 'enclosure');
+
+ $this->description = ActivityUtils::childContent(
+ $element,
+ ActivityObject::MEDIA_DESCRIPTION,
+ Activity::MEDIA
+ );
+
+ }
}
private function _fromAuthor($element)
{
$this->type = self::PERSON; // XXX: is this fair?
$this->title = $this->_childContent($element, self::NAME);
- $this->id = $this->_childContent($element, self::URI);
+
+ $this->id = $this->_childContent($element, self::URI);
if (empty($this->id)) {
$email = $this->_childContent($element, self::EMAIL);
@@ -176,7 +197,6 @@ class ActivityObject
$this->type = ActivityObject::NOTE;
}
- $this->id = $this->_childContent($element, self::ID);
$this->summary = ActivityUtils::childHtmlContent($element, self::SUMMARY);
$this->content = ActivityUtils::getContent($element);
@@ -189,6 +209,12 @@ class ActivityObject
$this->source = $this->_getSource($element);
$this->link = ActivityUtils::getPermalink($element);
+
+ $this->id = $this->_childContent($element, self::ID);
+
+ if (empty($this->id) && !empty($this->link)) { // fallback if there's no ID
+ $this->id = $this->link;
+ }
}
// @fixme rationalize with Activity::_fromRssItem()
diff --git a/lib/activityutils.php b/lib/activityutils.php
index c85a3db55..dd38d4e14 100644
--- a/lib/activityutils.php
+++ b/lib/activityutils.php
@@ -213,11 +213,19 @@ class ActivityUtils
// slavishly following http://atompub.org/rfc4287.html#rfc.section.4.1.3.3
if (empty($type) || $type == 'text') {
- return $el->textContent;
+ // We have plaintext saved as the XML text content.
+ // Since we want HTML, we need to escape any special chars.
+ return htmlspecialchars($el->textContent);
} else if ($type == 'html') {
+ // We have HTML saved as the XML text content.
+ // No additional processing required once we've got it.
$text = $el->textContent;
- return htmlspecialchars_decode($text, ENT_QUOTES);
+ return $text;
} else if ($type == 'xhtml') {
+ // Per spec, the <content type="xhtml"> contains a single
+ // HTML <div> with XHTML namespace on it as a child node.
+ // We need to pull all of that <div>'s child nodes and
+ // serialize them back to an (X)HTML source fragment.
$divEl = ActivityUtils::child($el, 'div', 'http://www.w3.org/1999/xhtml');
if (empty($divEl)) {
return null;
@@ -240,4 +248,32 @@ class ActivityUtils
throw new ClientException(_("Can't handle embedded Base64 content yet."));
}
}
+
+ /**
+ * Is this a valid URI for remote profile/notice identification?
+ * Does not have to be a resolvable URL.
+ * @param string $uri
+ * @return boolean
+ */
+ static function validateUri($uri)
+ {
+ // Check mailto: URIs first
+
+ if (preg_match('/^mailto:(.*)$/', $uri, $match)) {
+ return Validate::email($match[1], common_config('email', 'check_domain'));
+ }
+
+ if (Validate::uri($uri)) {
+ return true;
+ }
+
+ // Possibly an upstream bug; tag: URIs aren't validated properly
+ // unless you explicitly ask for them. All other schemes are accepted
+ // for basic URI validation without asking.
+ if (Validate::uri($uri, array('allowed_scheme' => array('tag')))) {
+ return true;
+ }
+
+ return false;
+ }
}
diff --git a/lib/adminpanelaction.php b/lib/adminpanelaction.php
index a927e2333..41cfe5851 100644
--- a/lib/adminpanelaction.php
+++ b/lib/adminpanelaction.php
@@ -69,7 +69,7 @@ class AdminPanelAction extends Action
// User must be logged in.
if (!common_logged_in()) {
- // TRANS: Client error message
+ // TRANS: Client error message thrown when trying to access the admin panel while not logged in.
$this->clientError(_('Not logged in.'));
return false;
}
@@ -94,7 +94,7 @@ class AdminPanelAction extends Action
// User must have the right to change admin settings
if (!$user->hasRight(Right::CONFIGURESITE)) {
- // TRANS: Client error message
+ // TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
$this->clientError(_('You cannot make changes to this site.'));
return false;
}
@@ -106,7 +106,7 @@ class AdminPanelAction extends Action
$name = mb_substr($name, 0, -10);
if (!self::canAdmin($name)) {
- // TRANS: Client error message
+ // TRANS: Client error message throw when a certain panel's settings cannot be changed.
$this->clientError(_('Changes to that panel are not allowed.'), 403);
return false;
}
@@ -225,7 +225,7 @@ class AdminPanelAction extends Action
function showForm()
{
- // TRANS: Client error message
+ // TRANS: Client error message.
$this->clientError(_('showForm() not implemented.'));
return;
}
@@ -279,13 +279,15 @@ class AdminPanelAction extends Action
$result = $config->delete();
if (!$result) {
common_log_db_error($config, 'DELETE', __FILE__);
- // TRANS: Client error message
+ // TRANS: Client error message thrown if design settings could not be deleted in
+ // TRANS: the admin panel Design.
$this->clientError(_("Unable to delete design setting."));
return null;
}
+ return $result;
}
- return $result;
+ return null;
}
function canAdmin($name)
diff --git a/lib/apiaction.php b/lib/apiaction.php
index e6aaf9316..479a86ad8 100644
--- a/lib/apiaction.php
+++ b/lib/apiaction.php
@@ -27,11 +27,73 @@
* @author Jeffery To <jeffery.to@gmail.com>
* @author Toby Inkster <mail@tobyinkster.co.uk>
* @author Zach Copley <zach@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
+/* External API usage documentation. Please update when you change how the API works. */
+
+/*! @mainpage StatusNet REST API
+
+ @section Introduction
+
+ Some explanatory text about the API would be nice.
+
+ @section API Methods
+
+ @subsection timelinesmethods_sec Timeline Methods
+
+ @li @ref publictimeline
+ @li @ref friendstimeline
+
+ @subsection statusmethods_sec Status Methods
+
+ @li @ref statusesupdate
+
+ @subsection usermethods_sec User Methods
+
+ @subsection directmessagemethods_sec Direct Message Methods
+
+ @subsection friendshipmethods_sec Friendship Methods
+
+ @subsection socialgraphmethods_sec Social Graph Methods
+
+ @subsection accountmethods_sec Account Methods
+
+ @subsection favoritesmethods_sec Favorites Methods
+
+ @subsection blockmethods_sec Block Methods
+
+ @subsection oauthmethods_sec OAuth Methods
+
+ @subsection helpmethods_sec Help Methods
+
+ @subsection groupmethods_sec Group Methods
+
+ @page apiroot API Root
+
+ The URLs for methods referred to in this API documentation are
+ relative to the StatusNet API root. The API root is determined by the
+ site's @b server and @b path variables, which are generally specified
+ in config.php. For example:
+
+ @code
+ $config['site']['server'] = 'example.org';
+ $config['site']['path'] = 'statusnet'
+ @endcode
+
+ The pattern for a site's API root is: @c protocol://server/path/api E.g:
+
+ @c http://example.org/statusnet/api
+
+ The @b path can be empty. In that case the API root would simply be:
+
+ @c http://example.org/api
+
+*/
+
if (!defined('STATUSNET')) {
exit(1);
}
@@ -63,9 +125,13 @@ class ApiAction extends Action
var $count = null;
var $max_id = null;
var $since_id = null;
+ var $source = null;
+ var $callback = null;
var $access = self::READ_ONLY; // read (default) or read-write
+ static $reserved_sources = array('web', 'omb', 'ostatus', 'mail', 'xmpp', 'api');
+
/**
* Initialization.
*
@@ -80,6 +146,7 @@ class ApiAction extends Action
parent::prepare($args);
$this->format = $this->arg('format');
+ $this->callback = $this->arg('callback');
$this->page = (int)$this->arg('page', 1);
$this->count = (int)$this->arg('count', 20);
$this->max_id = (int)$this->arg('max_id', 0);
@@ -89,6 +156,12 @@ class ApiAction extends Action
header('X-StatusNet-Warning: since parameter is disabled; use since_id');
}
+ $this->source = $this->trimmed('source');
+
+ if (empty($this->source) || in_array($this->source, self::$reserved_sources)) {
+ $this->source = 'api';
+ }
+
return true;
}
@@ -102,6 +175,7 @@ class ApiAction extends Action
function handle($args)
{
+ header('Access-Control-Allow-Origin: *');
parent::handle($args);
}
@@ -199,11 +273,13 @@ class ApiAction extends Action
// Is the requesting user following this user?
$twitter_user['following'] = false;
+ $twitter_user['statusnet:blocking'] = false;
$twitter_user['notifications'] = false;
if (isset($this->auth_user)) {
$twitter_user['following'] = $this->auth_user->isSubscribed($profile);
+ $twitter_user['statusnet:blocking'] = $this->auth_user->hasBlocked($profile);
// Notifications on?
$sub = Subscription::pkeyGet(array('subscriber' =>
@@ -223,6 +299,10 @@ class ApiAction extends Action
}
}
+ // StatusNet-specific
+
+ $twitter_user['statusnet:profile_url'] = $profile->profileurl;
+
return $twitter_user;
}
@@ -251,7 +331,23 @@ class ApiAction extends Action
$twitter_status['created_at'] = $this->dateTwitter($notice->created);
$twitter_status['in_reply_to_status_id'] = ($notice->reply_to) ?
intval($notice->reply_to) : null;
- $twitter_status['source'] = $this->sourceLink($notice->source);
+
+ $source = null;
+
+ $ns = $notice->getSource();
+ if ($ns) {
+ if (!empty($ns->name) && !empty($ns->url)) {
+ $source = '<a href="'
+ . htmlspecialchars($ns->url)
+ . '" rel="nofollow">'
+ . htmlspecialchars($ns->name)
+ . '</a>';
+ } else {
+ $source = $ns->code;
+ }
+ }
+
+ $twitter_status['source'] = $source;
$twitter_status['id'] = intval($notice->id);
$replier_profile = null;
@@ -308,26 +404,41 @@ class ApiAction extends Action
$twitter_status['user'] = $twitter_user;
}
+ // StatusNet-specific
+
+ $twitter_status['statusnet:html'] = $notice->rendered;
+
return $twitter_status;
}
function twitterGroupArray($group)
{
- $twitter_group=array();
- $twitter_group['id']=$group->id;
- $twitter_group['url']=$group->permalink();
- $twitter_group['nickname']=$group->nickname;
- $twitter_group['fullname']=$group->fullname;
- $twitter_group['homepage_url']=$group->homepage_url;
- $twitter_group['original_logo']=$group->original_logo;
- $twitter_group['homepage_logo']=$group->homepage_logo;
- $twitter_group['stream_logo']=$group->stream_logo;
- $twitter_group['mini_logo']=$group->mini_logo;
- $twitter_group['homepage']=$group->homepage;
- $twitter_group['description']=$group->description;
- $twitter_group['location']=$group->location;
- $twitter_group['created']=$this->dateTwitter($group->created);
- $twitter_group['modified']=$this->dateTwitter($group->modified);
+ $twitter_group = array();
+
+ $twitter_group['id'] = $group->id;
+ $twitter_group['url'] = $group->permalink();
+ $twitter_group['nickname'] = $group->nickname;
+ $twitter_group['fullname'] = $group->fullname;
+
+ if (isset($this->auth_user)) {
+ $twitter_group['member'] = $this->auth_user->isMember($group);
+ $twitter_group['blocked'] = Group_block::isBlocked(
+ $group,
+ $this->auth_user->getProfile()
+ );
+ }
+
+ $twitter_group['member_count'] = $group->getMemberCount();
+ $twitter_group['original_logo'] = $group->original_logo;
+ $twitter_group['homepage_logo'] = $group->homepage_logo;
+ $twitter_group['stream_logo'] = $group->stream_logo;
+ $twitter_group['mini_logo'] = $group->mini_logo;
+ $twitter_group['homepage'] = $group->homepage;
+ $twitter_group['description'] = $group->description;
+ $twitter_group['location'] = $group->location;
+ $twitter_group['created'] = $this->dateTwitter($group->created);
+ $twitter_group['modified'] = $this->dateTwitter($group->modified);
+
return $twitter_group;
}
@@ -352,6 +463,7 @@ class ApiAction extends Action
function twitterRssEntryArray($notice)
{
$profile = $notice->getProfile();
+
$entry = array();
// We trim() to avoid extraneous whitespace in the output
@@ -476,9 +588,13 @@ class ApiAction extends Action
}
}
- function showTwitterXmlStatus($twitter_status, $tag='status')
+ function showTwitterXmlStatus($twitter_status, $tag='status', $namespaces=false)
{
- $this->elementStart($tag);
+ $attrs = array();
+ if ($namespaces) {
+ $attrs['xmlns:statusnet'] = 'http://status.net/schema/api/1/';
+ }
+ $this->elementStart($tag, $attrs);
foreach($twitter_status as $element => $value) {
switch ($element) {
case 'user':
@@ -512,9 +628,13 @@ class ApiAction extends Action
$this->elementEnd('group');
}
- function showTwitterXmlUser($twitter_user, $role='user')
+ function showTwitterXmlUser($twitter_user, $role='user', $namespaces=false)
{
- $this->elementStart($role);
+ $attrs = array();
+ if ($namespaces) {
+ $attrs['xmlns:statusnet'] = 'http://status.net/schema/api/1/';
+ }
+ $this->elementStart($role, $attrs);
foreach($twitter_user as $element => $value) {
if ($element == 'status') {
$this->showTwitterXmlStatus($twitter_user['status']);
@@ -596,7 +716,7 @@ class ApiAction extends Action
{
$this->initDocument('xml');
$twitter_status = $this->twitterStatusArray($notice);
- $this->showTwitterXmlStatus($twitter_status);
+ $this->showTwitterXmlStatus($twitter_status, 'status', true);
$this->endDocument('xml');
}
@@ -612,17 +732,20 @@ class ApiAction extends Action
{
$this->initDocument('xml');
- $this->elementStart('statuses', array('type' => 'array'));
+ $this->elementStart('statuses', array('type' => 'array',
+ 'xmlns:statusnet' => 'http://status.net/schema/api/1/'));
if (is_array($notice)) {
- foreach ($notice as $n) {
- $twitter_status = $this->twitterStatusArray($n);
- $this->showTwitterXmlStatus($twitter_status);
- }
- } else {
- while ($notice->fetch()) {
+ $notice = new ArrayWrapper($notice);
+ }
+
+ while ($notice->fetch()) {
+ try {
$twitter_status = $this->twitterStatusArray($notice);
$this->showTwitterXmlStatus($twitter_status);
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ continue;
}
}
@@ -670,14 +793,16 @@ class ApiAction extends Action
$this->element('ttl', null, '40');
if (is_array($notice)) {
- foreach ($notice as $n) {
- $entry = $this->twitterRssEntryArray($n);
- $this->showTwitterRssItem($entry);
- }
- } else {
- while ($notice->fetch()) {
+ $notice = new ArrayWrapper($notice);
+ }
+
+ while ($notice->fetch()) {
+ try {
$entry = $this->twitterRssEntryArray($notice);
$this->showTwitterRssItem($entry);
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ // continue on exceptions
}
}
@@ -713,12 +838,15 @@ class ApiAction extends Action
$this->element('subtitle', null, $subtitle);
if (is_array($notice)) {
- foreach ($notice as $n) {
- $this->raw($n->asAtomEntry());
- }
- } else {
- while ($notice->fetch()) {
+ $notice = new ArrayWrapper($notice);
+ }
+
+ while ($notice->fetch()) {
+ try {
$this->raw($notice->asAtomEntry());
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ continue;
}
}
@@ -779,9 +907,13 @@ class ApiAction extends Action
$this->elementEnd('entry');
}
- function showXmlDirectMessage($dm)
+ function showXmlDirectMessage($dm, $namespaces=false)
{
- $this->elementStart('direct_message');
+ $attrs = array();
+ if ($namespaces) {
+ $attrs['xmlns:statusnet'] = 'http://status.net/schema/api/1/';
+ }
+ $this->elementStart('direct_message', $attrs);
foreach($dm as $element => $value) {
switch ($element) {
case 'sender':
@@ -858,7 +990,7 @@ class ApiAction extends Action
{
$this->initDocument('xml');
$dmsg = $this->directMessageArray($message);
- $this->showXmlDirectMessage($dmsg);
+ $this->showXmlDirectMessage($dmsg, true);
$this->endDocument('xml');
}
@@ -909,14 +1041,16 @@ class ApiAction extends Action
$statuses = array();
if (is_array($notice)) {
- foreach ($notice as $n) {
- $twitter_status = $this->twitterStatusArray($n);
- array_push($statuses, $twitter_status);
- }
- } else {
- while ($notice->fetch()) {
+ $notice = new ArrayWrapper($notice);
+ }
+
+ while ($notice->fetch()) {
+ try {
$twitter_status = $this->twitterStatusArray($notice);
array_push($statuses, $twitter_status);
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ continue;
}
}
@@ -975,7 +1109,8 @@ class ApiAction extends Action
{
$this->initDocument('xml');
- $this->elementStart('users', array('type' => 'array'));
+ $this->elementStart('users', array('type' => 'array',
+ 'xmlns:statusnet' => 'http://status.net/schema/api/1/'));
if (is_array($user)) {
foreach ($user as $u) {
@@ -1052,9 +1187,8 @@ class ApiAction extends Action
header('Content-Type: application/json; charset=utf-8');
// Check for JSONP callback
- $callback = $this->arg('callback');
- if ($callback) {
- print $callback . '(';
+ if (isset($this->callback)) {
+ print $this->callback . '(';
}
break;
case 'rss':
@@ -1066,6 +1200,7 @@ class ApiAction extends Action
$this->initTwitterAtom();
break;
default:
+ // TRANS: Client error on an API request with an unsupported data format.
$this->clientError(_('Not a supported data format.'));
break;
}
@@ -1082,8 +1217,7 @@ class ApiAction extends Action
case 'json':
// Check for JSONP callback
- $callback = $this->arg('callback');
- if ($callback) {
+ if (isset($this->callback)) {
print ')';
}
break;
@@ -1094,6 +1228,7 @@ class ApiAction extends Action
$this->endTwitterRss();
break;
default:
+ // TRANS: Client error on an API request with an unsupported data format.
$this->clientError(_('Not a supported data format.'));
break;
}
@@ -1112,7 +1247,10 @@ class ApiAction extends Action
$status_string = ClientErrorAction::$status[$code];
- header('HTTP/1.1 '.$code.' '.$status_string);
+ // Do not emit error header for JSONP
+ if (!isset($this->callback)) {
+ header('HTTP/1.1 '.$code.' '.$status_string);
+ }
if ($format == 'xml') {
$this->initDocument('xml');
@@ -1145,7 +1283,10 @@ class ApiAction extends Action
$status_string = ServerErrorAction::$status[$code];
- header('HTTP/1.1 '.$code.' '.$status_string);
+ // Do not emit error header for JSONP
+ if (!isset($this->callback)) {
+ header('HTTP/1.1 '.$code.' '.$status_string);
+ }
if ($content_type == 'xml') {
$this->initDocument('xml');
@@ -1210,6 +1351,7 @@ class ApiAction extends Action
$this->showJsonObjects($profile_array);
break;
default:
+ // TRANS: Client error on an API request with an unsupported data format.
$this->clientError(_('Not a supported data format.'));
return;
}
@@ -1248,6 +1390,34 @@ class ApiAction extends Action
}
}
+ function getTargetProfile($id)
+ {
+ if (empty($id)) {
+
+ // Twitter supports these other ways of passing the user ID
+ if (is_numeric($this->arg('id'))) {
+ return Profile::staticGet($this->arg('id'));
+ } else if ($this->arg('id')) {
+ $nickname = common_canonical_nickname($this->arg('id'));
+ return Profile::staticGet('nickname', $nickname);
+ } else if ($this->arg('user_id')) {
+ // This is to ensure that a non-numeric user_id still
+ // overrides screen_name even if it doesn't get used
+ if (is_numeric($this->arg('user_id'))) {
+ return Profile::staticGet('id', $this->arg('user_id'));
+ }
+ } else if ($this->arg('screen_name')) {
+ $nickname = common_canonical_nickname($this->arg('screen_name'));
+ return Profile::staticGet('nickname', $nickname);
+ }
+ } else if (is_numeric($id)) {
+ return Profile::staticGet($id);
+ } else {
+ $nickname = common_canonical_nickname($id);
+ return Profile::staticGet('nickname', $nickname);
+ }
+ }
+
function getTargetGroup($id)
{
if (empty($id)) {
@@ -1273,7 +1443,7 @@ class ApiAction extends Action
if (empty($local)) {
return null;
} else {
- return User_group::staticGet('id', $local->id);
+ return User_group::staticGet('id', $local->group_id);
}
}
@@ -1290,43 +1460,6 @@ class ApiAction extends Action
}
}
- function sourceLink($source)
- {
- $source_name = _($source);
- switch ($source) {
- case 'web':
- case 'xmpp':
- case 'mail':
- case 'omb':
- case 'api':
- break;
- default:
-
- $name = null;
- $url = null;
-
- $ns = Notice_source::staticGet($source);
-
- if ($ns) {
- $name = $ns->name;
- $url = $ns->url;
- } else {
- $app = Oauth_application::staticGet('name', $source);
- if ($app) {
- $name = $app->name;
- $url = $app->source_url;
- }
- }
-
- if (!empty($name) && !empty($url)) {
- $source_name = '<a href="' . $url . '">' . $name . '</a>';
- }
-
- break;
- }
- return $source_name;
- }
-
/**
* Returns query argument or default value if not found. Certain
* parameters used throughout the API are lightly scrubbed and
diff --git a/lib/apiauth.php b/lib/apiauth.php
index 17f803a1c..cf7a2692c 100644
--- a/lib/apiauth.php
+++ b/lib/apiauth.php
@@ -30,10 +30,29 @@
* @author Sarven Capadisli <csarven@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
+/* External API usage documentation. Please update when you change how this method works. */
+
+/*! @page authentication Authentication
+
+ StatusNet supports HTTP Basic Authentication and OAuth for API calls.
+
+ @warning Currently, users who have created accounts without setting a
+ password via OpenID, Facebook Connect, etc., cannot use the API until
+ they set a password with their account settings panel.
+
+ @section HTTP Basic Auth
+
+
+
+ @section OAuth
+
+*/
+
if (!defined('STATUSNET')) {
exit(1);
}
@@ -54,7 +73,6 @@ class ApiAuthAction extends ApiAction
{
var $auth_user_nickname = null;
var $auth_user_password = null;
- var $oauth_source = null;
/**
* Take arguments for running, looks for an OAuth request,
@@ -91,6 +109,7 @@ class ApiAuthAction extends ApiAction
if ($this->isReadOnly($args) == false) {
if ($this->access != self::READ_WRITE) {
+ // TRANS: Client error 401.
$msg = _('API resource requires read-write access, ' .
'but you only have read access.');
$this->clientError($msg, 401, $this->format);
@@ -162,7 +181,7 @@ class ApiAuthAction extends ApiAction
// set the source attr
- $this->oauth_source = $app->name;
+ $this->source = $app->name;
$appUser = Oauth_application_user::staticGet('token', $access_token);
@@ -208,7 +227,7 @@ class ApiAuthAction extends ApiAction
} catch (OAuthException $e) {
common_log(LOG_WARNING, 'API OAuthException - ' . $e->getMessage());
- $this->showAuthError();
+ $this->clientError($e->getMessage(), 401, $this->format);
exit;
}
}
@@ -246,7 +265,7 @@ class ApiAuthAction extends ApiAction
// show error if the user clicks 'cancel'
- $this->showAuthError();
+ $this->clientError("Could not authenticate you.", 401, $this->format);
exit;
} else {
@@ -267,19 +286,19 @@ class ApiAuthAction extends ApiAction
$this->access = self::READ_WRITE;
- if (empty($this->auth_user) && $required) {
+ if (empty($this->auth_user) && ($required || isset($_SERVER['PHP_AUTH_USER']))) {
// basic authentication failed
list($proxy, $ip) = common_client_ip();
- $msg = sprintf(_('Failed API auth attempt, nickname = %1$s, ' .
- 'proxy = %2$s, ip = %3$s'),
+ $msg = sprintf( 'Failed API auth attempt, nickname = %1$s, ' .
+ 'proxy = %2$s, ip = %3$s',
$this->auth_user_nickname,
$proxy,
$ip);
common_log(LOG_WARNING, $msg);
- $this->showAuthError();
+ $this->clientError("Could not authenticate you.", 401, $this->format);
exit;
}
}
@@ -326,36 +345,4 @@ class ApiAuthAction extends ApiAction
}
}
}
-
- /**
- * Output an authentication error message. Use XML or JSON if one
- * of those formats is specified, otherwise output plain text
- *
- * @return void
- */
-
- function showAuthError()
- {
- header('HTTP/1.1 401 Unauthorized');
- $msg = 'Could not authenticate you.';
-
- if ($this->format == 'xml') {
- header('Content-Type: application/xml; charset=utf-8');
- $this->startXML();
- $this->elementStart('hash');
- $this->element('error', null, $msg);
- $this->element('request', null, $_SERVER['REQUEST_URI']);
- $this->elementEnd('hash');
- $this->endXML();
- } elseif ($this->format == 'json') {
- header('Content-Type: application/json; charset=utf-8');
- $error_array = array('error' => $msg,
- 'request' => $_SERVER['REQUEST_URI']);
- print(json_encode($error_array));
- } else {
- header('Content-type: text/plain');
- print "$msg\n";
- }
- }
-
}
diff --git a/lib/apibareauth.php b/lib/apibareauth.php
index 2d29c1ddd..da7af1261 100644
--- a/lib/apibareauth.php
+++ b/lib/apibareauth.php
@@ -32,6 +32,7 @@
* @author Sarven Capadisli <csarven@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -106,4 +107,4 @@ class ApiBareAuthAction extends ApiAuthAction
return false;
}
-} \ No newline at end of file
+}
diff --git a/lib/apiprivateauth.php b/lib/apiprivateauth.php
index 5d0033005..5e78c65a1 100644
--- a/lib/apiprivateauth.php
+++ b/lib/apiprivateauth.php
@@ -31,6 +31,7 @@
* @author Sarven Capadisli <csarven@status.net>
* @author Zach Copley <zach@status.net>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/lib/applicationeditform.php b/lib/applicationeditform.php
index 9b7d05861..81c8fb018 100644
--- a/lib/applicationeditform.php
+++ b/lib/applicationeditform.php
@@ -133,6 +133,7 @@ class ApplicationEditForm extends Form
function formLegend()
{
+ // TRANS: Form legend.
$this->out->element('legend', null, _('Edit application'));
}
@@ -177,10 +178,12 @@ class ApplicationEditForm extends Form
}
$this->out->element('label', array('for' => 'app_icon'),
+ // TRANS: Form input field label for application icon.
_('Icon'));
$this->out->element('input', array('name' => 'app_icon',
'type' => 'file',
'id' => 'app_icon'));
+ // TRANS: Form guide.
$this->out->element('p', 'form_guide', _('Icon for this application'));
$this->out->element('input', array('name' => 'MAX_FILE_SIZE',
'type' => 'hidden',
@@ -192,6 +195,7 @@ class ApplicationEditForm extends Form
$this->out->hidden('application_id', $id);
+ // TRANS: Form input field label for application name.
$this->out->input('name', _('Name'),
($this->out->arg('name')) ? $this->out->arg('name') : $name);
@@ -201,11 +205,14 @@ class ApplicationEditForm extends Form
$maxDesc = Oauth_application::maxDesc();
if ($maxDesc > 0) {
+ // TRANS: Form input field instructions.
$descInstr = sprintf(_('Describe your application in %d characters'),
$maxDesc);
} else {
+ // TRANS: Form input field instructions.
$descInstr = _('Describe your application');
}
+ // TRANS: Form input field label.
$this->out->textarea('description', _('Description'),
($this->out->arg('description')) ? $this->out->arg('description') : $description,
$descInstr);
@@ -213,27 +220,39 @@ class ApplicationEditForm extends Form
$this->out->elementEnd('li');
$this->out->elementStart('li');
+ // TRANS: Form input field instructions.
+ $instruction = _('URL of the homepage of this application');
+ // TRANS: Form input field label.
$this->out->input('source_url', _('Source URL'),
($this->out->arg('source_url')) ? $this->out->arg('source_url') : $source_url,
- _('URL of the homepage of this application'));
+ $instruction);
$this->out->elementEnd('li');
$this->out->elementStart('li');
+ // TRANS: Form input field instructions.
+ $instruction = _('Organization responsible for this application');
+ // TRANS: Form input field label.
$this->out->input('organization', _('Organization'),
($this->out->arg('organization')) ? $this->out->arg('organization') : $organization,
- _('Organization responsible for this application'));
+ $instruction);
$this->out->elementEnd('li');
$this->out->elementStart('li');
+ // TRANS: Form input field instructions.
+ $instruction = _('URL for the homepage of the organization');
+ // TRANS: Form input field label.
$this->out->input('homepage', _('Homepage'),
($this->out->arg('homepage')) ? $this->out->arg('homepage') : $homepage,
- _('URL for the homepage of the organization'));
+ $instruction);
$this->out->elementEnd('li');
$this->out->elementStart('li');
+ // TRANS: Form input field instructions.
+ $instruction = _('URL to redirect to after authentication');
+ // TRANS: Form input field label.
$this->out->input('callback_url', ('Callback URL'),
($this->out->arg('callback_url')) ? $this->out->arg('callback_url') : $callback_url,
- _('URL to redirect to after authentication'));
+ $instruction);
$this->out->elementEnd('li');
$this->out->elementStart('li', array('id' => 'application_types'));
@@ -255,6 +274,7 @@ class ApplicationEditForm extends Form
$this->out->element('label', array('for' => 'app_type-browser',
'class' => 'radio'),
+ // TRANS: Radio button label for application type
_('Browser'));
$attrs = array('name' => 'app_type',
@@ -271,7 +291,9 @@ class ApplicationEditForm extends Form
$this->out->element('label', array('for' => 'app_type-desktop',
'class' => 'radio'),
+ // TRANS: Radio button label for application type
_('Desktop'));
+ // TRANS: Form guide.
$this->out->element('p', 'form_guide', _('Type of application, browser or desktop'));
$this->out->elementEnd('li');
@@ -294,6 +316,7 @@ class ApplicationEditForm extends Form
$this->out->element('label', array('for' => 'default_access_type-ro',
'class' => 'radio'),
+ // TRANS: Radio button label for access type.
_('Read-only'));
$attrs = array('name' => 'default_access_type',
@@ -312,7 +335,9 @@ class ApplicationEditForm extends Form
$this->out->element('label', array('for' => 'default_access_type-rw',
'class' => 'radio'),
+ // TRANS: Radio button label for access type.
_('Read-write'));
+ // TRANS: Form guide.
$this->out->element('p', 'form_guide', _('Default access for this application: read-only, or read-write'));
$this->out->elementEnd('li');
@@ -328,9 +353,13 @@ class ApplicationEditForm extends Form
function formActions()
{
- $this->out->submit('cancel', _('Cancel'), 'submit form_action-primary',
+ // TRANS: Button label
+ $this->out->submit('cancel', _m('BUTTON','Cancel'), 'submit form_action-primary',
+ // TRANS: Submit button title
'cancel', _('Cancel'));
- $this->out->submit('save', _('Save'), 'submit form_action-secondary',
+ // TRANS: Button label
+ $this->out->submit('save', _m('BUTTON','Save'), 'submit form_action-secondary',
+ // TRANS: Submit button title
'save', _('Save'));
}
}
diff --git a/lib/applicationlist.php b/lib/applicationlist.php
index 3abb1f8aa..904f8981d 100644
--- a/lib/applicationlist.php
+++ b/lib/applicationlist.php
@@ -88,7 +88,6 @@ class ApplicationList extends Widget
function showApplication()
{
-
$user = common_current_user();
$this->out->elementStart('li', array('class' => 'application',
@@ -133,11 +132,16 @@ class ApplicationList extends Widget
$this->out->elementStart('li');
- $access = ($this->application->access_type & Oauth_application::$writeAccess)
- ? 'read-write' : 'read-only';
+ // TRANS: Application access type
+ $readWriteText = _('read-write');
+ // TRANS: Application access type
+ $readOnlyText = _('read-only');
- $txt = 'Approved ' . common_date_string($appUser->modified) .
- " - $access access.";
+ $access = ($this->application->access_type & Oauth_application::$writeAccess)
+ ? $readWriteText : $readOnlyText;
+ $modifiedDate = common_date_string($appUser->modified);
+ // TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+ $txt = sprintf(_('Approved %1$s - "%2$s" access.'),$modifiedDate,$access);
$this->out->raw($txt);
$this->out->elementEnd('li');
@@ -151,7 +155,8 @@ class ApplicationList extends Widget
$this->out->elementStart('fieldset');
$this->out->hidden('id', $this->application->id);
$this->out->hidden('token', common_session_token());
- $this->out->submit('revoke', _('Revoke'));
+ // TRANS: Button label
+ $this->out->submit('revoke', _m('BUTTON','Revoke'));
$this->out->elementEnd('fieldset');
$this->out->elementEnd('form');
$this->out->elementEnd('li');
diff --git a/lib/atomgroupnoticefeed.php b/lib/atomgroupnoticefeed.php
index 08c1c707c..39a1fd456 100644
--- a/lib/atomgroupnoticefeed.php
+++ b/lib/atomgroupnoticefeed.php
@@ -50,19 +50,23 @@ class AtomGroupNoticeFeed extends AtomNoticeFeed
* Constructor
*
* @param Group $group the group for the feed
+ * @param User $cur the current authenticated user, if any
* @param boolean $indent flag to turn indenting on or off
*
* @return void
*/
- function __construct($group, $indent = true) {
- parent::__construct($indent);
+ function __construct($group, $cur = null, $indent = true) {
+ parent::__construct($cur, $indent);
$this->group = $group;
+ // TRANS: Title in atom group notice feed. %s is a group name.
$title = sprintf(_("%s timeline"), $group->nickname);
$this->setTitle($title);
$sitename = common_config('site', 'name');
$subtitle = sprintf(
+ // TRANS: Message is used as a subtitle in atom group notice feed.
+ // TRANS: %1$s is a group name, %2$s is a site name.
_('Updates from %1$s on %2$s!'),
$group->nickname,
$sitename
@@ -92,4 +96,23 @@ class AtomGroupNoticeFeed extends AtomNoticeFeed
return $this->group;
}
+ function initFeed()
+ {
+ parent::initFeed();
+
+ $attrs = array();
+
+ if (!empty($this->cur)) {
+ $attrs['member'] = $this->cur->isMember($this->group)
+ ? 'true' : 'false';
+ $attrs['blocked'] = Group_block::isBlocked(
+ $this->group,
+ $this->cur->getProfile()
+ ) ? 'true' : 'false';
+ }
+
+ $attrs['member_count'] = $this->group->getMemberCount();
+
+ $this->element('statusnet:group_info', $attrs, null);
+ }
}
diff --git a/lib/atomnoticefeed.php b/lib/atomnoticefeed.php
index e4df731fe..b88217291 100644
--- a/lib/atomnoticefeed.php
+++ b/lib/atomnoticefeed.php
@@ -44,9 +44,22 @@ if (!defined('STATUSNET'))
*/
class AtomNoticeFeed extends Atom10Feed
{
- function __construct($indent = true) {
+ var $cur;
+
+ /**
+ * Constructor - adds a bunch of XML namespaces we need in our
+ * notice-specific Atom feeds, and allows setting the current
+ * authenticated user (useful for API methods).
+ *
+ * @param User $cur the current authenticated user (optional)
+ * @param boolean $indent Whether to indent XML output
+ *
+ */
+ function __construct($cur = null, $indent = true) {
parent::__construct($indent);
+ $this->cur = $cur;
+
// Feeds containing notice info use these namespaces
$this->addNamespace(
@@ -79,6 +92,11 @@ class AtomNoticeFeed extends Atom10Feed
'ostatus',
'http://ostatus.org/schema/1.0'
);
+
+ $this->addNamespace(
+ 'statusnet',
+ 'http://status.net/schema/api/1/'
+ );
}
/**
@@ -107,10 +125,17 @@ class AtomNoticeFeed extends Atom10Feed
*/
function addEntryFromNotice($notice)
{
- $source = $this->showSource();
- $author = $this->showAuthor();
+ try {
+ $source = $this->showSource();
+ $author = $this->showAuthor();
- $this->addEntryRaw($notice->asAtomEntry(false, $source, $author));
+ $cur = empty($this->cur) ? common_current_user() : $this->cur;
+
+ $this->addEntryRaw($notice->asAtomEntry(false, $source, $author, $cur));
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ // we continue on exceptions
+ }
}
function showSource()
diff --git a/lib/atomusernoticefeed.php b/lib/atomusernoticefeed.php
index 428cc2de2..785db4915 100644
--- a/lib/atomusernoticefeed.php
+++ b/lib/atomusernoticefeed.php
@@ -50,13 +50,14 @@ class AtomUserNoticeFeed extends AtomNoticeFeed
* Constructor
*
* @param User $user the user for the feed
+ * @param User $cur the current authenticated user, if any
* @param boolean $indent flag to turn indenting on or off
*
* @return void
*/
- function __construct($user, $indent = true) {
- parent::__construct($indent);
+ function __construct($user, $cur = null, $indent = true) {
+ parent::__construct($cur, $indent);
$this->user = $user;
if (!empty($user)) {
$profile = $user->getProfile();
@@ -64,11 +65,14 @@ class AtomUserNoticeFeed extends AtomNoticeFeed
$this->setActivitySubject($profile->asActivityNoun('subject'));
}
+ // TRANS: Title in atom user notice feed. %s is a user name.
$title = sprintf(_("%s timeline"), $user->nickname);
$this->setTitle($title);
$sitename = common_config('site', 'name');
$subtitle = sprintf(
+ // TRANS: Message is used as a subtitle in atom user notice feed.
+ // TRANS: %1$s is a user name, %2$s is a site name.
_('Updates from %1$s on %2$s!'),
$user->nickname, $sitename
);
diff --git a/lib/attachmentlist.php b/lib/attachmentlist.php
index 51ceca857..59cab9532 100644
--- a/lib/attachmentlist.php
+++ b/lib/attachmentlist.php
@@ -84,6 +84,7 @@ class AttachmentList extends Widget
if (empty($att)) return 0;
$this->out->elementStart('dl', array('id' =>'attachments',
'class' => 'entry-content'));
+ // TRANS: DT element label in attachment list.
$this->out->element('dt', null, _('Attachments'));
$this->out->elementStart('dd');
$this->out->elementStart('ol', array('class' => 'attachments'));
@@ -248,9 +249,7 @@ class Attachment extends AttachmentListItem
$this->out->elementStart('div', array('id' => 'attachment_view',
'class' => 'hentry'));
$this->out->elementStart('div', 'entry-title');
- $this->out->elementStart('a', $this->linkAttr());
- $this->out->element('span', null, $this->linkTitle());
- $this->out->elementEnd('a');
+ $this->out->element('a', $this->linkAttr(), $this->linkTitle());
$this->out->elementEnd('div');
$this->out->elementStart('div', 'entry-content');
@@ -262,6 +261,7 @@ class Attachment extends AttachmentListItem
'class' => 'entry-content'));
if (!empty($this->oembed->author_name)) {
$this->out->elementStart('dl', 'vcard author');
+ // TRANS: DT element label in attachment list item.
$this->out->element('dt', null, _('Author'));
$this->out->elementStart('dd', 'fn');
if (empty($this->oembed->author_url)) {
@@ -275,6 +275,7 @@ class Attachment extends AttachmentListItem
}
if (!empty($this->oembed->provider)) {
$this->out->elementStart('dl', 'vcard');
+ // TRANS: DT element label in attachment list item.
$this->out->element('dt', null, _('Provider'));
$this->out->elementStart('dd', 'fn');
if (empty($this->oembed->provider_url)) {
@@ -296,7 +297,7 @@ class Attachment extends AttachmentListItem
}
function linkAttr() {
- return array('class' => 'external', 'href' => $this->attachment->url);
+ return array('rel' => 'external', 'href' => $this->attachment->url);
}
function linkTitle() {
@@ -306,7 +307,7 @@ class Attachment extends AttachmentListItem
function showRepresentation() {
if (empty($this->oembed->type)) {
if (empty($this->attachment->mimetype)) {
- $this->out->element('pre', null, 'oh well... not sure how to handle the following: ' . print_r($this->attachment, true));
+ $this->showFallback();
} else {
switch ($this->attachment->mimetype) {
case 'image/gif':
@@ -332,6 +333,17 @@ class Attachment extends AttachmentListItem
$this->out->element('param', array('name' => 'autoStart', 'value' => 1));
$this->out->elementEnd('object');
break;
+
+ case 'text/html':
+ if ($this->attachment->filename) {
+ // Locally-uploaded HTML. Scrub and display inline.
+ $this->showHtmlFile($this->attachment);
+ break;
+ }
+ // Fall through to default.
+
+ default:
+ $this->showFallback();
}
}
} else {
@@ -354,9 +366,76 @@ class Attachment extends AttachmentListItem
break;
default:
- $this->out->element('pre', null, 'oh well... not sure how to handle the following oembed: ' . print_r($this->oembed, true));
+ $this->showFallback();
}
}
}
+
+ protected function showHtmlFile(File $attachment)
+ {
+ $body = $this->scrubHtmlFile($attachment);
+ if ($body) {
+ $this->out->raw($body);
+ }
+ }
+
+ /**
+ * @return mixed false on failure, HTML fragment string on success
+ */
+ protected function scrubHtmlFile(File $attachment)
+ {
+ $path = File::path($attachment->filename);
+ if (!file_exists($path) || !is_readable($path)) {
+ common_log(LOG_ERR, "Missing local HTML attachment $path");
+ return false;
+ }
+ $raw = file_get_contents($path);
+
+ // Normalize...
+ $dom = new DOMDocument();
+ if(!$dom->loadHTML($raw)) {
+ common_log(LOG_ERR, "Bad HTML in local HTML attachment $path");
+ return false;
+ }
+
+ // Remove <script>s or htmlawed will dump their contents into output!
+ // Note: removing child nodes while iterating seems to mess things up,
+ // hence the double loop.
+ $scripts = array();
+ foreach ($dom->getElementsByTagName('script') as $script) {
+ $scripts[] = $script;
+ }
+ foreach ($scripts as $script) {
+ common_log(LOG_DEBUG, $script->textContent);
+ $script->parentNode->removeChild($script);
+ }
+
+ // Trim out everything outside the body...
+ $body = $dom->saveHTML();
+ $body = preg_replace('/^.*<body[^>]*>/is', '', $body);
+ $body = preg_replace('/<\/body[^>]*>.*$/is', '', $body);
+
+ require_once INSTALLDIR.'/extlib/htmLawed/htmLawed.php';
+ $config = array('safe' => 1,
+ 'deny_attribute' => 'id,style,on*',
+ 'comment' => 1); // remove comments
+ $scrubbed = htmLawed($body, $config);
+
+ return $scrubbed;
+ }
+
+ function showFallback()
+ {
+ // If we don't know how to display an attachment inline, we probably
+ // shouldn't have gotten to this point.
+ //
+ // But, here we are... displaying details on a file or remote URL
+ // either on the main view or in an ajax-loaded lightbox. As a lesser
+ // of several evils, we'll try redirecting to the actual target via
+ // client-side JS.
+
+ common_log(LOG_ERR, "Empty or unknown type for file id {$this->attachment->id}; falling back to client-side redirect.");
+ $this->out->raw('<script>window.location = ' . json_encode($this->attachment->url) . ';</script>');
+ }
}
diff --git a/lib/authenticationplugin.php b/lib/authenticationplugin.php
index 0a3763e2e..dbdf20629 100644
--- a/lib/authenticationplugin.php
+++ b/lib/authenticationplugin.php
@@ -22,6 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/lib/authorizationplugin.php b/lib/authorizationplugin.php
index 07da9b2d1..d71f77243 100644
--- a/lib/authorizationplugin.php
+++ b/lib/authorizationplugin.php
@@ -22,6 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -67,7 +68,7 @@ abstract class AuthorizationPlugin extends Plugin
//------------Below are the methods that connect StatusNet to the implementing Auth plugin------------\\
- function onStartSetUser(&$user) {
+ function onStartSetUser($user) {
$loginAllowed = $this->loginAllowed($user);
if($loginAllowed === true){
return;
@@ -84,7 +85,7 @@ abstract class AuthorizationPlugin extends Plugin
}
}
- function onStartSetApiUser(&$user) {
+ function onStartSetApiUser($user) {
return $this->onStartSetUser($user);
}
diff --git a/lib/avatarlink.php b/lib/avatarlink.php
index e67799e2e..7d4256d6e 100644
--- a/lib/avatarlink.php
+++ b/lib/avatarlink.php
@@ -76,8 +76,8 @@ class AvatarLink
$alink = new AvatarLink();
$alink->url = $filename;
$alink->height = $size;
+ $alink->width = $size;
if (!empty($filename)) {
- $alink->width = $size;
$alink->type = self::mediatype($filename);
} else {
$alink->url = User_group::defaultLogo($size);
diff --git a/lib/command.php b/lib/command.php
index f7421269d..a769dc1fc 100644
--- a/lib/command.php
+++ b/lib/command.php
@@ -122,6 +122,8 @@ class Command
}
Event::handle('EndCommandGetProfile', array($this, $arg, &$profile));
if (!$profile) {
+ // TRANS: Message given requesting a profile for a non-existing user.
+ // TRANS: %s is the nickname of the user for which the profile could not be found.
throw new CommandException(sprintf(_('Could not find a user with nickname %s'), $arg));
}
return $profile;
@@ -140,6 +142,8 @@ class Command
}
Event::handle('EndCommandGetUser', array($this, $arg, &$user));
if (!$user){
+ // TRANS: Message given getting a non-existing user.
+ // TRANS: %s is the nickname of the user that could not be found.
throw new CommandException(sprintf(_('Could not find a local user with nickname %s'),
$arg));
}
@@ -225,6 +229,8 @@ class NudgeCommand extends Command
}
// XXX: notify by IM
// XXX: notify by SMS
+ // TRANS: Message given having nudged another user.
+ // TRANS: %s is the nickname of the user that was nudged.
$channel->output($this->user, sprintf(_('Nudge sent to %s'),
$recipient->nickname));
}
@@ -273,7 +279,7 @@ class FavCommand extends Command
function handle($channel)
{
$notice = $this->getNotice($this->other);
- $fave = Fave::addNew($this->user, $notice);
+ $fave = Fave::addNew($this->user->getProfile(), $notice);
if (!$fave) {
$channel->error($this->user, _('Could not create favorite.'));
@@ -328,12 +334,16 @@ class JoinCommand extends Command
Event::handle('EndJoinGroup', array($group, $cur));
}
} catch (Exception $e) {
- $channel->error($cur, sprintf(_('Could not join user %s to group %s'),
+ // TRANS: Message given having failed to add a user to a group.
+ // TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+ $channel->error($cur, sprintf(_('Could not join user %1$s to group %2$s'),
$cur->nickname, $group->nickname));
return;
}
- $channel->output($cur, sprintf(_('%s joined group %s'),
+ // TRANS: Message given having added a user to a group.
+ // TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+ $channel->output($cur, sprintf(_('%1$s joined group %2$s'),
$cur->nickname,
$group->nickname));
}
@@ -370,12 +380,16 @@ class DropCommand extends Command
Event::handle('EndLeaveGroup', array($group, $cur));
}
} catch (Exception $e) {
- $channel->error($cur, sprintf(_('Could not remove user %s to group %s'),
+ // TRANS: Message given having failed to remove a user from a group.
+ // TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+ $channel->error($cur, sprintf(_('Could not remove user %1$s from group %2$s'),
$cur->nickname, $group->nickname));
return;
}
- $channel->output($cur, sprintf(_('%s left group %s'),
+ // TRANS: Message given having removed a user from a group.
+ // TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+ $channel->output($cur, sprintf(_('%1$s left group %2$s'),
$cur->nickname,
$group->nickname));
}
@@ -395,18 +409,24 @@ class WhoisCommand extends Command
{
$recipient = $this->getProfile($this->other);
+ // TRANS: Whois output.
+ // TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
$whois = sprintf(_("%1\$s (%2\$s)"), $recipient->nickname,
$recipient->profileurl);
if ($recipient->fullname) {
+ // TRANS: Whois output. %s is the full name of the queried user.
$whois .= "\n" . sprintf(_('Fullname: %s'), $recipient->fullname);
}
if ($recipient->location) {
+ // TRANS: Whois output. %s is the location of the queried user.
$whois .= "\n" . sprintf(_('Location: %s'), $recipient->location);
}
if ($recipient->homepage) {
+ // TRANS: Whois output. %s is the homepage of the queried user.
$whois .= "\n" . sprintf(_('Homepage: %s'), $recipient->homepage);
}
if ($recipient->bio) {
+ // TRANS: Whois output. %s is the bio information of the queried user.
$whois .= "\n" . sprintf(_('About: %s'), $recipient->bio);
}
$channel->output($this->user, $whois);
@@ -447,7 +467,9 @@ class MessageCommand extends Command
$this->text = common_shorten_links($this->text);
if (Message::contentTooLong($this->text)) {
- $channel->error($this->user, sprintf(_('Message too long - maximum is %d characters, you sent %d'),
+ // TRANS: Message given if content is too long.
+ // TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+ $channel->error($this->user, sprintf(_('Message too long - maximum is %1$d characters, you sent %2$d'),
Message::maxContent(), mb_strlen($this->text)));
return;
}
@@ -465,6 +487,8 @@ class MessageCommand extends Command
$message = Message::saveNew($this->user->id, $other->id, $this->text, $channel->source());
if ($message) {
$message->notify();
+ // TRANS: Message given have sent a direct message to another user.
+ // TRANS: %s is the name of the other user.
$channel->output($this->user, sprintf(_('Direct message to %s sent'), $this->other));
} else {
$channel->error($this->user, _('Error sending direct message.'));
@@ -500,6 +524,8 @@ class RepeatCommand extends Command
if ($repeat) {
+ // TRANS: Message given having repeated a notice from another user.
+ // TRANS: %s is the name of the user for which the notice was repeated.
$channel->output($this->user, sprintf(_('Notice from %s repeated'), $recipient->nickname));
} else {
$channel->error($this->user, _('Error repeating notice.'));
diff --git a/lib/common.php b/lib/common.php
index 334a88ffd..817434b97 100644
--- a/lib/common.php
+++ b/lib/common.php
@@ -22,10 +22,10 @@ if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
//exit with 200 response, if this is checking fancy from the installer
if (isset($_REQUEST['p']) && $_REQUEST['p'] == 'check-fancy') { exit; }
-define('STATUSNET_VERSION', '0.9.0');
+define('STATUSNET_VERSION', '0.9.3');
define('LACONICA_VERSION', STATUSNET_VERSION); // compatibility
-define('STATUSNET_CODENAME', 'Stand');
+define('STATUSNET_CODENAME', 'Half a World Away');
define('AVATAR_PROFILE_SIZE', 96);
define('AVATAR_STREAM_SIZE', 48);
diff --git a/lib/dbqueuemanager.php b/lib/dbqueuemanager.php
index 3032e4ec7..3dda9fd1a 100644
--- a/lib/dbqueuemanager.php
+++ b/lib/dbqueuemanager.php
@@ -135,9 +135,7 @@ class DBQueueManager extends QueueManager
if (empty($qi->claimed)) {
$this->_log(LOG_WARNING, "[$queue:item $qi->id] Ignoring failure for unclaimed queue item");
} else {
- $orig = clone($qi);
- $qi->claimed = null;
- $qi->update($orig);
+ $qi->releaseClaim();
}
$this->stats('error', $queue);
diff --git a/lib/default.php b/lib/default.php
index 10f3f1a97..45a4560ff 100644
--- a/lib/default.php
+++ b/lib/default.php
@@ -72,6 +72,7 @@ $default =
'quote_identifiers' => false,
'type' => 'mysql',
'schemacheck' => 'runtime', // 'runtime' or 'script'
+ 'annotate_queries' => false, // true to add caller comments to queries, eg /* POST Notice::saveNew */
'log_queries' => false, // true to log all DB queries
'log_slow_queries' => 0), // if set, log queries taking over N seconds
'syslog' =>
@@ -87,6 +88,8 @@ $default =
'stomp_username' => null,
'stomp_password' => null,
'stomp_persistent' => true, // keep items across queue server restart, if persistence is enabled
+ 'stomp_transactions' => true, // use STOMP transactions to aid in detecting failures (supported by ActiveMQ, but not by all)
+ 'stomp_acks' => true, // send acknowledgements after successful processing (supported by ActiveMQ, but not by 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)
'softlimit' => '90%', // total size or % of memory_limit at which to restart queue threads gracefully
@@ -138,10 +141,17 @@ $default =
'dir' => null,
'path'=> null,
'ssl' => null),
+ 'theme_upload' =>
+ array('enabled' => extension_loaded('zip')),
'javascript' =>
array('server' => null,
'path'=> null,
'ssl' => null),
+ 'local' => // To override path/server for themes in 'local' dir (not currently applied to local plugins)
+ array('server' => null,
+ 'dir' => null,
+ 'path' => null,
+ 'ssl' => null),
'throttle' =>
array('enabled' => false, // whether to throttle edits; false by default
'count' => 20, // number of allowed messages in timespan
@@ -185,7 +195,8 @@ $default =
'cache' =>
array('base' => null),
'ping' =>
- array('notify' => array()),
+ array('notify' => array(),
+ 'timeout' => 2),
'inboxes' =>
array('enabled' => true), # ignored after 0.9.x
'newuser' =>
@@ -256,6 +267,9 @@ $default =
'linkcolor' => null,
'backgroundimage' => null,
'disposition' => null),
+ 'custom_css' =>
+ array('enabled' => true,
+ 'css' => ''),
'notice' =>
array('contentlimit' => null),
'message' =>
@@ -296,4 +310,12 @@ $default =
),
'api' =>
array('realm' => null),
+ 'nofollow' =>
+ array('subscribers' => true,
+ 'members' => true,
+ 'peopletag' => true),
+ 'http' => // HTTP client settings when contacting other sites
+ array('ssl_cafile' => false, // To enable SSL cert validation, point to a CA bundle (eg '/usr/lib/ssl/certs/ca-certificates.crt')
+ 'curl' => false, // Use CURL backend for HTTP fetches if available. (If not, PHP's socket streams will be used.)
+ ),
);
diff --git a/lib/deluserqueuehandler.php b/lib/deluserqueuehandler.php
index 4a1233a5e..710303938 100644
--- a/lib/deluserqueuehandler.php
+++ b/lib/deluserqueuehandler.php
@@ -49,9 +49,13 @@ class DelUserQueueHandler extends QueueHandler
return true;
}
- if (!$user->hasRole(Profile_role::DELETED)) {
- common_log(LOG_INFO, "User {$user->nickname} is not pending deletion; aborting.");
- return true;
+ try {
+ if (!$user->hasRole(Profile_role::DELETED)) {
+ common_log(LOG_INFO, "User {$user->nickname} is not pending deletion; aborting.");
+ return true;
+ }
+ } catch (UserNoProfileException $unp) {
+ common_log(LOG_INFO, "Deleting user {$user->nickname} with no profile... probably a good idea!");
}
$notice = $this->getNextBatch($user);
diff --git a/lib/distribqueuehandler.php b/lib/distribqueuehandler.php
index d2be7a92c..8f4b72d5c 100644
--- a/lib/distribqueuehandler.php
+++ b/lib/distribqueuehandler.php
@@ -49,19 +49,22 @@ class DistribQueueHandler
}
/**
- * Here's the meat of your queue handler -- you're handed a Notice
- * object, which you may do as you will with.
+ * Handle distribution of a notice after we've saved it:
+ * @li add to local recipient inboxes
+ * @li send email notifications to local @-reply targets
+ * @li run final EndNoticeSave plugin events
+ * @li put any remaining post-processing into the queues
*
* If this function indicates failure, a warning will be logged
* and the item is placed back in the queue to be re-run.
*
+ * @fixme addToInboxes is known to fail sometimes with large recipient sets
+ *
* @param Notice $notice
* @return boolean true on success, false on failure
*/
function handle($notice)
{
- // XXX: do we need to change this for remote users?
-
try {
$notice->addToInboxes();
} catch (Exception $e) {
@@ -69,6 +72,12 @@ class DistribQueueHandler
}
try {
+ $notice->sendReplyNotifications();
+ } catch (Exception $e) {
+ $this->logit($notice, $e);
+ }
+
+ try {
Event::handle('EndNoticeSave', array($notice));
// Enqueue for other handlers
} catch (Exception $e) {
diff --git a/lib/htmloutputter.php b/lib/htmloutputter.php
index 7786b5941..5dc2b38da 100644
--- a/lib/htmloutputter.php
+++ b/lib/htmloutputter.php
@@ -100,6 +100,7 @@ class HTMLOutputter extends XMLOutputter
$type = common_negotiate_type($cp, $sp);
if (!$type) {
+ // TRANS: Client exception 406
throw new ClientException(_('This page is not available in a '.
'media type you accept'), 406);
}
diff --git a/lib/httpclient.php b/lib/httpclient.php
index 64a51353c..514a5afeb 100644
--- a/lib/httpclient.php
+++ b/lib/httpclient.php
@@ -43,6 +43,9 @@ require_once 'HTTP/Request2/Response.php';
*
* This extends the HTTP_Request2_Response class with methods to get info
* about any followed redirects.
+ *
+ * Originally used the name 'HTTPResponse' to match earlier code, but
+ * this conflicts with a class in in the PECL HTTP extension.
*
* @category HTTP
* @package StatusNet
@@ -51,7 +54,7 @@ require_once 'HTTP/Request2/Response.php';
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
-class HTTPResponse extends HTTP_Request2_Response
+class StatusNet_HTTPResponse extends HTTP_Request2_Response
{
function __construct(HTTP_Request2_Response $response, $url, $redirects=0)
{
@@ -129,7 +132,23 @@ class HTTPClient extends HTTP_Request2
// ought to be investigated to see if we can handle
// it gracefully in that case as well.
$this->config['protocol_version'] = '1.0';
-
+
+ // Default state of OpenSSL seems to have no trusted
+ // SSL certificate authorities, which breaks hostname
+ // verification and means we have a hard time communicating
+ // with other sites' HTTPS interfaces.
+ //
+ // Turn off verification unless we've configured a CA bundle.
+ if (common_config('http', 'ssl_cafile')) {
+ $this->config['ssl_cafile'] = common_config('http', 'ssl_cafile');
+ } else {
+ $this->config['ssl_verify_peer'] = false;
+ }
+
+ if (common_config('http', 'curl') && extension_loaded('curl')) {
+ $this->config['adapter'] = 'HTTP_Request2_Adapter_Curl';
+ }
+
parent::__construct($url, $method, $config);
$this->setHeader('User-Agent', $this->userAgent());
}
@@ -146,7 +165,7 @@ class HTTPClient extends HTTP_Request2
/**
* Convenience function to run a GET request.
*
- * @return HTTPResponse
+ * @return StatusNet_HTTPResponse
* @throws HTTP_Request2_Exception
*/
public function get($url, $headers=array())
@@ -157,7 +176,7 @@ class HTTPClient extends HTTP_Request2
/**
* Convenience function to run a HEAD request.
*
- * @return HTTPResponse
+ * @return StatusNet_HTTPResponse
* @throws HTTP_Request2_Exception
*/
public function head($url, $headers=array())
@@ -171,7 +190,7 @@ class HTTPClient extends HTTP_Request2
* @param string $url
* @param array $headers optional associative array of HTTP headers
* @param array $data optional associative array or blob of form data to submit
- * @return HTTPResponse
+ * @return StatusNet_HTTPResponse
* @throws HTTP_Request2_Exception
*/
public function post($url, $headers=array(), $data=array())
@@ -183,12 +202,21 @@ class HTTPClient extends HTTP_Request2
}
/**
- * @return HTTPResponse
+ * @return StatusNet_HTTPResponse
* @throws HTTP_Request2_Exception
*/
protected function doRequest($url, $method, $headers)
{
$this->setUrl($url);
+
+ // Workaround for HTTP_Request2 not setting up SNI in socket contexts;
+ // This fixes cert validation for SSL virtual hosts using SNI.
+ // Requires PHP 5.3.2 or later and OpenSSL with SNI support.
+ if ($this->url->getScheme() == 'https' && defined('OPENSSL_TLSEXT_SERVER_NAME')) {
+ $this->config['ssl_SNI_enabled'] = true;
+ $this->config['ssl_SNI_server_name'] = $this->url->getHost();
+ }
+
$this->setMethod($method);
if ($headers) {
foreach ($headers as $header) {
@@ -217,12 +245,12 @@ class HTTPClient extends HTTP_Request2
}
/**
- * Actually performs the HTTP request and returns an HTTPResponse object
- * with response body and header info.
+ * Actually performs the HTTP request and returns a
+ * StatusNet_HTTPResponse object with response body and header info.
*
* Wraps around parent send() to add logging and redirection processing.
*
- * @return HTTPResponse
+ * @return StatusNet_HTTPResponse
* @throw HTTP_Request2_Exception
*/
public function send()
@@ -265,6 +293,6 @@ class HTTPClient extends HTTP_Request2
}
break;
} while ($maxRedirs);
- return new HTTPResponse($response, $this->getUrl(), $redirs);
+ return new StatusNet_HTTPResponse($response, $this->getUrl(), $redirs);
}
}
diff --git a/lib/installer.php b/lib/installer.php
new file mode 100644
index 000000000..ff2bed140
--- /dev/null
+++ b/lib/installer.php
@@ -0,0 +1,585 @@
+<?php
+
+/**
+ * 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/>.
+ *
+ * @category Installation
+ * @package Installation
+ *
+ * @author Adrian Lang <mail@adrianlang.de>
+ * @author Brenda Wallace <shiny@cpan.org>
+ * @author Brett Taylor <brett@webfroot.co.nz>
+ * @author Brion Vibber <brion@pobox.com>
+ * @author CiaranG <ciaran@ciarang.com>
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @author Eric Helgeson <helfire@Erics-MBP.local>
+ * @author Evan Prodromou <evan@status.net>
+ * @author Robin Millette <millette@controlyourself.ca>
+ * @author Sarven Capadisli <csarven@status.net>
+ * @author Tom Adams <tom@holizz.com>
+ * @author Zach Copley <zach@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @license GNU Affero General Public License http://www.gnu.org/licenses/
+ * @version 0.9.x
+ * @link http://status.net
+ */
+
+abstract class Installer
+{
+ /** Web site info */
+ public $sitename, $server, $path, $fancy;
+ /** DB info */
+ public $host, $dbname, $dbtype, $username, $password, $db;
+ /** Administrator info */
+ public $adminNick, $adminPass, $adminEmail, $adminUpdates;
+ /** Should we skip writing the configuration file? */
+ public $skipConfig = false;
+
+ public static $dbModules = array(
+ 'mysql' => array(
+ 'name' => 'MySQL',
+ 'check_module' => 'mysqli',
+ 'installer' => 'mysql_db_installer',
+ ),
+ 'pgsql' => array(
+ 'name' => 'PostgreSQL',
+ 'check_module' => 'pgsql',
+ 'installer' => 'pgsql_db_installer',
+ ),
+ );
+
+ /**
+ * Attempt to include a PHP file and report if it worked, while
+ * suppressing the annoying warning messages on failure.
+ */
+ private function haveIncludeFile($filename) {
+ $old = error_reporting(error_reporting() & ~E_WARNING);
+ $ok = include_once($filename);
+ error_reporting($old);
+ return $ok;
+ }
+
+ /**
+ * Check if all is ready for installation
+ *
+ * @return void
+ */
+ function checkPrereqs()
+ {
+ $pass = true;
+
+ $config = INSTALLDIR.'/config.php';
+ if (file_exists($config)) {
+ if (!is_writable($config) || filesize($config) > 0) {
+ $this->warning('Config file "config.php" already exists.');
+ $pass = false;
+ }
+ }
+
+ if (version_compare(PHP_VERSION, '5.2.3', '<')) {
+ $this->warning('Require PHP version 5.2.3 or greater.');
+ $pass = false;
+ }
+
+ // Look for known library bugs
+ $str = "abcdefghijklmnopqrstuvwxyz";
+ $replaced = preg_replace('/[\p{Cc}\p{Cs}]/u', '*', $str);
+ if ($str != $replaced) {
+ $this->warning('PHP is linked to a version of the PCRE library ' .
+ 'that does not support Unicode properties. ' .
+ 'If you are running Red Hat Enterprise Linux / ' .
+ 'CentOS 5.4 or earlier, see <a href="' .
+ 'http://status.net/wiki/Red_Hat_Enterprise_Linux#PCRE_library' .
+ '">our documentation page</a> on fixing this.');
+ $pass = false;
+ }
+
+ $reqs = array('gd', 'curl',
+ 'xmlwriter', 'mbstring', 'xml', 'dom', 'simplexml');
+
+ foreach ($reqs as $req) {
+ if (!$this->checkExtension($req)) {
+ $this->warning(sprintf('Cannot load required extension: <code>%s</code>', $req));
+ $pass = false;
+ }
+ }
+
+ // Make sure we have at least one database module available
+ $missingExtensions = array();
+ foreach (self::$dbModules as $type => $info) {
+ if (!$this->checkExtension($info['check_module'])) {
+ $missingExtensions[] = $info['check_module'];
+ }
+ }
+
+ if (count($missingExtensions) == count(self::$dbModules)) {
+ $req = implode(', ', $missingExtensions);
+ $this->warning(sprintf('Cannot find a database extension. You need at least one of %s.', $req));
+ $pass = false;
+ }
+
+ // @fixme this check seems to be insufficient with Windows ACLs
+ if (!is_writable(INSTALLDIR)) {
+ $this->warning(sprintf('Cannot write config file to: <code>%s</code></p>', INSTALLDIR),
+ sprintf('On your server, try this command: <code>chmod a+w %s</code>', INSTALLDIR));
+ $pass = false;
+ }
+
+ // Check the subdirs used for file uploads
+ $fileSubdirs = array('avatar', 'background', 'file');
+ foreach ($fileSubdirs as $fileSubdir) {
+ $fileFullPath = INSTALLDIR."/$fileSubdir/";
+ if (!is_writable($fileFullPath)) {
+ $this->warning(sprintf('Cannot write to %s directory: <code>%s</code>', $fileSubdir, $fileFullPath),
+ sprintf('On your server, try this command: <code>chmod a+w %s</code>', $fileFullPath));
+ $pass = false;
+ }
+ }
+
+ return $pass;
+ }
+
+ /**
+ * Checks if a php extension is both installed and loaded
+ *
+ * @param string $name of extension to check
+ *
+ * @return boolean whether extension is installed and loaded
+ */
+ function checkExtension($name)
+ {
+ if (extension_loaded($name)) {
+ return true;
+ } elseif (function_exists('dl') && ini_get('enable_dl') && !ini_get('safe_mode')) {
+ // dl will throw a fatal error if it's disabled or we're in safe mode.
+ // More fun, it may not even exist under some SAPIs in 5.3.0 or later...
+ $soname = $name . '.' . PHP_SHLIB_SUFFIX;
+ if (PHP_SHLIB_SUFFIX == 'dll') {
+ $soname = "php_" . $soname;
+ }
+ return @dl($soname);
+ } else {
+ return false;
+ }
+ }
+
+ /**
+ * Basic validation on the database paramters
+ * Side effects: error output if not valid
+ *
+ * @return boolean success
+ */
+ function validateDb()
+ {
+ $fail = false;
+
+ if (empty($this->host)) {
+ $this->updateStatus("No hostname specified.", true);
+ $fail = true;
+ }
+
+ if (empty($this->database)) {
+ $this->updateStatus("No database specified.", true);
+ $fail = true;
+ }
+
+ if (empty($this->username)) {
+ $this->updateStatus("No username specified.", true);
+ $fail = true;
+ }
+
+ if (empty($this->sitename)) {
+ $this->updateStatus("No sitename specified.", true);
+ $fail = true;
+ }
+
+ return !$fail;
+ }
+
+ /**
+ * Basic validation on the administrator user paramters
+ * Side effects: error output if not valid
+ *
+ * @return boolean success
+ */
+ function validateAdmin()
+ {
+ $fail = false;
+
+ if (empty($this->adminNick)) {
+ $this->updateStatus("No initial StatusNet user nickname specified.", true);
+ $fail = true;
+ }
+ if ($this->adminNick && !preg_match('/^[0-9a-z]{1,64}$/', $this->adminNick)) {
+ $this->updateStatus('The user nickname "' . htmlspecialchars($this->adminNick) .
+ '" is invalid; should be plain letters and numbers no longer than 64 characters.', true);
+ $fail = true;
+ }
+ // @fixme hardcoded list; should use User::allowed_nickname()
+ // if/when it's safe to have loaded the infrastructure here
+ $blacklist = array('main', 'admin', 'twitter', 'settings', 'rsd.xml', 'favorited', 'featured', 'favoritedrss', 'featuredrss', 'rss', 'getfile', 'api', 'groups', 'group', 'peopletag', 'tag', 'user', 'message', 'conversation', 'bookmarklet', 'notice', 'attachment', 'search', 'index.php', 'doc', 'opensearch', 'robots.txt', 'xd_receiver.html', 'facebook');
+ if (in_array($this->adminNick, $blacklist)) {
+ $this->updateStatus('The user nickname "' . htmlspecialchars($this->adminNick) .
+ '" is reserved.', true);
+ $fail = true;
+ }
+
+ if (empty($this->adminPass)) {
+ $this->updateStatus("No initial StatusNet user password specified.", true);
+ $fail = true;
+ }
+
+ return !$fail;
+ }
+
+ /**
+ * Set up the database with the appropriate function for the selected type...
+ * Saves database info into $this->db.
+ *
+ * @return mixed array of database connection params on success, false on failure
+ */
+ function setupDatabase()
+ {
+ if ($this->db) {
+ throw new Exception("Bad order of operations: DB already set up.");
+ }
+ $method = self::$dbModules[$this->dbtype]['installer'];
+ $db = call_user_func(array($this, $method),
+ $this->host,
+ $this->database,
+ $this->username,
+ $this->password);
+ $this->db = $db;
+ return $this->db;
+ }
+
+ /**
+ * Set up a database on PostgreSQL.
+ * Will output status updates during the operation.
+ *
+ * @param string $host
+ * @param string $database
+ * @param string $username
+ * @param string $password
+ * @return mixed array of database connection params on success, false on failure
+ *
+ * @fixme escape things in the connection string in case we have a funny pass etc
+ */
+ function Pgsql_Db_installer($host, $database, $username, $password)
+ {
+ $connstring = "dbname=$database host=$host user=$username";
+
+ //No password would mean trust authentication used.
+ if (!empty($password)) {
+ $connstring .= " password=$password";
+ }
+ $this->updateStatus("Starting installation...");
+ $this->updateStatus("Checking database...");
+ $conn = pg_connect($connstring);
+
+ if ($conn ===false) {
+ $this->updateStatus("Failed to connect to database: $connstring");
+ return false;
+ }
+
+ //ensure database encoding is UTF8
+ $record = pg_fetch_object(pg_query($conn, 'SHOW server_encoding'));
+ if ($record->server_encoding != 'UTF8') {
+ $this->updateStatus("StatusNet requires UTF8 character encoding. Your database is ". htmlentities($record->server_encoding));
+ return false;
+ }
+
+ $this->updateStatus("Running database script...");
+ //wrap in transaction;
+ pg_query($conn, 'BEGIN');
+ $res = $this->runDbScript('statusnet_pg.sql', $conn, 'pgsql');
+
+ if ($res === false) {
+ $this->updateStatus("Can't run database script.", true);
+ return false;
+ }
+ foreach (array('sms_carrier' => 'SMS carrier',
+ 'notice_source' => 'notice source',
+ 'foreign_services' => 'foreign service')
+ as $scr => $name) {
+ $this->updateStatus(sprintf("Adding %s data to database...", $name));
+ $res = $this->runDbScript($scr.'.sql', $conn, 'pgsql');
+ if ($res === false) {
+ $this->updateStatus(sprintf("Can't run %d script.", $name), true);
+ return false;
+ }
+ }
+ pg_query($conn, 'COMMIT');
+
+ if (empty($password)) {
+ $sqlUrl = "pgsql://$username@$host/$database";
+ } else {
+ $sqlUrl = "pgsql://$username:$password@$host/$database";
+ }
+
+ $db = array('type' => 'pgsql', 'database' => $sqlUrl);
+
+ return $db;
+ }
+
+ /**
+ * Set up a database on MySQL.
+ * Will output status updates during the operation.
+ *
+ * @param string $host
+ * @param string $database
+ * @param string $username
+ * @param string $password
+ * @return mixed array of database connection params on success, false on failure
+ *
+ * @fixme escape things in the connection string in case we have a funny pass etc
+ */
+ function Mysql_Db_installer($host, $database, $username, $password)
+ {
+ $this->updateStatus("Starting installation...");
+ $this->updateStatus("Checking database...");
+
+ $conn = mysqli_init();
+ if (!$conn->real_connect($host, $username, $password)) {
+ $this->updateStatus("Can't connect to server '$host' as '$username'.", true);
+ return false;
+ }
+ $this->updateStatus("Changing to database...");
+ if (!$conn->select_db($database)) {
+ $this->updateStatus("Can't change to database.", true);
+ return false;
+ }
+
+ $this->updateStatus("Running database script...");
+ $res = $this->runDbScript('statusnet.sql', $conn);
+ if ($res === false) {
+ $this->updateStatus("Can't run database script.", true);
+ return false;
+ }
+ foreach (array('sms_carrier' => 'SMS carrier',
+ 'notice_source' => 'notice source',
+ 'foreign_services' => 'foreign service')
+ as $scr => $name) {
+ $this->updateStatus(sprintf("Adding %s data to database...", $name));
+ $res = $this->runDbScript($scr.'.sql', $conn);
+ if ($res === false) {
+ $this->updateStatus(sprintf("Can't run %d script.", $name), true);
+ return false;
+ }
+ }
+
+ $sqlUrl = "mysqli://$username:$password@$host/$database";
+ $db = array('type' => 'mysql', 'database' => $sqlUrl);
+ return $db;
+ }
+
+ /**
+ * Write a stock configuration file.
+ *
+ * @return boolean success
+ *
+ * @fixme escape variables in output in case we have funny chars, apostrophes etc
+ */
+ function writeConf()
+ {
+ // assemble configuration file in a string
+ $cfg = "<?php\n".
+ "if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }\n\n".
+
+ // site name
+ "\$config['site']['name'] = '{$this->sitename}';\n\n".
+
+ // site location
+ "\$config['site']['server'] = '{$this->server}';\n".
+ "\$config['site']['path'] = '{$this->path}'; \n\n".
+
+ // checks if fancy URLs are enabled
+ ($this->fancy ? "\$config['site']['fancy'] = true;\n\n":'').
+
+ // database
+ "\$config['db']['database'] = '{$this->db['database']}';\n\n".
+ ($this->db['type'] == 'pgsql' ? "\$config['db']['quote_identifiers'] = true;\n\n":'').
+ "\$config['db']['type'] = '{$this->db['type']}';\n\n";
+
+ // Normalize line endings for Windows servers
+ $cfg = str_replace("\n", PHP_EOL, $cfg);
+
+ // write configuration file out to install directory
+ $res = file_put_contents(INSTALLDIR.'/config.php', $cfg);
+
+ return $res;
+ }
+
+ /**
+ * Install schema into the database
+ *
+ * @param string $filename location of database schema file
+ * @param dbconn $conn connection to database
+ * @param string $type type of database, currently mysql or pgsql
+ *
+ * @return boolean - indicating success or failure
+ */
+ function runDbScript($filename, $conn, $type = 'mysqli')
+ {
+ $sql = trim(file_get_contents(INSTALLDIR . '/db/' . $filename));
+ $stmts = explode(';', $sql);
+ foreach ($stmts as $stmt) {
+ $stmt = trim($stmt);
+ if (!mb_strlen($stmt)) {
+ continue;
+ }
+ // FIXME: use PEAR::DB or PDO instead of our own switch
+ switch ($type) {
+ case 'mysqli':
+ $res = $conn->query($stmt);
+ if ($res === false) {
+ $error = $conn->error;
+ }
+ break;
+ case 'pgsql':
+ $res = pg_query($conn, $stmt);
+ if ($res === false) {
+ $error = pg_last_error();
+ }
+ break;
+ default:
+ $this->updateStatus("runDbScript() error: unknown database type ". $type ." provided.");
+ }
+ if ($res === false) {
+ $this->updateStatus("ERROR ($error) for SQL '$stmt'");
+ return $res;
+ }
+ }
+ return true;
+ }
+
+ /**
+ * Create the initial admin user account.
+ * Side effect: may load portions of StatusNet framework.
+ * Side effect: outputs program info
+ */
+ function registerInitialUser()
+ {
+ define('STATUSNET', true);
+ define('LACONICA', true); // compatibility
+
+ require_once INSTALLDIR . '/lib/common.php';
+
+ $data = array('nickname' => $this->adminNick,
+ 'password' => $this->adminPass,
+ 'fullname' => $this->adminNick);
+ if ($this->adminEmail) {
+ $data['email'] = $this->adminEmail;
+ }
+ $user = User::register($data);
+
+ if (empty($user)) {
+ return false;
+ }
+
+ // give initial user carte blanche
+
+ $user->grantRole('owner');
+ $user->grantRole('moderator');
+ $user->grantRole('administrator');
+
+ // Attempt to do a remote subscribe to update@status.net
+ // Will fail if instance is on a private network.
+
+ if ($this->adminUpdates && class_exists('Ostatus_profile')) {
+ try {
+ $oprofile = Ostatus_profile::ensureProfileURL('http://update.status.net/');
+ Subscription::start($user->getProfile(), $oprofile->localProfile());
+ $this->updateStatus("Set up subscription to <a href='http://update.status.net/'>update@status.net</a>.");
+ } catch (Exception $e) {
+ $this->updateStatus("Could not set up subscription to <a href='http://update.status.net/'>update@status.net</a>.", true);
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * The beef of the installer!
+ * Create database, config file, and admin user.
+ *
+ * Prerequisites: validation of input data.
+ *
+ * @return boolean success
+ */
+ function doInstall()
+ {
+ $this->db = $this->setupDatabase();
+
+ if (!$this->db) {
+ // database connection failed, do not move on to create config file.
+ return false;
+ }
+
+ if (!$this->skipConfig) {
+ $this->updateStatus("Writing config file...");
+ $res = $this->writeConf();
+
+ if (!$res) {
+ $this->updateStatus("Can't write config file.", true);
+ return false;
+ }
+ }
+
+ if (!empty($this->adminNick)) {
+ // Okay, cross fingers and try to register an initial user
+ if ($this->registerInitialUser()) {
+ $this->updateStatus(
+ "An initial user with the administrator role has been created."
+ );
+ } else {
+ $this->updateStatus(
+ "Could not create initial StatusNet user (administrator).",
+ true
+ );
+ return false;
+ }
+ }
+
+ /*
+ TODO https needs to be considered
+ */
+ $link = "http://".$this->server.'/'.$this->path;
+
+ $this->updateStatus("StatusNet has been installed at $link");
+ $this->updateStatus(
+ "<strong>DONE!</strong> You can visit your <a href='$link'>new StatusNet site</a> (login as '$this->adminNick'). If this is your first StatusNet install, you may want to poke around our <a href='http://status.net/wiki/Getting_started'>Getting Started guide</a>."
+ );
+
+ return true;
+ }
+
+ /**
+ * Output a pre-install-time warning message
+ * @param string $message HTML ok, but should be plaintext-able
+ * @param string $submessage HTML ok, but should be plaintext-able
+ */
+ abstract function warning($message, $submessage='');
+
+ /**
+ * Output an install-time progress message
+ * @param string $message HTML ok, but should be plaintext-able
+ * @param boolean $error true if this should be marked as an error condition
+ */
+ abstract function updateStatus($status, $error=false);
+
+}
diff --git a/lib/jabber.php b/lib/jabber.php
index db4e2e9a7..cdcfc4423 100644
--- a/lib/jabber.php
+++ b/lib/jabber.php
@@ -34,39 +34,198 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
require_once 'XMPPHP/XMPP.php';
/**
- * checks whether a string is a syntactically valid Jabber ID (JID)
+ * Splits a Jabber ID (JID) into node, domain, and resource portions.
+ *
+ * Based on validation routine submitted by:
+ * @copyright 2009 Patrick Georgi <patrick@georgi-clan.de>
+ * @license Licensed under ISC-L, which is compatible with everything else that keeps the copyright notice intact.
*
* @param string $jid string to check
*
+ * @return array with "node", "domain", and "resource" indices
+ * @throws Exception if input is not valid
+ */
+
+function jabber_split_jid($jid)
+{
+ $chars = '';
+ /* the following definitions come from stringprep, Appendix C,
+ which is used in its entirety by nodeprop, Chapter 5, "Prohibited Output" */
+ /* C1.1 ASCII space characters */
+ $chars .= "\x{20}";
+ /* C1.2 Non-ASCII space characters */
+ $chars .= "\x{a0}\x{1680}\x{2000}-\x{200b}\x{202f}\x{205f}\x{3000a}";
+ /* C2.1 ASCII control characters */
+ $chars .= "\x{00}-\x{1f}\x{7f}";
+ /* C2.2 Non-ASCII control characters */
+ $chars .= "\x{80}-\x{9f}\x{6dd}\x{70f}\x{180e}\x{200c}\x{200d}\x{2028}\x{2029}\x{2060}-\x{2063}\x{206a}-\x{206f}\x{feff}\x{fff9}-\x{fffc}\x{1d173}-\x{1d17a}";
+ /* C3 - Private Use */
+ $chars .= "\x{e000}-\x{f8ff}\x{f0000}-\x{ffffd}\x{100000}-\x{10fffd}";
+ /* C4 - Non-character code points */
+ $chars .= "\x{fdd0}-\x{fdef}\x{fffe}\x{ffff}\x{1fffe}\x{1ffff}\x{2fffe}\x{2ffff}\x{3fffe}\x{3ffff}\x{4fffe}\x{4ffff}\x{5fffe}\x{5ffff}\x{6fffe}\x{6ffff}\x{7fffe}\x{7ffff}\x{8fffe}\x{8ffff}\x{9fffe}\x{9ffff}\x{afffe}\x{affff}\x{bfffe}\x{bffff}\x{cfffe}\x{cffff}\x{dfffe}\x{dffff}\x{efffe}\x{effff}\x{ffffe}\x{fffff}\x{10fffe}\x{10ffff}";
+ /* C5 - Surrogate codes */
+ $chars .= "\x{d800}-\x{dfff}";
+ /* C6 - Inappropriate for plain text */
+ $chars .= "\x{fff9}-\x{fffd}";
+ /* C7 - Inappropriate for canonical representation */
+ $chars .= "\x{2ff0}-\x{2ffb}";
+ /* C8 - Change display properties or are deprecated */
+ $chars .= "\x{340}\x{341}\x{200e}\x{200f}\x{202a}-\x{202e}\x{206a}-\x{206f}";
+ /* C9 - Tagging characters */
+ $chars .= "\x{e0001}\x{e0020}-\x{e007f}";
+
+ /* Nodeprep forbids some more characters */
+ $nodeprepchars = $chars;
+ $nodeprepchars .= "\x{22}\x{26}\x{27}\x{2f}\x{3a}\x{3c}\x{3e}\x{40}";
+
+ $parts = explode("/", $jid, 2);
+ if (count($parts) > 1) {
+ $resource = $parts[1];
+ if ($resource == '') {
+ // Warning: empty resource isn't legit.
+ // But if we're normalizing, we may as well take it...
+ }
+ } else {
+ $resource = null;
+ }
+
+ $node = explode("@", $parts[0]);
+ if ((count($node) > 2) || (count($node) == 0)) {
+ throw new Exception("Invalid JID: too many @s");
+ } else if (count($node) == 1) {
+ $domain = $node[0];
+ $node = null;
+ } else {
+ $domain = $node[1];
+ $node = $node[0];
+ if ($node == '') {
+ throw new Exception("Invalid JID: @ but no node");
+ }
+ }
+
+ // Length limits per http://xmpp.org/rfcs/rfc3920.html#addressing
+ if ($node !== null) {
+ if (strlen($node) > 1023) {
+ throw new Exception("Invalid JID: node too long.");
+ }
+ if (preg_match("/[".$nodeprepchars."]/u", $node)) {
+ throw new Exception("Invalid JID node '$node'");
+ }
+ }
+
+ if (strlen($domain) > 1023) {
+ throw new Exception("Invalid JID: domain too long.");
+ }
+ if (!common_valid_domain($domain)) {
+ throw new Exception("Invalid JID domain name '$domain'");
+ }
+
+ if ($resource !== null) {
+ if (strlen($resource) > 1023) {
+ throw new Exception("Invalid JID: resource too long.");
+ }
+ if (preg_match("/[".$chars."]/u", $resource)) {
+ throw new Exception("Invalid JID resource '$resource'");
+ }
+ }
+
+ return array('node' => is_null($node) ? null : mb_strtolower($node),
+ 'domain' => is_null($domain) ? null : mb_strtolower($domain),
+ 'resource' => $resource);
+}
+
+/**
+ * Checks whether a string is a syntactically valid Jabber ID (JID),
+ * either with or without a resource.
+ *
+ * Note that a bare domain can be a valid JID.
+ *
+ * @param string $jid string to check
+ * @param bool $check_domain whether we should validate that domain...
+ *
* @return boolean whether the string is a valid JID
*/
+function jabber_valid_full_jid($jid, $check_domain=false)
+{
+ try {
+ $parts = jabber_split_jid($jid);
+ if ($check_domain) {
+ if (!jabber_check_domain($parts['domain'])) {
+ return false;
+ }
+ }
+ return $parts['resource'] !== ''; // missing or present; empty ain't kosher
+ } catch (Exception $e) {
+ return false;
+ }
+}
-function jabber_valid_base_jid($jid)
+/**
+ * Checks whether a string is a syntactically valid base Jabber ID (JID).
+ * A base JID won't include a resource specifier on the end; since we
+ * take it off when reading input we can't really use them reliably
+ * to direct outgoing messages yet (sorry guys!)
+ *
+ * Note that a bare domain can be a valid JID.
+ *
+ * @param string $jid string to check
+ * @param bool $check_domain whether we should validate that domain...
+ *
+ * @return boolean whether the string is a valid JID
+ */
+function jabber_valid_base_jid($jid, $check_domain=false)
{
- // Cheap but effective
- return Validate::email($jid);
+ try {
+ $parts = jabber_split_jid($jid);
+ if ($check_domain) {
+ if (!jabber_check_domain($parts['domain'])) {
+ return false;
+ }
+ }
+ return ($parts['resource'] === null); // missing; empty ain't kosher
+ } catch (Exception $e) {
+ return false;
+ }
}
/**
- * normalizes a Jabber ID for comparison
+ * Normalizes a Jabber ID for comparison, dropping the resource component if any.
*
* @param string $jid JID to check
+ * @param bool $check_domain if true, reject if the domain isn't findable
*
* @return string an equivalent JID in normalized (lowercase) form
*/
function jabber_normalize_jid($jid)
{
- if (preg_match("/(?:([^\@]+)\@)?([^\/]+)(?:\/(.*))?$/", $jid, $matches)) {
- $node = $matches[1];
- $server = $matches[2];
- return strtolower($node.'@'.$server);
- } else {
+ try {
+ $parts = jabber_split_jid($jid);
+ if ($parts['node'] !== null) {
+ return $parts['node'] . '@' . $parts['domain'];
+ } else {
+ return $parts['domain'];
+ }
+ } catch (Exception $e) {
return null;
}
}
/**
+ * Check if this domain's got some legit DNS record
+ */
+function jabber_check_domain($domain)
+{
+ if (checkdnsrr("_xmpp-server._tcp." . $domain, "SRV")) {
+ return true;
+ }
+ if (checkdnsrr($domain, "ANY")) {
+ return true;
+ }
+ return false;
+}
+
+/**
* the JID of the Jabber daemon for this StatusNet instance
*
* @return string JID of the Jabber daemon
diff --git a/lib/language.php b/lib/language.php
index 64b59e739..d93e4e0ad 100644
--- a/lib/language.php
+++ b/lib/language.php
@@ -61,7 +61,7 @@ if (!function_exists('dpgettext')) {
* Not currently exposed in PHP's gettext module; implemented to be compat
* with gettext.h's macros.
*
- * @param string $domain domain identifier, or null for default domain
+ * @param string $domain domain identifier
* @param string $context context identifier, should be some key like "menu|file"
* @param string $msgid English source text
* @return string original or translated message
@@ -106,7 +106,7 @@ if (!function_exists('dnpgettext')) {
* Not currently exposed in PHP's gettext module; implemented to be compat
* with gettext.h's macros.
*
- * @param string $domain domain identifier, or null for default domain
+ * @param string $domain domain identifier
* @param string $context context identifier, should be some key like "menu|file"
* @param string $msg singular English source text
* @param string $plural plural English source text
@@ -180,7 +180,11 @@ function _m($msg/*, ...*/)
}
/**
- * Looks for which plugin we've been called from to set the gettext domain.
+ * Looks for which plugin we've been called from to set the gettext domain;
+ * if not in a plugin subdirectory, we'll use the default 'statusnet'.
+ *
+ * Note: we can't return null for default domain since most of the PHP gettext
+ * wrapper functions turn null into "" before passing to the backend library.
*
* @param array $backtrace debug_backtrace() output
* @return string
@@ -202,16 +206,26 @@ function _mdomain($backtrace)
static $cached;
$path = $backtrace[0]['file'];
if (!isset($cached[$path])) {
+ $final = 'statusnet'; // assume default domain
if (DIRECTORY_SEPARATOR !== '/') {
$path = strtr($path, DIRECTORY_SEPARATOR, '/');
}
- $cut = strpos($path, '/plugins/') + 9;
- $cut2 = strpos($path, '/', $cut);
- if ($cut && $cut2) {
- $cached[$path] = substr($path, $cut, $cut2 - $cut);
+ $plug = strpos($path, '/plugins/');
+ if ($plug === false) {
+ // We're not in a plugin; return default domain.
+ $final = 'statusnet';
} else {
- return null;
+ $cut = $plug + 9;
+ $cut2 = strpos($path, '/', $cut);
+ if ($cut2) {
+ $final = substr($path, $cut, $cut2 - $cut);
+ } else {
+ // We might be running directly from the plugins dir?
+ // If so, there's no place to store locale info.
+ $final = 'statusnet';
+ }
}
+ $cached[$path] = $final;
}
return $cached[$path];
}
@@ -286,12 +300,14 @@ function get_nice_language_list()
*/
function get_all_languages() {
return array(
+ 'af' => array('q' => 0.8, 'lang' => 'af', 'name' => 'Afrikaans', 'direction' => 'ltr'),
'ar' => array('q' => 0.8, 'lang' => 'ar', 'name' => 'Arabic', 'direction' => 'rtl'),
'arz' => array('q' => 0.8, 'lang' => 'arz', 'name' => 'Egyptian Spoken Arabic', 'direction' => 'rtl'),
'bg' => array('q' => 0.8, 'lang' => 'bg', 'name' => 'Bulgarian', 'direction' => 'ltr'),
'br' => array('q' => 0.8, 'lang' => 'br', 'name' => 'Breton', 'direction' => 'ltr'),
'ca' => array('q' => 0.5, 'lang' => 'ca', 'name' => 'Catalan', 'direction' => 'ltr'),
'cs' => array('q' => 0.5, 'lang' => 'cs', 'name' => 'Czech', 'direction' => 'ltr'),
+ 'da' => array('q' => 0.8, 'lang' => 'da', 'name' => 'Danish', 'direction' => 'ltr'),
'de' => array('q' => 0.8, 'lang' => 'de', 'name' => 'German', 'direction' => 'ltr'),
'el' => array('q' => 0.1, 'lang' => 'el', 'name' => 'Greek', 'direction' => 'ltr'),
'en-us' => array('q' => 1, 'lang' => 'en', 'name' => 'English (US)', 'direction' => 'ltr'),
@@ -301,7 +317,8 @@ function get_all_languages() {
'fi' => array('q' => 1, 'lang' => 'fi', 'name' => 'Finnish', 'direction' => 'ltr'),
'fa' => array('q' => 1, 'lang' => 'fa', 'name' => 'Persian', 'direction' => 'rtl'),
'fr-fr' => array('q' => 1, 'lang' => 'fr', 'name' => 'French', 'direction' => 'ltr'),
- 'ga' => array('q' => 0.5, 'lang' => 'ga', 'name' => 'Galician', 'direction' => 'ltr'),
+ 'ga' => array('q' => 0.5, 'lang' => 'ga', 'name' => 'Irish', 'direction' => 'ltr'),
+ 'gl' => array('q' => 0.8, 'lang' => 'gl', 'name' => 'Galician', 'direction' => 'ltr'),
'he' => array('q' => 0.5, 'lang' => 'he', 'name' => 'Hebrew', 'direction' => 'rtl'),
'hsb' => array('q' => 0.8, 'lang' => 'hsb', 'name' => 'Upper Sorbian', 'direction' => 'ltr'),
'ia' => array('q' => 0.8, 'lang' => 'ia', 'name' => 'Interlingua', 'direction' => 'ltr'),
diff --git a/lib/liberalstomp.php b/lib/liberalstomp.php
index 3d38953fd..70c22c17e 100644
--- a/lib/liberalstomp.php
+++ b/lib/liberalstomp.php
@@ -147,5 +147,30 @@ class LiberalStomp extends Stomp
}
return $frame;
}
-}
+
+ /**
+ * Write frame to server
+ *
+ * @param StompFrame $stompFrame
+ */
+ protected function _writeFrame (StompFrame $stompFrame)
+ {
+ if (!is_resource($this->_socket)) {
+ require_once 'Stomp/Exception.php';
+ throw new StompException('Socket connection hasn\'t been established');
+ }
+
+ $data = $stompFrame->__toString();
+
+ // Make sure the socket's in a writable state; if not, wait a bit.
+ stream_set_blocking($this->_socket, 1);
+
+ $r = fwrite($this->_socket, $data, strlen($data));
+ stream_set_blocking($this->_socket, 0);
+ if ($r === false || $r == 0) {
+ $this->_reconnect();
+ $this->_writeFrame($stompFrame);
+ }
+ }
+ }
diff --git a/lib/mail.php b/lib/mail.php
index 807b6a363..ab5742e33 100644
--- a/lib/mail.php
+++ b/lib/mail.php
@@ -170,8 +170,10 @@ function mail_to_user(&$user, $subject, $body, $headers=array(), $address=null)
function mail_confirm_address($user, $code, $nickname, $address)
{
+ // TRANS: Subject for address confirmation email
$subject = _('Email address confirmation');
+ // TRANS: Body for address confirmation email.
$body = sprintf(_("Hey, %s.\n\n".
"Someone just entered this email address on %s.\n\n" .
"If it was you, and you want to confirm your entry, ".
@@ -222,9 +224,6 @@ function mail_subscribe_notify_profile($listenee, $other)
if ($other->hasRight(Right::EMAILONSUBSCRIBE) &&
$listenee->email && $listenee->emailnotifysub) {
- // use the recipient's localization
- common_init_locale($listenee->language);
-
$profile = $listenee->getProfile();
$name = $profile->getBestName();
@@ -234,14 +233,24 @@ function mail_subscribe_notify_profile($listenee, $other)
$recipients = $listenee->email;
+ // use the recipient's localization
+ common_switch_locale($listenee->language);
+
$headers = _mail_prepare_headers('subscribe', $listenee->nickname, $other->nickname);
$headers['From'] = mail_notify_from();
$headers['To'] = $name . ' <' . $listenee->email . '>';
+ // TRANS: Subject of new-subscriber notification e-mail
$headers['Subject'] = sprintf(_('%1$s is now listening to '.
'your notices on %2$s.'),
$other->getBestName(),
common_config('site', 'name'));
+ $blocklink = sprintf(_("If you believe this account is being used abusively, " .
+ "you can block them from your subscribers list and " .
+ "report as spam to site administrators at %s"),
+ common_local_url('block', array('profileid' => $other->id)));
+
+ // TRANS: Main body of new-subscriber notification e-mail
$body = sprintf(_('%1$s is now listening to your notices on %2$s.'."\n\n".
"\t".'%3$s'."\n\n".
'%4$s'.
@@ -255,16 +264,20 @@ function mail_subscribe_notify_profile($listenee, $other)
common_config('site', 'name'),
$other->profileurl,
($other->location) ?
+ // TRANS: Profile info line in new-subscriber notification e-mail
sprintf(_("Location: %s"), $other->location) . "\n" : '',
($other->homepage) ?
+ // TRANS: Profile info line in new-subscriber notification e-mail
sprintf(_("Homepage: %s"), $other->homepage) . "\n" : '',
- ($other->bio) ?
- sprintf(_("Bio: %s"), $other->bio) . "\n\n" : '',
+ (($other->bio) ?
+ // TRANS: Profile info line in new-subscriber notification e-mail
+ sprintf(_("Bio: %s"), $other->bio) . "\n" : '') .
+ "\n\n" . $blocklink . "\n",
common_config('site', 'name'),
common_local_url('emailsettings'));
// reset localization
- common_init_locale();
+ common_switch_locale();
mail_send($recipients, $headers, $body);
}
}
@@ -287,9 +300,11 @@ function mail_new_incoming_notify($user)
$headers['From'] = $user->incomingemail;
$headers['To'] = $name . ' <' . $user->email . '>';
+ // TRANS: Subject of notification mail for new posting email address
$headers['Subject'] = sprintf(_('New email address for posting to %s'),
common_config('site', 'name'));
+ // TRANS: Body of notification mail for new posting email address
$body = sprintf(_("You have a new posting address on %1\$s.\n\n".
"Send email to %2\$s to post new messages.\n\n".
"More email instructions at %3\$s.\n\n".
@@ -414,6 +429,7 @@ function mail_send_sms_notice_address($notice, $smsemail, $incomingemail)
$headers['From'] = ($incomingemail) ? $incomingemail : mail_notify_from();
$headers['To'] = $to;
+ // TRANS: Subject line for SMS-by-email notification messages
$headers['Subject'] = sprintf(_('%s status'),
$other->getBestName());
@@ -440,11 +456,11 @@ function mail_confirm_sms($code, $nickname, $address)
$headers['From'] = mail_notify_from();
$headers['To'] = $nickname . ' <' . $address . '>';
+ // TRANS: Subject line for SMS-by-email address confirmation message
$headers['Subject'] = _('SMS confirmation');
- // FIXME: I18N
-
- $body = "$nickname: confirm you own this phone number with this code:";
+ // TRANS: Main body heading for SMS-by-email address confirmation message
+ $body = sprintf(_("%s: confirm you own this phone number with this code:"), $nickname);
$body .= "\n\n";
$body .= $code;
$body .= "\n\n";
@@ -463,11 +479,13 @@ function mail_confirm_sms($code, $nickname, $address)
function mail_notify_nudge($from, $to)
{
- common_init_locale($to->language);
+ common_switch_locale($to->language);
+ // TRANS: Subject for 'nudge' notification email
$subject = sprintf(_('You\'ve been nudged by %s'), $from->nickname);
$from_profile = $from->getProfile();
+ // TRANS: Body for 'nudge' notification email
$body = sprintf(_("%1\$s (%2\$s) is wondering what you are up to ".
"these days and is inviting you to post some news.\n\n".
"So let's hear from you :)\n\n".
@@ -479,7 +497,7 @@ function mail_notify_nudge($from, $to)
$from->nickname,
common_local_url('all', array('nickname' => $to->nickname)),
common_config('site', 'name'));
- common_init_locale();
+ common_switch_locale();
$headers = _mail_prepare_headers('nudge', $to->nickname, $from->nickname);
@@ -513,11 +531,13 @@ function mail_notify_message($message, $from=null, $to=null)
return true;
}
- common_init_locale($to->language);
+ common_switch_locale($to->language);
+ // TRANS: Subject for direct-message notification email
$subject = sprintf(_('New private message from %s'), $from->nickname);
$from_profile = $from->getProfile();
+ // TRANS: Body for direct-message notification email
$body = sprintf(_("%1\$s (%2\$s) sent you a private message:\n\n".
"------------------------------------------------------\n".
"%3\$s\n".
@@ -535,7 +555,7 @@ function mail_notify_message($message, $from=null, $to=null)
$headers = _mail_prepare_headers('message', $to->nickname, $from->nickname);
- common_init_locale();
+ common_switch_locale();
return mail_to_user($to, $subject, $body, $headers);
}
@@ -563,10 +583,12 @@ function mail_notify_fave($other, $user, $notice)
$bestname = $profile->getBestName();
- common_init_locale($other->language);
+ common_switch_locale($other->language);
+ // TRANS: Subject for favorite notification email
$subject = sprintf(_('%s (@%s) added your notice as a favorite'), $bestname, $user->nickname);
+ // TRANS: Body for favorite notification email
$body = sprintf(_("%1\$s (@%7\$s) just added your notice from %2\$s".
" as one of their favorites.\n\n" .
"The URL of your notice is:\n\n" .
@@ -589,7 +611,7 @@ function mail_notify_fave($other, $user, $notice)
$headers = _mail_prepare_headers('fave', $other->nickname, $user->nickname);
- common_init_locale();
+ common_switch_locale();
mail_to_user($other, $subject, $body, $headers);
}
@@ -620,26 +642,27 @@ function mail_notify_attn($user, $notice)
$bestname = $sender->getBestName();
- common_init_locale($user->language);
+ common_switch_locale($user->language);
- if ($notice->conversation != $notice->id) {
- $conversationEmailText = "The full conversation can be read here:\n\n".
- "\t%5\$s\n\n ";
- $conversationUrl = common_local_url('conversation',
- array('id' => $notice->conversation)).'#notice-'.$notice->id;
- } else {
- $conversationEmailText = "%5\$s";
- $conversationUrl = null;
- }
+ if ($notice->hasConversation()) {
+ $conversationUrl = common_local_url('conversation',
+ array('id' => $notice->conversation)).'#notice-'.$notice->id;
+ // TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+ $conversationEmailText = sprintf(_("The full conversation can be read here:\n\n".
+ "\t%s"), $conversationUrl) . "\n\n";
+ } else {
+ $conversationEmailText = '';
+ }
$subject = sprintf(_('%s (@%s) sent a notice to your attention'), $bestname, $sender->nickname);
+ // TRANS: Body of @-reply notification e-mail.
$body = sprintf(_("%1\$s (@%9\$s) just sent a notice to your attention (an '@-reply') on %2\$s.\n\n".
"The notice is here:\n\n".
"\t%3\$s\n\n" .
"It reads:\n\n".
"\t%4\$s\n\n" .
- $conversationEmailText .
+ "%5\$s" .
"You can reply back here:\n\n".
"\t%6\$s\n\n" .
"The list of all @-replies for you here:\n\n" .
@@ -652,7 +675,7 @@ function mail_notify_attn($user, $notice)
common_local_url('shownotice',
array('notice' => $notice->id)),//%3
$notice->content,//%4
- $conversationUrl,//%5
+ $conversationEmailText,//%5
common_local_url('newnotice',
array('replyto' => $sender->nickname, 'inreplyto' => $notice->id)),//%6
common_local_url('replies',
@@ -662,7 +685,7 @@ function mail_notify_attn($user, $notice)
$headers = _mail_prepare_headers('mention', $user->nickname, $sender->nickname);
- common_init_locale();
+ common_switch_locale();
mail_to_user($user, $subject, $body, $headers);
}
diff --git a/lib/mailbox.php b/lib/mailbox.php
index 90a58b4c4..2b00f5ffd 100644
--- a/lib/mailbox.php
+++ b/lib/mailbox.php
@@ -224,6 +224,7 @@ class MailboxAction extends CurrentUserDesignAction
if ($message->source) {
$this->elementStart('span', 'source');
+ // FIXME: bad i18n. Device should be a parameter (from %s).
$this->text(_('from'));
$this->element('span', 'device', $this->showSource($message->source));
$this->elementEnd('span');
diff --git a/lib/mailhandler.php b/lib/mailhandler.php
index 890f6d5b4..e9ba41839 100644
--- a/lib/mailhandler.php
+++ b/lib/mailhandler.php
@@ -265,6 +265,10 @@ class MailHandler
if (preg_match('/^\s*Begin\s+forward/', $line)) {
break;
}
+ // skip everything after a blank line if we already have content
+ if ($output !== '' && $line === '') {
+ break;
+ }
$output .= ' ' . $line;
}
diff --git a/lib/mediafile.php b/lib/mediafile.php
index 10d90d008..c96c78ab5 100644
--- a/lib/mediafile.php
+++ b/lib/mediafile.php
@@ -171,7 +171,7 @@ class MediaFile
return;
}
- if (!MediaFile::respectsQuota($user, $_FILES['attach']['size'])) {
+ if (!MediaFile::respectsQuota($user, $_FILES[$param]['size'])) {
// Should never actually get here
@@ -180,7 +180,8 @@ class MediaFile
return;
}
- $mimetype = MediaFile::getUploadedFileType($_FILES[$param]['tmp_name']);
+ $mimetype = MediaFile::getUploadedFileType($_FILES[$param]['tmp_name'],
+ $_FILES[$param]['name']);
$filename = null;
@@ -241,19 +242,41 @@ class MediaFile
return new MediaFile($user, $filename, $mimetype);
}
- static function getUploadedFileType($f) {
+ /**
+ * Attempt to identify the content type of a given file.
+ *
+ * @param mixed $f file handle resource, or filesystem path as string
+ * @param string $originalFilename (optional) for extension-based detection
+ * @return string
+ *
+ * @fixme is this an internal or public method? It's called from GetFileAction
+ * @fixme this seems to tie a front-end error message in, kinda confusing
+ * @fixme this looks like it could return a PEAR_Error in some cases, if
+ * type can't be identified and $config['attachments']['supported'] is true
+ *
+ * @throws ClientException if type is known, but not supported for local uploads
+ */
+ static function getUploadedFileType($f, $originalFilename=false) {
require_once 'MIME/Type.php';
+ require_once 'MIME/Type/Extension.php';
+ $mte = new MIME_Type_Extension();
$cmd = &PEAR::getStaticProperty('MIME_Type', 'fileCmd');
$cmd = common_config('attachments', 'filecommand');
$filetype = null;
+ // If we couldn't get a clear type from the file extension,
+ // we'll go ahead and try checking the content. Content checks
+ // are unambiguous for most image files, but nearly useless
+ // for office document formats.
+
if (is_string($f)) {
// assuming a filename
$filetype = MIME_Type::autoDetect($f);
+
} else {
// assuming a filehandle
@@ -262,7 +285,32 @@ class MediaFile
$filetype = MIME_Type::autoDetect($stream['uri']);
}
- if (common_config('attachments', 'supported') === true || in_array($filetype, common_config('attachments', 'supported'))) {
+ // The content-based sources for MIME_Type::autoDetect()
+ // are wildly unreliable for office-type documents. If we've
+ // gotten an unclear reponse back or just couldn't identify it,
+ // we'll try detecting a type from its extension...
+ $unclearTypes = array('application/octet-stream',
+ 'application/vnd.ms-office',
+ 'application/zip');
+
+ if ($originalFilename && (!$filetype || in_array($filetype, $unclearTypes))) {
+ $type = $mte->getMIMEType($originalFilename);
+ if (is_string($type)) {
+ $filetype = $type;
+ }
+ }
+
+ $supported = common_config('attachments', 'supported');
+ if (is_array($supported)) {
+ // Normalize extensions to mime types
+ foreach ($supported as $i => $entry) {
+ if (strpos($entry, '/') === false) {
+ common_log(LOG_INFO, "sample.$entry");
+ $supported[$i] = $mte->getMIMEType("sample.$entry");
+ }
+ }
+ }
+ if ($supported === true || in_array($filetype, $supported)) {
return $filetype;
}
$media = MIME_Type::getMedia($filetype);
diff --git a/lib/mysqlschema.php b/lib/mysqlschema.php
index 455695366..f9552c1dc 100644
--- a/lib/mysqlschema.php
+++ b/lib/mysqlschema.php
@@ -50,21 +50,6 @@ class MysqlSchema extends Schema
static $_single = null;
protected $conn = null;
- /**
- * Constructor. Only run once for singleton object.
- */
-
- protected function __construct()
- {
- // XXX: there should be an easier way to do this.
- $user = new User();
-
- $this->conn = $user->getDatabaseConnection();
-
- $user->free();
-
- unset($user);
- }
/**
* Main public entry point. Use this to get
@@ -348,7 +333,7 @@ class MysqlSchema extends Schema
}
if (empty($name)) {
- $name = "$table_".implode("_", $columnNames)."_idx";
+ $name = "{$table}_".implode("_", $columnNames)."_idx";
}
$res = $this->conn->query("ALTER TABLE $table ".
diff --git a/lib/noticeform.php b/lib/noticeform.php
index 7278c41a9..84c20a5b3 100644
--- a/lib/noticeform.php
+++ b/lib/noticeform.php
@@ -212,8 +212,8 @@ class NoticeForm extends Form
$this->out->checkbox('notice_data-geo', _('Share my location'), true);
$this->out->elementEnd('div');
$this->out->inlineScript(' var NoticeDataGeo_text = {'.
- 'ShareDisable: "'._('Do not share my location').'",'.
- 'ErrorTimeout: "'._('Sorry, retrieving your geo location is taking longer than expected, please try again later').'"'.
+ 'ShareDisable: ' .json_encode(_('Do not share my location')).','.
+ 'ErrorTimeout: ' .json_encode(_('Sorry, retrieving your geo location is taking longer than expected, please try again later')).
'}');
}
diff --git a/lib/noticelist.php b/lib/noticelist.php
index 811b7e4f1..dbc5bfb51 100644
--- a/lib/noticelist.php
+++ b/lib/noticelist.php
@@ -96,8 +96,14 @@ class NoticeList extends Widget
break;
}
- $item = $this->newListItem($this->notice);
- $item->show();
+ try {
+ $item = $this->newListItem($this->notice);
+ $item->show();
+ } catch (Exception $e) {
+ // we log exceptions and continue
+ common_log(LOG_ERR, $e->getMessage());
+ continue;
+ }
}
$this->out->elementEnd('ol');
@@ -340,8 +346,9 @@ class NoticeListItem extends Widget
function showNickname()
{
- $this->out->element('span', array('class' => 'nickname fn'),
- $this->profile->nickname);
+ $this->out->raw('<span class="nickname fn">' .
+ htmlspecialchars($this->profile->nickname) .
+ '</span>');
}
/**
@@ -425,10 +432,18 @@ class NoticeListItem extends Widget
if (empty($name)) {
$latdms = $this->decimalDegreesToDMS(abs($lat));
$londms = $this->decimalDegreesToDMS(abs($lon));
+ // TRANS: Used in coordinates as abbreviation of north
+ $north = _('N');
+ // TRANS: Used in coordinates as abbreviation of south
+ $south = _('S');
+ // TRANS: Used in coordinates as abbreviation of east
+ $east = _('E');
+ // TRANS: Used in coordinates as abbreviation of west
+ $west = _('W');
$name = sprintf(
_('%1$u°%2$u\'%3$u"%4$s %5$u°%6$u\'%7$u"%8$s'),
- $latdms['deg'],$latdms['min'], $latdms['sec'],($lat>0?_('N'):_('S')),
- $londms['deg'],$londms['min'], $londms['sec'],($lon>0?_('E'):_('W')));
+ $latdms['deg'],$latdms['min'], $latdms['sec'],($lat>0? $north:$south),
+ $londms['deg'],$londms['min'], $londms['sec'],($lon>0? $east:$west));
}
$url = $location->getUrl();
@@ -443,7 +458,8 @@ class NoticeListItem extends Widget
$name);
} else {
$xstr = new XMLStringer(false);
- $xstr->elementStart('a', array('href' => $url));
+ $xstr->elementStart('a', array('href' => $url,
+ 'rel' => 'external'));
$xstr->element('abbr', array('class' => 'geo',
'title' => $latlon),
$name);
@@ -453,12 +469,14 @@ class NoticeListItem extends Widget
$this->out->elementEnd('span');
}
+ /**
+ * @param number $dec decimal degrees
+ * @return array split into 'deg', 'min', and 'sec'
+ */
function decimalDegreesToDMS($dec)
{
-
- $vars = explode(".",$dec);
- $deg = $vars[0];
- $tempma = "0.".$vars[1];
+ $deg = intval($dec);
+ $tempma = abs($dec) - abs($deg);
$tempma = $tempma * 3600;
$min = floor($tempma / 60);
@@ -478,54 +496,47 @@ class NoticeListItem extends Widget
function showNoticeSource()
{
- if ($this->notice->source) {
+ $ns = $this->notice->getSource();
+
+ if ($ns) {
+ $source_name = (empty($ns->name)) ? _($ns->code) : _($ns->name);
$this->out->text(' ');
$this->out->elementStart('span', 'source');
+ // FIXME: probably i18n issue. If "from" is followed by text, that should be a parameter to "from" (from %s).
$this->out->text(_('from'));
- $source_name = _($this->notice->source);
$this->out->text(' ');
- switch ($this->notice->source) {
- case 'web':
- case 'xmpp':
- case 'mail':
- case 'omb':
- case 'system':
- case 'api':
- $this->out->element('span', 'device', $source_name);
- break;
- default:
+ $name = $source_name;
+ $url = $ns->url;
+ $title = null;
+
+ if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
$name = $source_name;
- $url = null;
-
- if (Event::handle('StartNoticeSourceLink', array($this->notice, &$name, &$url, &$title))) {
- $ns = Notice_source::staticGet($this->notice->source);
-
- if ($ns) {
- $name = $ns->name;
- $url = $ns->url;
- } else {
- $app = Oauth_application::staticGet('name', $this->notice->source);
- if ($app) {
- $name = $app->name;
- $url = $app->source_url;
- }
- }
- }
- Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
-
- if (!empty($name) && !empty($url)) {
- $this->out->elementStart('span', 'device');
- $this->out->element('a', array('href' => $url,
- 'rel' => 'external',
- 'title' => $title),
- $name);
- $this->out->elementEnd('span');
- } else {
- $this->out->element('span', 'device', $name);
+ $url = $ns->url;
+ }
+ Event::handle('EndNoticeSourceLink', array($this->notice, &$name, &$url, &$title));
+
+ // if $ns->name and $ns->url are populated we have
+ // configured a source attr somewhere
+ if (!empty($name) && !empty($url)) {
+
+ $this->out->elementStart('span', 'device');
+
+ $attrs = array(
+ 'href' => $url,
+ 'rel' => 'external'
+ );
+
+ if (!empty($title)) {
+ $attrs['title'] = $title;
}
- break;
+
+ $this->out->element('a', $attrs, $name);
+ $this->out->elementEnd('span');
+ } else {
+ $this->out->element('span', 'device', $name);
}
+
$this->out->elementEnd('span');
}
}
@@ -541,18 +552,7 @@ class NoticeListItem extends Widget
function showContext()
{
- $hasConversation = false;
- if (!empty($this->notice->conversation)) {
- $conversation = Notice::conversationStream(
- $this->notice->conversation,
- 1,
- 1
- );
- if ($conversation->N > 0) {
- $hasConversation = true;
- }
- }
- if ($hasConversation) {
+ if ($this->notice->hasConversation()) {
$conv = Conversation::staticGet(
'id',
$this->notice->conversation
diff --git a/lib/pgsqlschema.php b/lib/pgsqlschema.php
index 715065d77..272f7eff6 100644
--- a/lib/pgsqlschema.php
+++ b/lib/pgsqlschema.php
@@ -41,6 +41,7 @@ if (!defined('STATUSNET')) {
* @category Database
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
+ * @author Brenda Wallace <shiny@cpan.org>
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -79,7 +80,6 @@ class PgsqlSchema extends Schema
$row = array();
while ($res->fetchInto($row, DB_FETCHMODE_ASSOC)) {
-// var_dump($row);
$cd = new ColumnDef();
$cd->name = $row['field'];
@@ -143,6 +143,7 @@ class PgsqlSchema extends Schema
$uniques = array();
$primary = array();
$indices = array();
+ $onupdate = array();
$sql = "CREATE TABLE $name (\n";
@@ -155,7 +156,6 @@ class PgsqlSchema extends Schema
}
$sql .= $this->_columnSql($cd);
-
switch ($cd->key) {
case 'UNI':
$uniques[] = $cd->name;
@@ -170,13 +170,7 @@ class PgsqlSchema extends Schema
}
if (count($primary) > 0) { // it really should be...
- $sql .= ",\n primary key (" . implode(',', $primary) . ")";
- }
-
-
-
- foreach ($indices as $i) {
- $sql .= ",\nindex {$name}_{$i}_idx ($i)";
+ $sql .= ",\n PRIMARY KEY (" . implode(',', $primary) . ")";
}
$sql .= "); ";
@@ -185,10 +179,14 @@ class PgsqlSchema extends Schema
foreach ($uniques as $u) {
$sql .= "\n CREATE index {$name}_{$u}_idx ON {$name} ($u); ";
}
+
+ foreach ($indices as $i) {
+ $sql .= "CREATE index {$name}_{$i}_idx ON {$name} ($i)";
+ }
$res = $this->conn->query($sql);
if (PEAR::isError($res)) {
- throw new Exception($res->getMessage());
+ throw new Exception($res->getMessage(). ' SQL was '. $sql);
}
return true;
@@ -223,7 +221,7 @@ class PgsqlSchema extends Schema
*/
private function _columnTypeTranslation($type) {
$map = array(
- 'datetime' => 'timestamp'
+ 'datetime' => 'timestamp',
);
if(!empty($map[$type])) {
return $map[$type];
@@ -324,7 +322,7 @@ class PgsqlSchema extends Schema
public function modifyColumn($table, $columndef)
{
- $sql = "ALTER TABLE $table MODIFY COLUMN " .
+ $sql = "ALTER TABLE $table ALTER COLUMN TYPE " .
$this->_columnSql($columndef);
$res = $this->conn->query($sql);
@@ -397,16 +395,17 @@ class PgsqlSchema extends Schema
$todrop = array_diff($cur, $new);
$same = array_intersect($new, $cur);
$tomod = array();
-
foreach ($same as $m) {
$curCol = $this->_byName($td->columns, $m);
$newCol = $this->_byName($columns, $m);
+
if (!$newCol->equals($curCol)) {
- $tomod[] = $newCol->name;
+ // BIG GIANT TODO!
+ // stop it detecting different types and trying to modify on every page request
+// $tomod[] = $newCol->name;
}
}
-
if (count($toadd) + count($todrop) + count($tomod) == 0) {
// nothing to do
return true;
@@ -430,11 +429,12 @@ class PgsqlSchema extends Schema
foreach ($tomod as $columnName) {
$cd = $this->_byName($columns, $columnName);
- $phrase[] = 'MODIFY COLUMN ' . $this->_columnSql($cd);
+ /* brute force */
+ $phrase[] = 'DROP COLUMN ' . $columnName;
+ $phrase[] = 'ADD COLUMN ' . $this->_columnSql($cd);
}
$sql = 'ALTER TABLE ' . $tableName . ' ' . implode(', ', $phrase);
-
$res = $this->conn->query($sql);
if (PEAR::isError($res)) {
@@ -496,12 +496,21 @@ class PgsqlSchema extends Schema
*
* @return string correct SQL for that column
*/
-
private function _columnSql($cd)
{
$sql = "{$cd->name} ";
$type = $this->_columnTypeTranslation($cd->type);
+ //handle those mysql enum fields that postgres doesn't support
+ if (preg_match('!^enum!', $type)) {
+ $allowed_values = preg_replace('!^enum!', '', $type);
+ $sql .= " text check ({$cd->name} in $allowed_values)";
+ return $sql;
+ }
+ if (!empty($cd->auto_increment)) {
+ $type = "bigserial"; // FIXME: creates the wrong name for the sequence for some internal sequence-lookup function, so better fix this to do the real 'create sequence' dance.
+ }
+
if (!empty($cd->size)) {
$sql .= "{$type}({$cd->size}) ";
} else {
@@ -513,14 +522,10 @@ class PgsqlSchema extends Schema
} else {
$sql .= ($cd->nullable) ? "null " : "not null ";
}
-
- if (!empty($cd->auto_increment)) {
- $sql .= " auto_increment ";
- }
- if (!empty($cd->extra)) {
- $sql .= "{$cd->extra} ";
- }
+// if (!empty($cd->extra)) {
+// $sql .= "{$cd->extra} ";
+// }
return $sql;
}
diff --git a/lib/ping.php b/lib/ping.php
index 735af9ef1..be2933ae3 100644
--- a/lib/ping.php
+++ b/lib/ping.php
@@ -45,7 +45,15 @@ function ping_broadcast_notice($notice) {
$tags));
$request = HTTPClient::start();
- $httpResponse = $request->post($notify_url, array('Content-Type: text/xml'), $req);
+ $request->setConfig('connect_timeout', common_config('ping', 'timeout'));
+ $request->setConfig('timeout', common_config('ping', 'timeout'));
+ try {
+ $httpResponse = $request->post($notify_url, array('Content-Type: text/xml'), $req);
+ } catch (Exception $e) {
+ common_log(LOG_ERR,
+ "Exception pinging $notify_url: " . $e->getMessage());
+ continue;
+ }
if (!$httpResponse || mb_strlen($httpResponse->getBody()) == 0) {
common_log(LOG_WARNING,
diff --git a/lib/plugin.php b/lib/plugin.php
index 65ccdafbb..f63bdf309 100644
--- a/lib/plugin.php
+++ b/lib/plugin.php
@@ -91,6 +91,7 @@ class Plugin
$path = INSTALLDIR . "/plugins/$name/locale";
if (file_exists($path) && is_dir($path)) {
bindtextdomain($name, $path);
+ bind_textdomain_codeset($name, 'UTF-8');
}
}
}
diff --git a/lib/popularnoticesection.php b/lib/popularnoticesection.php
index 296ddbbb5..f70a972ef 100644
--- a/lib/popularnoticesection.php
+++ b/lib/popularnoticesection.php
@@ -72,7 +72,7 @@ class PopularNoticeSection extends NoticeSection
$qry .= ' GROUP BY notice.id,notice.profile_id,notice.content,notice.uri,' .
'notice.rendered,notice.url,notice.created,notice.modified,' .
'notice.reply_to,notice.is_local,notice.source,notice.conversation, ' .
- 'notice.lat,notice.lon,location_id,location_ns' .
+ 'notice.lat,notice.lon,location_id,location_ns,notice.repeat_of' .
' ORDER BY weight DESC';
$offset = 0;
diff --git a/lib/profileaction.php b/lib/profileaction.php
index 029c21845..504b77566 100644
--- a/lib/profileaction.php
+++ b/lib/profileaction.php
@@ -139,25 +139,30 @@ class ProfileAction extends OwnerDesignAction
$this->elementStart('div', array('id' => 'entity_subscribers',
'class' => 'section'));
- $this->element('h2', null, _('Subscribers'));
+ if (Event::handle('StartShowSubscribersMiniList', array($this))) {
- $cnt = 0;
+ $this->element('h2', null, _('Subscribers'));
- if (!empty($profile)) {
- $pml = new ProfileMiniList($profile, $this);
- $cnt = $pml->show();
- if ($cnt == 0) {
- $this->element('p', null, _('(None)'));
+ $cnt = 0;
+
+ if (!empty($profile)) {
+ $sml = new SubscribersMiniList($profile, $this);
+ $cnt = $sml->show();
+ if ($cnt == 0) {
+ $this->element('p', null, _('(None)'));
+ }
+ }
+
+ if ($cnt > PROFILES_PER_MINILIST) {
+ $this->elementStart('p');
+ $this->element('a', array('href' => common_local_url('subscribers',
+ array('nickname' => $this->profile->nickname)),
+ 'class' => 'more'),
+ _('All subscribers'));
+ $this->elementEnd('p');
}
- }
- if ($cnt > PROFILES_PER_MINILIST) {
- $this->elementStart('p');
- $this->element('a', array('href' => common_local_url('subscribers',
- array('nickname' => $this->profile->nickname)),
- 'class' => 'more'),
- _('All subscribers'));
- $this->elementEnd('p');
+ Event::handle('EndShowSubscribersMiniList', array($this));
}
$this->elementEnd('div');
@@ -169,6 +174,12 @@ class ProfileAction extends OwnerDesignAction
$subbed_count = $this->profile->subscriberCount();
$notice_count = $this->profile->noticeCount();
$group_count = $this->user->getGroups()->N;
+ $age_days = (time() - strtotime($this->profile->created)) / 86400;
+ if ($age_days < 1) {
+ // Rather than extrapolating out to a bajillion...
+ $age_days = 1;
+ }
+ $daily_count = round($notice_count / $age_days);
$this->elementStart('div', array('id' => 'entity_statistics',
'class' => 'section'));
@@ -219,6 +230,12 @@ class ProfileAction extends OwnerDesignAction
$this->element('dd', null, $notice_count);
$this->elementEnd('dl');
+ $this->elementStart('dl', 'entity_daily_notices');
+ // TRANS: Average count of posts made per day since account registration
+ $this->element('dt', null, _('Daily average'));
+ $this->element('dd', null, $daily_count);
+ $this->elementEnd('dl');
+
$this->elementEnd('div');
}
@@ -254,3 +271,23 @@ class ProfileAction extends OwnerDesignAction
}
}
+class SubscribersMiniList extends ProfileMiniList
+{
+ function newListItem($profile)
+ {
+ return new SubscribersMiniListItem($profile, $this->action);
+ }
+}
+
+class SubscribersMiniListItem extends ProfileMiniListItem
+{
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+ if (common_config('nofollow', 'subscribers')) {
+ $aAttrs['rel'] .= ' nofollow';
+ }
+ return $aAttrs;
+ }
+}
+
diff --git a/lib/profileformaction.php b/lib/profileformaction.php
index 8a934666e..51c89a922 100644
--- a/lib/profileformaction.php
+++ b/lib/profileformaction.php
@@ -41,7 +41,7 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* @link http://status.net/
*/
-class ProfileFormAction extends Action
+class ProfileFormAction extends RedirectingAction
{
var $profile = null;
@@ -60,7 +60,16 @@ class ProfileFormAction extends Action
$this->checkSessionToken();
if (!common_logged_in()) {
- $this->clientError(_('Not logged in.'));
+ if ($_SERVER['REQUEST_METHOD'] == 'POST') {
+ $this->clientError(_('Not logged in.'));
+ } else {
+ // Redirect to login.
+ common_set_returnto($this->selfUrl());
+ $user = common_current_user();
+ if (Event::handle('RedirectToLogin', array($this, $user))) {
+ common_redirect(common_local_url('login'), 303);
+ }
+ }
return false;
}
@@ -97,30 +106,7 @@ class ProfileFormAction extends Action
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$this->handlePost();
- $this->returnToArgs();
- }
- }
-
- /**
- * Return to the calling page based on hidden arguments
- *
- * @return void
- */
-
- function returnToArgs()
- {
- foreach ($this->args as $k => $v) {
- if ($k == 'returnto-action') {
- $action = $v;
- } else if (substr($k, 0, 9) == 'returnto-') {
- $args[substr($k, 9)] = $v;
- }
- }
-
- if ($action) {
- common_redirect(common_local_url($action, $args), 303);
- } else {
- $this->clientError(_("No return-to arguments."));
+ $this->returnToPrevious();
}
}
diff --git a/lib/profilelist.php b/lib/profilelist.php
index d970e605a..b010fb724 100644
--- a/lib/profilelist.php
+++ b/lib/profilelist.php
@@ -181,9 +181,8 @@ class ProfileListItem extends Widget
function showAvatar()
{
$avatar = $this->profile->getAvatar(AVATAR_STREAM_SIZE);
- $this->out->elementStart('a', array('href' => $this->profile->profileurl,
- 'class' => 'url entry-title',
- 'rel' => 'contact'));
+ $aAttrs = $this->linkAttributes();
+ $this->out->elementStart('a', $aAttrs);
$this->out->element('img', array('src' => ($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_STREAM_SIZE),
'class' => 'photo avatar',
'width' => AVATAR_STREAM_SIZE,
@@ -213,7 +212,7 @@ class ProfileListItem extends Widget
{
if (!empty($this->profile->location)) {
$this->out->text(' ');
- $this->out->elementStart('span', 'location');
+ $this->out->elementStart('span', 'label');
$this->out->raw($this->highlight($this->profile->location));
$this->out->elementEnd('span');
}
@@ -223,8 +222,8 @@ class ProfileListItem extends Widget
{
if (!empty($this->profile->homepage)) {
$this->out->text(' ');
- $this->out->elementStart('a', array('href' => $this->profile->homepage,
- 'class' => 'url'));
+ $aAttrs = $this->homepageAttributes();
+ $this->out->elementStart('a', $aAttrs);
$this->out->raw($this->highlight($this->profile->homepage));
$this->out->elementEnd('a');
}
@@ -299,4 +298,17 @@ class ProfileListItem extends Widget
{
return htmlspecialchars($text);
}
+
+ function linkAttributes()
+ {
+ return array('href' => $this->profile->profileurl,
+ 'class' => 'url entry-title',
+ 'rel' => 'contact');
+ }
+
+ function homepageAttributes()
+ {
+ return array('href' => $this->profile->homepage,
+ 'class' => 'url');
+ }
}
diff --git a/lib/profileminilist.php b/lib/profileminilist.php
index 079170d80..a98953474 100644
--- a/lib/profileminilist.php
+++ b/lib/profileminilist.php
@@ -81,20 +81,36 @@ class ProfileMiniListItem extends ProfileListItem
function show()
{
$this->out->elementStart('li', 'vcard');
- $this->out->elementStart('a', array('title' => $this->profile->getBestName(),
- 'href' => $this->profile->profileurl,
- 'rel' => 'contact member',
- 'class' => 'url'));
- $avatar = $this->profile->getAvatar(AVATAR_MINI_SIZE);
- $this->out->element('img', array('src' => (($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_MINI_SIZE)),
- 'width' => AVATAR_MINI_SIZE,
- 'height' => AVATAR_MINI_SIZE,
- 'class' => 'avatar photo',
- 'alt' => ($this->profile->fullname) ?
- $this->profile->fullname :
- $this->profile->nickname));
- $this->out->element('span', 'fn nickname', $this->profile->nickname);
- $this->out->elementEnd('a');
- $this->out->elementEnd('li');
+ if (Event::handle('StartProfileListItemProfileElements', array($this))) {
+ if (Event::handle('StartProfileListItemAvatar', array($this))) {
+ $aAttrs = $this->linkAttributes();
+ $this->out->elementStart('a', $aAttrs);
+ $avatar = $this->profile->getAvatar(AVATAR_MINI_SIZE);
+ $this->out->element('img', array('src' => (($avatar) ? $avatar->displayUrl() : Avatar::defaultImage(AVATAR_MINI_SIZE)),
+ 'width' => AVATAR_MINI_SIZE,
+ 'height' => AVATAR_MINI_SIZE,
+ 'class' => 'avatar photo',
+ 'alt' => ($this->profile->fullname) ?
+ $this->profile->fullname :
+ $this->profile->nickname));
+ $this->out->element('span', 'fn nickname', $this->profile->nickname);
+ $this->out->elementEnd('a');
+ Event::handle('EndProfileListItemAvatar', array($this));
+ }
+ $this->out->elementEnd('li');
+ }
+ }
+
+ // default; overridden for nofollow lists
+
+ function linkAttributes()
+ {
+ $aAttrs = parent::linkAttributes();
+
+ $aAttrs['title'] = $this->profile->getBestName();
+ $aAttrs['rel'] = 'contact member'; // @todo: member? always?
+ $aAttrs['class'] = 'url';
+
+ return $aAttrs;
}
}
diff --git a/lib/redirectingaction.php b/lib/redirectingaction.php
new file mode 100644
index 000000000..3a358f891
--- /dev/null
+++ b/lib/redirectingaction.php
@@ -0,0 +1,97 @@
+<?php
+/**
+ * Superclass for actions that redirect to a given return-to page on completion.
+ *
+ * PHP version 5
+ *
+ * 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/>.
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @author Brion Vibber <brion@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) {
+ exit(1);
+}
+
+/**
+ * Superclass for actions that redirect to a given return-to page on completion.
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @author Brion Vibber <brion@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ */
+
+
+class RedirectingAction extends Action
+{
+
+ /**
+ * Redirect browser to the page our hidden parameters requested,
+ * or if none given, to the url given by $this->defaultReturnTo().
+ *
+ * To be called only after successful processing.
+ *
+ * Note: this was named returnToArgs() up through 0.9.2, which
+ * caused problems because there's an Action::returnToArgs()
+ * already which does something different.
+ *
+ * @return void
+ */
+ function returnToPrevious()
+ {
+ // Now, gotta figure where we go back to
+ $action = false;
+ $args = array();
+ $params = array();
+ foreach ($this->args as $k => $v) {
+ if ($k == 'returnto-action') {
+ $action = $v;
+ } else if (substr($k, 0, 15) == 'returnto-param-') {
+ $params[substr($k, 15)] = $v;
+ } elseif (substr($k, 0, 9) == 'returnto-') {
+ $args[substr($k, 9)] = $v;
+ }
+ }
+
+ if ($action) {
+ common_redirect(common_local_url($action, $args, $params), 303);
+ } else {
+ $url = $this->defaultReturnTo();
+ }
+ common_redirect($url, 303);
+ }
+
+ /**
+ * If we reached this form without returnto arguments, where should
+ * we go? May be overridden by subclasses to a reasonable destination
+ * for that action; default implementation throws an exception.
+ *
+ * @return string URL
+ */
+ function defaultReturnTo()
+ {
+ $this->clientError(_("No return-to arguments."));
+ }
+}
diff --git a/lib/router.php b/lib/router.php
index a48ee875e..7e1e6a2a4 100644
--- a/lib/router.php
+++ b/lib/router.php
@@ -33,6 +33,33 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
require_once 'Net/URL/Mapper.php';
+class StatusNet_URL_Mapper extends Net_URL_Mapper {
+
+ private static $_singleton = null;
+
+ private function __construct()
+ {
+ }
+
+ public static function getInstance($id = '__default__')
+ {
+ if (empty(self::$_singleton)) {
+ self::$_singleton = new StatusNet_URL_Mapper();
+ }
+ return self::$_singleton;
+ }
+
+ public function connect($path, $defaults = array(), $rules = array())
+ {
+ $result = null;
+ if (Event::handle('StartConnectPath', array(&$path, &$defaults, &$rules, &$result))) {
+ $result = parent::connect($path, $defaults, $rules);
+ Event::handle('EndConnectPath', array($path, $defaults, $rules, $result));
+ }
+ return $result;
+ }
+}
+
/**
* URL Router
*
@@ -69,7 +96,7 @@ class Router
function initialize()
{
- $m = Net_URL_Mapper::getInstance();
+ $m = StatusNet_URL_Mapper::getInstance();
if (Event::handle('StartInitializeRouter', array(&$m))) {
@@ -109,6 +136,11 @@ class Router
$m->connect('main/'.$a, array('action' => $a));
}
+ // Also need a block variant accepting ID on URL for mail links
+ $m->connect('main/block/:profileid',
+ array('action' => 'block'),
+ array('profileid' => '[0-9]+'));
+
$m->connect('main/sup/:seconds', array('action' => 'sup'),
array('seconds' => '[0-9]+'));
@@ -231,7 +263,7 @@ class Router
$m->connect('tag', array('action' => 'publictagcloud'));
$m->connect('tag/:tag/rss',
array('action' => 'tagrss'),
- array('tag' => '[a-zA-Z0-9]+'));
+ array('tag' => '[\pL\pN_\-\.]{1,64}'));
$m->connect('tag/:tag',
array('action' => 'tag'),
array('tag' => '[\pL\pN_\-\.]{1,64}'));
@@ -508,7 +540,7 @@ class Router
$m->connect('api/favorites/:id.:format',
array('action' => 'ApiTimelineFavorites',
'id' => '[a-zA-Z0-9]+',
- 'format' => '(xmljson|rss|atom)'));
+ 'format' => '(xml|json|rss|atom)'));
$m->connect('api/favorites/create/:id.:format',
array('action' => 'ApiFavoriteCreate',
@@ -565,7 +597,7 @@ class Router
$m->connect('api/statusnet/groups/timeline/:id.:format',
array('action' => 'ApiTimelineGroup',
'id' => '[a-zA-Z0-9]+',
- 'format' => '(xmljson|rss|atom)'));
+ 'format' => '(xml|json|rss|atom)'));
$m->connect('api/statusnet/groups/show.:format',
array('action' => 'ApiGroupShow',
@@ -626,7 +658,7 @@ class Router
// Tags
$m->connect('api/statusnet/tags/timeline/:tag.:format',
array('action' => 'ApiTimelineTag',
- 'format' => '(xmljson|rss|atom)'));
+ 'format' => '(xml|json|rss|atom)'));
// media related
$m->connect(
@@ -635,9 +667,9 @@ class Router
);
// search
- $m->connect('api/search.atom', array('action' => 'twitapisearchatom'));
- $m->connect('api/search.json', array('action' => 'twitapisearchjson'));
- $m->connect('api/trends.json', array('action' => 'twitapitrends'));
+ $m->connect('api/search.atom', array('action' => 'ApiSearchAtom'));
+ $m->connect('api/search.json', array('action' => 'ApiSearchJSON'));
+ $m->connect('api/trends.json', array('action' => 'ApiTrends'));
$m->connect('api/oauth/request_token',
array('action' => 'apioauthrequesttoken'));
@@ -717,12 +749,12 @@ class Router
$m->connect('tag/:tag/rss',
array('action' => 'userrss',
'nickname' => $nickname),
- array('tag' => '[a-zA-Z0-9]+'));
+ array('tag' => '[\pL\pN_\-\.]{1,64}'));
$m->connect('tag/:tag',
array('action' => 'showstream',
'nickname' => $nickname),
- array('tag' => '[a-zA-Z0-9]+'));
+ array('tag' => '[\pL\pN_\-\.]{1,64}'));
$m->connect('rsd.xml',
array('action' => 'rsd',
@@ -783,12 +815,12 @@ class Router
$m->connect(':nickname/tag/:tag/rss',
array('action' => 'userrss'),
array('nickname' => '[a-zA-Z0-9]{1,64}'),
- array('tag' => '[a-zA-Z0-9]+'));
+ array('tag' => '[\pL\pN_\-\.]{1,64}'));
$m->connect(':nickname/tag/:tag',
array('action' => 'showstream'),
array('nickname' => '[a-zA-Z0-9]{1,64}'),
- array('tag' => '[a-zA-Z0-9]+'));
+ array('tag' => '[\pL\pN_\-\.]{1,64}'));
$m->connect(':nickname/rsd.xml',
array('action' => 'rsd'),
diff --git a/lib/rssaction.php b/lib/rssaction.php
index 62e3f21b6..f366db972 100644
--- a/lib/rssaction.php
+++ b/lib/rssaction.php
@@ -178,7 +178,13 @@ class Rss10Action extends Action
if (count($this->notices)) {
foreach ($this->notices as $n) {
- $this->showItem($n);
+ try {
+ $this->showItem($n);
+ } catch (Exception $e) {
+ // log exceptions and continue
+ common_log(LOG_ERR, $e->getMessage());
+ continue;
+ }
}
}
@@ -232,7 +238,7 @@ class Rss10Action extends Action
function showItem($notice)
{
- $profile = Profile::staticGet($notice->profile_id);
+ $profile = $notice->getProfile();
$nurl = common_local_url('shownotice', array('notice' => $notice->id));
$creator_uri = common_profile_uri($profile);
$this->elementStart('item', array('rdf:about' => $notice->uri,
diff --git a/lib/schema.php b/lib/schema.php
index 1503c96d4..e5def514e 100644
--- a/lib/schema.php
+++ b/lib/schema.php
@@ -47,40 +47,47 @@ if (!defined('STATUSNET')) {
class Schema
{
- static $_single = null;
+ static $_static = null;
protected $conn = null;
/**
* Constructor. Only run once for singleton object.
*/
- protected function __construct()
+ protected function __construct($conn = null)
{
- // XXX: there should be an easier way to do this.
- $user = new User();
-
- $this->conn = $user->getDatabaseConnection();
-
- $user->free();
+ if (is_null($conn)) {
+ // XXX: there should be an easier way to do this.
+ $user = new User();
+ $conn = $user->getDatabaseConnection();
+ $user->free();
+ unset($user);
+ }
- unset($user);
+ $this->conn = $conn;
}
/**
* Main public entry point. Use this to get
- * the singleton object.
+ * the schema object.
*
- * @return Schema the (single) Schema object
+ * @return Schema the Schema object for the connection
*/
- static function get()
+ static function get($conn = null)
{
+ if (is_null($conn)) {
+ $key = 'default';
+ } else {
+ $key = md5(serialize($conn->dsn));
+ }
+
$type = common_config('db', 'type');
- if (empty(self::$_single)) {
+ if (empty(self::$_static[$key])) {
$schemaClass = ucfirst($type).'Schema';
- self::$_single = new $schemaClass();
+ self::$_static[$key] = new $schemaClass($conn);
}
- return self::$_single;
+ return self::$_static[$key];
}
/**
diff --git a/lib/servererroraction.php b/lib/servererroraction.php
index 0993a63bc..9b5a553dc 100644
--- a/lib/servererroraction.php
+++ b/lib/servererroraction.php
@@ -62,15 +62,18 @@ class ServerErrorAction extends ErrorAction
504 => 'Gateway Timeout',
505 => 'HTTP Version Not Supported');
- function __construct($message='Error', $code=500)
+ function __construct($message='Error', $code=500, $ex=null)
{
parent::__construct($message, $code);
$this->default = 500;
// Server errors must be logged.
-
- common_log(LOG_ERR, "ServerErrorAction: $code $message");
+ $log = "ServerErrorAction: $code $message";
+ if ($ex) {
+ $log .= "\n" . $ex->getTraceAsString();
+ }
+ common_log(LOG_ERR, $log);
}
// XXX: Should these error actions even be invokable via URI?
diff --git a/lib/statusnet.php b/lib/statusnet.php
index eba9ab9b8..2aa73486e 100644
--- a/lib/statusnet.php
+++ b/lib/statusnet.php
@@ -31,6 +31,7 @@ class StatusNet
{
protected static $have_config;
protected static $is_api;
+ protected static $plugins = array();
/**
* Configure and instantiate a plugin into the current configuration.
@@ -74,10 +75,23 @@ class StatusNet
$inst->$aname = $avalue;
}
}
+
+ // Record activated plugins for later display/config dump
+ self::$plugins[] = array($name, $attrs);
+
return true;
}
/**
+ * Get a list of activated plugins in this process.
+ * @return array of (string $name, array $args) pairs
+ */
+ public static function getActivePlugins()
+ {
+ return self::$plugins;
+ }
+
+ /**
* Initialize, or re-initialize, StatusNet global configuration
* and plugins.
*
@@ -232,6 +246,7 @@ class StatusNet
global $_server, $_path, $config;
Event::clearHandlers();
+ self::$plugins = array();
// try to figure out where we are. $server and $path
// can be set by including module, else we guess based
diff --git a/lib/stompqueuemanager.php b/lib/stompqueuemanager.php
index 9af8b2f48..91faa8c36 100644
--- a/lib/stompqueuemanager.php
+++ b/lib/stompqueuemanager.php
@@ -39,7 +39,8 @@ class StompQueueManager extends QueueManager
protected $base;
protected $control;
- protected $useTransactions = true;
+ protected $useTransactions;
+ protected $useAcks;
protected $sites = array();
protected $subscriptions = array();
@@ -59,11 +60,13 @@ class StompQueueManager extends QueueManager
} else {
$this->servers = array($server);
}
- $this->username = common_config('queue', 'stomp_username');
- $this->password = common_config('queue', 'stomp_password');
- $this->base = common_config('queue', 'queue_basename');
- $this->control = common_config('queue', 'control_channel');
- $this->breakout = common_config('queue', 'breakout');
+ $this->username = common_config('queue', 'stomp_username');
+ $this->password = common_config('queue', 'stomp_password');
+ $this->base = common_config('queue', 'queue_basename');
+ $this->control = common_config('queue', 'control_channel');
+ $this->breakout = common_config('queue', 'breakout');
+ $this->useTransactions = common_config('queue', 'stomp_transactions');
+ $this->useAcks = common_config('queue', 'stomp_acks');
}
/**
@@ -112,14 +115,27 @@ class StompQueueManager extends QueueManager
*
* @param mixed $object
* @param string $queue
+ * @param string $siteNickname optional override to drop into another site's queue
*
* @return boolean true on success
* @throws StompException on connection or send error
*/
- public function enqueue($object, $queue)
+ public function enqueue($object, $queue, $siteNickname=null)
{
$this->_connect();
- return $this->_doEnqueue($object, $queue, $this->defaultIdx);
+ if (common_config('queue', 'stomp_enqueue_on')) {
+ // We're trying to force all writes to a single server.
+ // WARNING: this might do odd things if that server connection dies.
+ $idx = array_search(common_config('queue', 'stomp_enqueue_on'),
+ $this->servers);
+ if ($idx === false) {
+ common_log(LOG_ERR, 'queue stomp_enqueue_on setting does not match our server list.');
+ $idx = $this->defaultIdx;
+ }
+ } else {
+ $idx = $this->defaultIdx;
+ }
+ return $this->_doEnqueue($object, $queue, $idx, $siteNickname);
}
/**
@@ -129,10 +145,10 @@ class StompQueueManager extends QueueManager
* @return boolean true on success
* @throws StompException on connection or send error
*/
- protected function _doEnqueue($object, $queue, $idx)
+ protected function _doEnqueue($object, $queue, $idx, $siteNickname=null)
{
$rep = $this->logrep($object);
- $envelope = array('site' => common_config('site', 'nickname'),
+ $envelope = array('site' => $siteNickname ? $siteNickname : common_config('site', 'nickname'),
'handler' => $queue,
'payload' => $this->encode($object));
$msg = serialize($envelope);
@@ -703,13 +719,15 @@ class StompQueueManager extends QueueManager
protected function ack($idx, $frame)
{
- if ($this->useTransactions) {
- if (empty($this->transaction[$idx])) {
- throw new Exception("Tried to ack but not in a transaction");
+ if ($this->useAcks) {
+ if ($this->useTransactions) {
+ if (empty($this->transaction[$idx])) {
+ throw new Exception("Tried to ack but not in a transaction");
+ }
+ $this->cons[$idx]->ack($frame, $this->transaction[$idx]);
+ } else {
+ $this->cons[$idx]->ack($frame);
}
- $this->cons[$idx]->ack($frame, $this->transaction[$idx]);
- } else {
- $this->cons[$idx]->ack($frame);
}
}
diff --git a/lib/subscriptionlist.php b/lib/subscriptionlist.php
index e1207774f..fc8f33f2e 100644
--- a/lib/subscriptionlist.php
+++ b/lib/subscriptionlist.php
@@ -113,12 +113,13 @@ class SubscriptionListItem extends ProfileListItem
$this->out->elementStart('ul', 'tags xoxo');
foreach ($tags as $tag) {
$this->out->elementStart('li');
- $this->out->element('span', 'mark_hash', '#');
- $this->out->element('a', array('rel' => 'tag',
- 'href' => common_local_url($this->action->trimmed('action'),
- array('nickname' => $this->owner->nickname,
- 'tag' => $tag))),
- $tag);
+ // Avoid space by using raw output.
+ $pt = '<span class="mark_hash">#</span><a rel="tag" href="' .
+ common_local_url($this->action->trimmed('action'),
+ array('nickname' => $this->owner->nickname,
+ 'tag' => $tag)) .
+ '">' . $tag . '</a>';
+ $this->out->raw($pt);
$this->out->elementEnd('li');
}
$this->out->elementEnd('ul');
diff --git a/lib/theme.php b/lib/theme.php
index 0be8c3b9d..a9d0cbc84 100644
--- a/lib/theme.php
+++ b/lib/theme.php
@@ -38,6 +38,9 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
* Themes are directories with some expected sub-directories and files
* in them. They're found in either local/theme (for locally-installed themes)
* or theme/ subdir of installation dir.
+ *
+ * Note that the 'local' directory can be overridden as $config['local']['path']
+ * and $config['local']['dir'] etc.
*
* This used to be a couple of functions, but for various reasons it's nice
* to have a class instead.
@@ -76,7 +79,7 @@ class Theme
if (file_exists($fulldir) && is_dir($fulldir)) {
$this->dir = $fulldir;
- $this->path = common_path('local/theme/'.$name.'/');
+ $this->path = $this->relativeThemePath('local', 'local', 'theme/' . $name);
return;
}
@@ -89,42 +92,63 @@ class Theme
if (file_exists($fulldir) && is_dir($fulldir)) {
$this->dir = $fulldir;
+ $this->path = $this->relativeThemePath('theme', 'theme', $name);
+ }
+ }
- $path = common_config('theme', 'path');
+ /**
+ * Build a full URL to the given theme's base directory, possibly
+ * using an offsite theme server path.
+ *
+ * @param string $group configuration section name to pull paths from
+ * @param string $fallbackSubdir default subdirectory under INSTALLDIR
+ * @param string $name theme name
+ *
+ * @return string URL
+ *
+ * @todo consolidate code with that for other customizable paths
+ */
- if (empty($path)) {
- $path = common_config('site', 'path') . '/theme/';
- }
+ protected function relativeThemePath($group, $fallbackSubdir, $name)
+ {
+ $path = common_config($group, 'path');
- if ($path[strlen($path)-1] != '/') {
- $path .= '/';
+ if (empty($path)) {
+ $path = common_config('site', 'path') . '/';
+ if ($fallbackSubdir) {
+ $path .= $fallbackSubdir . '/';
}
+ }
- if ($path[0] != '/') {
- $path = '/'.$path;
- }
+ if ($path[strlen($path)-1] != '/') {
+ $path .= '/';
+ }
- $server = common_config('theme', 'server');
+ if ($path[0] != '/') {
+ $path = '/'.$path;
+ }
- if (empty($server)) {
- $server = common_config('site', 'server');
- }
+ $server = common_config($group, 'server');
- $ssl = common_config('theme', 'ssl');
+ if (empty($server)) {
+ $server = common_config('site', 'server');
+ }
- if (is_null($ssl)) { // null -> guess
- if (common_config('site', 'ssl') == 'always' &&
- !common_config('theme', 'server')) {
- $ssl = true;
- } else {
- $ssl = false;
- }
+ $ssl = common_config($group, 'ssl');
+
+ if (is_null($ssl)) { // null -> guess
+ if (common_config('site', 'ssl') == 'always' &&
+ !common_config($group, 'server')) {
+ $ssl = true;
+ } else {
+ $ssl = false;
}
+ }
- $protocol = ($ssl) ? 'https' : 'http';
+ $protocol = ($ssl) ? 'https' : 'http';
- $this->path = $protocol . '://'.$server.$path.$name;
- }
+ $path = $protocol . '://'.$server.$path.$name;
+ return $path;
}
/**
@@ -236,7 +260,13 @@ class Theme
protected static function localRoot()
{
- return INSTALLDIR.'/local/theme';
+ $basedir = common_config('local', 'dir');
+
+ if (empty($basedir)) {
+ $basedir = INSTALLDIR . '/local';
+ }
+
+ return $basedir . '/theme';
}
/**
diff --git a/lib/themeuploader.php b/lib/themeuploader.php
new file mode 100644
index 000000000..370965db0
--- /dev/null
+++ b/lib/themeuploader.php
@@ -0,0 +1,311 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Utilities for theme files and paths
+ *
+ * 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 Paths
+ * @package StatusNet
+ * @author Brion Vibber <brion@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') && !defined('LACONICA')) {
+ exit(1);
+}
+
+/**
+ * Encapsulation of the validation-and-save process when dealing with
+ * a user-uploaded StatusNet theme archive...
+ *
+ * @todo extract theme metadata from css/display.css
+ * @todo allow saving multiple themes
+ */
+class ThemeUploader
+{
+ protected $sourceFile;
+ protected $isUpload;
+ private $prevErrorReporting;
+
+ public function __construct($filename)
+ {
+ if (!class_exists('ZipArchive')) {
+ throw new Exception(_("This server cannot handle theme uploads without ZIP support."));
+ }
+ $this->sourceFile = $filename;
+ }
+
+ public static function fromUpload($name)
+ {
+ if (!isset($_FILES[$name]['error'])) {
+ throw new ServerException(_("The theme file is missing or the upload failed."));
+ }
+ if ($_FILES[$name]['error'] != UPLOAD_ERR_OK) {
+ throw new ServerException(_("The theme file is missing or the upload failed."));
+ }
+ return new ThemeUploader($_FILES[$name]['tmp_name']);
+ }
+
+ /**
+ * @param string $destDir
+ * @throws Exception on bogus files
+ */
+ public function extract($destDir)
+ {
+ $zip = $this->openArchive();
+
+ // First pass: validate but don't save anything to disk.
+ // Any errors will trip an exception.
+ $this->traverseArchive($zip);
+
+ // Second pass: now that we know we're good, actually extract!
+ $tmpDir = $destDir . '.tmp' . getmypid();
+ $this->traverseArchive($zip, $tmpDir);
+
+ $zip->close();
+
+ if (file_exists($destDir)) {
+ $killDir = $tmpDir . '.old';
+ $this->quiet();
+ $ok = rename($destDir, $killDir);
+ $this->loud();
+ if (!$ok) {
+ common_log(LOG_ERR, "Could not move old custom theme from $destDir to $killDir");
+ throw new ServerException(_("Failed saving theme."));
+ }
+ } else {
+ $killDir = false;
+ }
+
+ $this->quiet();
+ $ok = rename($tmpDir, $destDir);
+ $this->loud();
+ if (!$ok) {
+ common_log(LOG_ERR, "Could not move saved theme from $tmpDir to $destDir");
+ throw new ServerException(_("Failed saving theme."));
+ }
+
+ if ($killDir) {
+ $this->recursiveRmdir($killDir);
+ }
+ }
+
+ /**
+ *
+ */
+ protected function traverseArchive($zip, $outdir=false)
+ {
+ $sizeLimit = 2 * 1024 * 1024; // 2 megabyte space limit?
+ $blockSize = 4096; // estimated; any entry probably takes this much space
+
+ $totalSize = 0;
+ $hasMain = false;
+ $commonBaseDir = false;
+
+ for ($i = 0; $i < $zip->numFiles; $i++) {
+ $data = $zip->statIndex($i);
+ $name = str_replace('\\', '/', $data['name']);
+
+ if (substr($name, -1) == '/') {
+ // A raw directory... skip!
+ continue;
+ }
+
+ // Check the directory structure...
+ $path = pathinfo($name);
+ $dirs = explode('/', $path['dirname']);
+ $baseDir = array_shift($dirs);
+ if ($commonBaseDir === false) {
+ $commonBaseDir = $baseDir;
+ } else {
+ if ($commonBaseDir != $baseDir) {
+ throw new ClientException(_("Invalid theme: bad directory structure."));
+ }
+ }
+
+ foreach ($dirs as $dir) {
+ $this->validateFileOrFolder($dir);
+ }
+
+ // Is this a safe or skippable file?
+ if ($this->skippable($path['filename'], $path['extension'])) {
+ // Documentation and such... booooring
+ continue;
+ } else {
+ $this->validateFile($path['filename'], $path['extension']);
+ }
+
+ $fullPath = $dirs;
+ $fullPath[] = $path['basename'];
+ $localFile = implode('/', $fullPath);
+ if ($localFile == 'css/display.css') {
+ $hasMain = true;
+ }
+
+ $size = $data['size'];
+ $estSize = $blockSize * max(1, intval(ceil($size / $blockSize)));
+ $totalSize += $estSize;
+ if ($totalSize > $sizeLimit) {
+ $msg = sprintf(_("Uploaded theme is too large; " .
+ "must be less than %d bytes uncompressed."),
+ $sizeLimit);
+ throw new ClientException($msg);
+ }
+
+ if ($outdir) {
+ $this->extractFile($zip, $data['name'], "$outdir/$localFile");
+ }
+ }
+
+ if (!$hasMain) {
+ throw new ClientException(_("Invalid theme archive: " .
+ "missing file css/display.css"));
+ }
+ }
+
+ protected function skippable($filename, $ext)
+ {
+ $skip = array('txt', 'rtf', 'doc', 'docx', 'odt');
+ if (strtolower($filename) == 'readme') {
+ return true;
+ }
+ if (in_array(strtolower($ext), $skip)) {
+ return true;
+ }
+ return false;
+ }
+
+ protected function validateFile($filename, $ext)
+ {
+ $this->validateFileOrFolder($filename);
+ $this->validateExtension($ext);
+ // @fixme validate content
+ }
+
+ protected function validateFileOrFolder($name)
+ {
+ if (!preg_match('/^[a-z0-9_-]+$/i', $name)) {
+ $msg = _("Theme contains invalid file or folder name. " .
+ "Stick with ASCII letters, digits, underscore, and minus sign.");
+ throw new ClientException($msg);
+ }
+ return true;
+ }
+
+ protected function validateExtension($ext)
+ {
+ $allowed = array('css', 'png', 'gif', 'jpg', 'jpeg');
+ if (!in_array(strtolower($ext), $allowed)) {
+ $msg = sprintf(_("Theme contains file of type '.%s', " .
+ "which is not allowed."),
+ $ext);
+ throw new ClientException($msg);
+ }
+ return true;
+ }
+
+ /**
+ * @return ZipArchive
+ */
+ protected function openArchive()
+ {
+ $zip = new ZipArchive;
+ $ok = $zip->open($this->sourceFile);
+ if ($ok !== true) {
+ common_log(LOG_ERR, "Error opening theme zip archive: " .
+ "{$this->sourceFile} code: {$ok}");
+ throw new Exception(_("Error opening theme archive."));
+ }
+ return $zip;
+ }
+
+ /**
+ * @param ZipArchive $zip
+ * @param string $from original path inside ZIP archive
+ * @param string $to final destination path in filesystem
+ */
+ protected function extractFile($zip, $from, $to)
+ {
+ $dir = dirname($to);
+ if (!file_exists($dir)) {
+ $this->quiet();
+ $ok = mkdir($dir, 0755, true);
+ $this->loud();
+ if (!$ok) {
+ common_log(LOG_ERR, "Failed to mkdir $dir while uploading theme");
+ throw new ServerException(_("Failed saving theme."));
+ }
+ } else if (!is_dir($dir)) {
+ common_log(LOG_ERR, "Output directory $dir not a directory while uploading theme");
+ throw new ServerException(_("Failed saving theme."));
+ }
+
+ // ZipArchive::extractTo would be easier, but won't let us alter
+ // the directory structure.
+ $in = $zip->getStream($from);
+ if (!$in) {
+ common_log(LOG_ERR, "Couldn't open archived file $from while uploading theme");
+ throw new ServerException(_("Failed saving theme."));
+ }
+ $this->quiet();
+ $out = fopen($to, "wb");
+ $this->loud();
+ if (!$out) {
+ common_log(LOG_ERR, "Couldn't open output file $to while uploading theme");
+ throw new ServerException(_("Failed saving theme."));
+ }
+ while (!feof($in)) {
+ $buffer = fread($in, 65536);
+ fwrite($out, $buffer);
+ }
+ fclose($in);
+ fclose($out);
+ }
+
+ private function quiet()
+ {
+ $this->prevErrorReporting = error_reporting();
+ error_reporting($this->prevErrorReporting & ~E_WARNING);
+ }
+
+ private function loud()
+ {
+ error_reporting($this->prevErrorReporting);
+ }
+
+ private function recursiveRmdir($dir)
+ {
+ $list = dir($dir);
+ while (($file = $list->read()) !== false) {
+ if ($file == '.' || $file == '..') {
+ continue;
+ }
+ $full = "$dir/$file";
+ if (is_dir($full)) {
+ $this->recursiveRmdir($full);
+ } else {
+ unlink($full);
+ }
+ }
+ $list->close();
+ rmdir($dir);
+ }
+
+}
diff --git a/lib/userprofile.php b/lib/userprofile.php
index 2c3b1ea45..ca060842b 100644
--- a/lib/userprofile.php
+++ b/lib/userprofile.php
@@ -71,7 +71,8 @@ class UserProfile extends Widget
{
if (Event::handle('StartProfilePageProfileSection', array(&$this->out, $this->profile))) {
- $this->out->elementStart('div', 'entity_profile vcard author');
+ $this->out->elementStart('div', array('id' => 'i',
+ 'class' => 'entity_profile vcard author'));
$this->out->element('h2', null, _('User profile'));
if (Event::handle('StartProfilePageProfileElements', array(&$this->out, $this->profile))) {
diff --git a/lib/util.php b/lib/util.php
index a30d69100..9f62097d5 100644
--- a/lib/util.php
+++ b/lib/util.php
@@ -34,6 +34,14 @@ function common_user_error($msg, $code=400)
$err->showPage();
}
+/**
+ * This should only be used at setup; processes switching languages
+ * to send text to other users should use common_switch_locale().
+ *
+ * @param string $language Locale language code (optional; empty uses
+ * current user's preference or site default)
+ * @return mixed success
+ */
function common_init_locale($language=null)
{
if(!$language) {
@@ -41,13 +49,24 @@ function common_init_locale($language=null)
}
putenv('LANGUAGE='.$language);
putenv('LANG='.$language);
- return setlocale(LC_ALL, $language . ".utf8",
+ $ok = setlocale(LC_ALL, $language . ".utf8",
$language . ".UTF8",
$language . ".utf-8",
$language . ".UTF-8",
$language);
+
+ return $ok;
}
+/**
+ * Initialize locale and charset settings and gettext with our message catalog,
+ * using the current user's language preference or the site default.
+ *
+ * This should generally only be run at framework initialization; code switching
+ * languages at runtime should call common_switch_language().
+ *
+ * @access private
+ */
function common_init_language()
{
mb_internal_encoding('UTF-8');
@@ -69,8 +88,8 @@ function common_init_language()
// don't do the job. en_US.UTF-8 should be there most of the
// time, but not guaranteed.
$ok = common_init_locale("en_US");
- if (!$ok) {
- // Try to find a complete, working locale...
+ if (!$ok && strtolower(substr(PHP_OS, 0, 3)) != 'win') {
+ // Try to find a complete, working locale on Unix/Linux...
// @fixme shelling out feels awfully inefficient
// but I don't think there's a more standard way.
$all = `locale -a`;
@@ -82,13 +101,39 @@ function common_init_language()
}
}
}
- if (!$ok) {
- common_log(LOG_ERR, "Unable to find a UTF-8 locale on this system; UI translations may not work.");
- }
+ }
+ if (!$ok) {
+ common_log(LOG_ERR, "Unable to find a UTF-8 locale on this system; UI translations may not work.");
}
$locale_set = common_init_locale($language);
}
+ common_init_gettext();
+}
+
+/**
+ * @access private
+ */
+function common_init_gettext()
+{
+ setlocale(LC_CTYPE, 'C');
+ // So we do not have to make people install the gettext locales
+ $path = common_config('site','locale_path');
+ bindtextdomain("statusnet", $path);
+ bind_textdomain_codeset("statusnet", "UTF-8");
+ textdomain("statusnet");
+}
+
+/**
+ * Switch locale during runtime, and poke gettext until it cries uncle.
+ * Otherwise, sometimes it doesn't actually switch away from the old language.
+ *
+ * @param string $language code for locale ('en', 'fr', 'pt_BR' etc)
+ */
+function common_switch_locale($language=null)
+{
+ common_init_locale($language);
+
setlocale(LC_CTYPE, 'C');
// So we do not have to make people install the gettext locales
$path = common_config('site','locale_path');
@@ -97,6 +142,7 @@ function common_init_language()
textdomain("statusnet");
}
+
function common_timezone()
{
if (common_logged_in()) {
@@ -803,7 +849,7 @@ function common_linkify($url) {
}
if (!empty($f)) {
- if ($f->getEnclosure()) {
+ if ($f->getEnclosure() || File_oembed::staticGet('file_id',$f->id)) {
$is_attachment = true;
$attachment_id = $f->id;
@@ -826,10 +872,10 @@ function common_linkify($url) {
return XMLStringer::estring('a', $attrs, $url);
}
-function common_shorten_links($text)
+function common_shorten_links($text, $always = false)
{
$maxLength = Notice::maxContent();
- if ($maxLength == 0 || mb_strlen($text) <= $maxLength) return $text;
+ if (!$always && ($maxLength == 0 || mb_strlen($text) <= $maxLength)) return $text;
return common_replace_urls_callback($text, array('File_redirection', 'makeShort'));
}
@@ -862,7 +908,14 @@ function common_xml_safe_str($str)
function common_tag_link($tag)
{
$canonical = common_canonical_tag($tag);
- $url = common_local_url('tag', array('tag' => $canonical));
+ if (common_config('singleuser', 'enabled')) {
+ // regular TagAction isn't set up in 1user mode
+ $url = common_local_url('showstream',
+ array('nickname' => common_config('singleuser', 'nickname'),
+ 'tag' => $canonical));
+ } else {
+ $url = common_local_url('tag', array('tag' => $canonical));
+ }
$xs = new XMLStringer();
$xs->elementStart('span', 'tag');
$xs->element('a', array('href' => $url,
@@ -1043,24 +1096,38 @@ function common_date_string($dt)
if ($now < $t) { // that shouldn't happen!
return common_exact_date($dt);
} else if ($diff < 60) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('a few seconds ago');
} else if ($diff < 92) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a minute ago');
} else if ($diff < 3300) {
+ // XXX: should support plural.
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d minutes ago'), round($diff/60));
} else if ($diff < 5400) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about an hour ago');
} else if ($diff < 22 * 3600) {
+ // XXX: should support plural.
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d hours ago'), round($diff/3600));
} else if ($diff < 37 * 3600) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a day ago');
} else if ($diff < 24 * 24 * 3600) {
+ // XXX: should support plural.
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d days ago'), round($diff/(24*3600)));
} else if ($diff < 46 * 24 * 3600) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a month ago');
} else if ($diff < 330 * 24 * 3600) {
+ // XXX: should support plural.
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return sprintf(_('about %d months ago'), round($diff/(30*24*3600)));
} else if ($diff < 480 * 24 * 3600) {
+ // TRANS: Used in notices to indicate when the notice was made compared to now.
return _('about a year ago');
} else {
return common_exact_date($dt);
@@ -1182,9 +1249,8 @@ function common_enqueue_notice($notice)
$transports[] = 'jabber';
}
- // @fixme move these checks into QueueManager and/or individual handlers
- if ($notice->is_local == Notice::LOCAL_PUBLIC ||
- $notice->is_local == Notice::LOCAL_NONPUBLIC) {
+ // We can skip these for gatewayed notices.
+ if ($notice->isLocal()) {
$transports = array_merge($transports, $localTransports);
if ($xmpp) {
$transports[] = 'public';
@@ -1272,12 +1338,38 @@ function common_mtrand($bytes)
return $enc;
}
+/**
+ * Record the given URL as the return destination for a future
+ * form submission, to be read by common_get_returnto().
+ *
+ * @param string $url
+ *
+ * @fixme as a session-global setting, this can allow multiple forms
+ * to conflict and overwrite each others' returnto destinations if
+ * the user has multiple tabs or windows open.
+ *
+ * Should refactor to index with a token or otherwise only pass the
+ * data along its intended path.
+ */
function common_set_returnto($url)
{
common_ensure_session();
$_SESSION['returnto'] = $url;
}
+/**
+ * Fetch a return-destination URL previously recorded by
+ * common_set_returnto().
+ *
+ * @return mixed URL string or null
+ *
+ * @fixme as a session-global setting, this can allow multiple forms
+ * to conflict and overwrite each others' returnto destinations if
+ * the user has multiple tabs or windows open.
+ *
+ * Should refactor to index with a token or otherwise only pass the
+ * data along its intended path.
+ */
function common_get_returnto()
{
common_ensure_session();
@@ -1303,7 +1395,7 @@ function common_log_line($priority, $msg)
{
static $syslog_priorities = array('LOG_EMERG', 'LOG_ALERT', 'LOG_CRIT', 'LOG_ERR',
'LOG_WARNING', 'LOG_NOTICE', 'LOG_INFO', 'LOG_DEBUG');
- return date('Y-m-d H:i:s') . ' ' . $syslog_priorities[$priority] . ': ' . $msg . "\n";
+ return date('Y-m-d H:i:s') . ' ' . $syslog_priorities[$priority] . ': ' . $msg . PHP_EOL;
}
function common_request_id()
@@ -1397,6 +1489,55 @@ function common_valid_tag($tag)
return false;
}
+/**
+ * Determine if given domain or address literal is valid
+ * eg for use in JIDs and URLs. Does not check if the domain
+ * exists!
+ *
+ * @param string $domain
+ * @return boolean valid or not
+ */
+function common_valid_domain($domain)
+{
+ $octet = "(?:25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]|[0-9])";
+ $ipv4 = "(?:$octet(?:\.$octet){3})";
+ if (preg_match("/^$ipv4$/u", $domain)) return true;
+
+ $group = "(?:[0-9a-f]{1,4})";
+ $ipv6 = "(?:\[($group(?::$group){0,7})?(::)?($group(?::$group){0,7})?\])"; // http://tools.ietf.org/html/rfc3513#section-2.2
+
+ if (preg_match("/^$ipv6$/ui", $domain, $matches)) {
+ $before = explode(":", $matches[1]);
+ $zeroes = $matches[2];
+ $after = explode(":", $matches[3]);
+ if ($zeroes) {
+ $min = 0;
+ $max = 7;
+ } else {
+ $min = 1;
+ $max = 8;
+ }
+ $explicit = count($before) + count($after);
+ if ($explicit < $min || $explicit > $max) {
+ return false;
+ }
+ return true;
+ }
+
+ try {
+ require_once "Net/IDNA.php";
+ $idn = Net_IDNA::getInstance();
+ $domain = $idn->encode($domain);
+ } catch (Exception $e) {
+ return false;
+ }
+
+ $subdomain = "(?:[a-z0-9][a-z0-9-]*)"; // @fixme
+ $fqdn = "(?:$subdomain(?:\.$subdomain)*\.?)";
+
+ return preg_match("/^$fqdn$/ui", $domain);
+}
+
/* Following functions are copied from MediaWiki GlobalFunctions.php
* and written by Evan Prodromou. */
@@ -1529,7 +1670,8 @@ function common_user_uri(&$user)
function common_notice_uri(&$notice)
{
return common_local_url('shownotice',
- array('notice' => $notice->id));
+ array('notice' => $notice->id),
+ null, null, false);
}
// 36 alphanums - lookalikes (0, O, 1, I) = 32 chars = 5 bits
@@ -1796,6 +1938,15 @@ function common_url_to_nickname($url)
$path = preg_replace('@/$@', '', $parts['path']);
$path = preg_replace('@^/@', '', $path);
$path = basename($path);
+
+ // Hack for MediaWiki user pages, in the form:
+ // http://example.com/wiki/User:Myname
+ // ('User' may be localized.)
+ if (strpos($path, ':')) {
+ $parts = array_filter(explode(':', $path));
+ $path = $parts[count($parts) - 1];
+ }
+
if ($path) {
return common_nicknamize($path);
}
diff --git a/lib/xmppmanager.php b/lib/xmppmanager.php
index cca54db08..829eaa36c 100644
--- a/lib/xmppmanager.php
+++ b/lib/xmppmanager.php
@@ -253,12 +253,12 @@ class XmppManager extends IoManager
$from = jabber_normalize_jid($pl['from']);
if ($pl['type'] != 'chat') {
- $this->log(LOG_WARNING, "Ignoring message of type ".$pl['type']." from $from.");
+ $this->log(LOG_WARNING, "Ignoring message of type ".$pl['type']." from $from: " . $pl['xml']->toString());
return;
}
if (mb_strlen($pl['body']) == 0) {
- $this->log(LOG_WARNING, "Ignoring message with empty body from $from.");
+ $this->log(LOG_WARNING, "Ignoring message with empty body from $from: " . $pl['xml']->toString());
return;
}
diff --git a/lib/xrdsoutputter.php b/lib/xrdsoutputter.php
index 4b77ed5a3..95dc73300 100644
--- a/lib/xrdsoutputter.php
+++ b/lib/xrdsoutputter.php
@@ -23,6 +23,7 @@
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
* @copyright 2008 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/locale/README b/locale/README
index 25df9ee74..d7d7fa76b 100644
--- a/locale/README
+++ b/locale/README
@@ -1,9 +1,56 @@
Localizations for StatusNet are being maintained through TranslateWiki:
http://translatewiki.net/wiki/Translating:StatusNet
-Note if you are working with a direct git checkout, you will need to build
-the binary .mo files from the .po source files for translations to work
-in the web app.
+Ongoing translation work should be done there to ensure updates are
+integrated into future versions of StatusNet.
-If gettext and GNU make are installed, you can simply run 'make' in this
-directory to build them.
+
+== Building runtime translations ==
+
+If you are working with a direct git checkout or have customized any
+message files, you will need to build binary .mo files from the .po
+source files for translations to work in the web app.
+
+If gettext and GNU make are installed, you can simply run 'make' in the
+main StatusNet directory, and all core and plugin localizations will be
+recompiled.
+
+
+== Customization ==
+
+User interface texts in any language can be customized by editing the
+texts in the .po source files, then rebuilding the binary .mo files
+used at runtime.
+
+The default/US English texts can be overridden by adding "translations"
+to en/LC_MESSAGES/statusnet.po.
+
+Note that texts you change in one language will not affect other
+languages, which are selected based on visitors' browser preferences.
+If you customizations include important information or links,
+you may wish to disable languages that you haven't customized so that
+visitors always get your text.
+
+To disable all non-English languages add this to your config.php (you
+will need to edit both the en and en_GB files):
+
+$config['site']['languages'] = array(
+ 'en-us' => array('q' => 1, 'lang' => 'en', 'name' => 'English (US)', 'direction' => 'ltr'),
+ 'en-gb' => array('q' => 1, 'lang' => 'en_GB', 'name' => 'English (British)', 'direction' => 'ltr'),
+ 'en' => array('q' => 1, 'lang' => 'en', 'name' => 'English (US)', 'direction' => 'ltr'),
+);
+
+
+To disable everything including British English variant:
+
+$config['site']['languages'] = array(
+ 'en' => array('q' => 1, 'lang' => 'en', 'name' => 'English', 'direction' => 'ltr'),
+);
+
+
+== Plugins ==
+
+This locale directory contains translations for the core StatusNet
+software only. Plugins may have their own locale subdirectories and
+their own .po and .mo files as well, so if customizing you may need
+to poke at those as well.
diff --git a/locale/af/LC_MESSAGES/statusnet.po b/locale/af/LC_MESSAGES/statusnet.po
new file mode 100644
index 000000000..2e4b6b057
--- /dev/null
+++ b/locale/af/LC_MESSAGES/statusnet.po
@@ -0,0 +1,6750 @@
+# Translation of StatusNet to Afrikaans
+#
+# Author@translatewiki.net: Naudefj
+# --
+# This file is distributed under the same license as the StatusNet package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: StatusNet\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:23:59+0000\n"
+"Language-Team: Afrikaans\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
+"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
+"X-Language-Code: af\n"
+"X-Message-Group: out-statusnet\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANS: Page title
+#. TRANS: Menu item for site administration
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
+msgid "Access"
+msgstr "Toegang"
+
+#. TRANS: Page notice
+#: actions/accessadminpanel.php:67
+msgid "Site access settings"
+msgstr "Instellings vir toegang tot webwerf"
+
+#. TRANS: Form legend for registration form.
+#: actions/accessadminpanel.php:161
+msgid "Registration"
+msgstr "Registratie"
+
+#. TRANS: Checkbox instructions for admin setting "Private"
+#: actions/accessadminpanel.php:165
+msgid "Prohibit anonymous users (not logged in) from viewing site?"
+msgstr "Mag anonieme gebruikers (nie aangeteken nie) die webwerf besigtig?"
+
+#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
+#: actions/accessadminpanel.php:167
+msgctxt "LABEL"
+msgid "Private"
+msgstr "Geen anonieme toegang"
+
+#. TRANS: Checkbox instructions for admin setting "Invite only"
+#: actions/accessadminpanel.php:174
+msgid "Make registration invitation only."
+msgstr "Registrasie slegs op uitnodiging."
+
+#. TRANS: Checkbox label for configuring site as invite only.
+#: actions/accessadminpanel.php:176
+msgid "Invite only"
+msgstr "Slegs op uitnodiging"
+
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
+#: actions/accessadminpanel.php:183
+msgid "Disable new registrations."
+msgstr "Deaktiveer nuwe registrasies."
+
+#. TRANS: Checkbox label for disabling new user registrations.
+#: actions/accessadminpanel.php:185
+msgid "Closed"
+msgstr "Gesluit"
+
+#. TRANS: Title / tooltip for button to save access settings in site admin panel
+#: actions/accessadminpanel.php:202
+msgid "Save access settings"
+msgstr "Stoor toegangsinstellings"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
+msgctxt "BUTTON"
+msgid "Save"
+msgstr "Stoor"
+
+#. TRANS: Server error when page not found (404)
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
+#: actions/showfavorites.php:138 actions/tag.php:52
+#, fuzzy
+msgid "No such page."
+msgstr "Hierdie bladsy bestaan nie"
+
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
+#: actions/apiaccountupdateprofile.php:105
+#: actions/apiaccountupdateprofilebackgroundimage.php:116
+#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
+#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
+#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
+#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
+#: actions/otp.php:76 actions/remotesubscribe.php:145
+#: actions/remotesubscribe.php:154 actions/replies.php:73
+#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
+msgid "No such user."
+msgstr "Onbekende gebruiker."
+
+#. TRANS: Page title. %1$s is user nickname, %2$d is page number
+#: actions/all.php:90
+#, php-format
+msgid "%1$s and friends, page %2$d"
+msgstr "%1$s en vriende, bladsy %2$d"
+
+#. TRANS: Page title. %1$s is user nickname
+#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
+#: lib/personalgroupnav.php:100
+#, php-format
+msgid "%s and friends"
+msgstr "%s en vriende"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:107
+#, php-format
+msgid "Feed for friends of %s (RSS 1.0)"
+msgstr "Voer vir vriende van %s (RSS 1.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:116
+#, php-format
+msgid "Feed for friends of %s (RSS 2.0)"
+msgstr "Voer vir vriende van %s (RSS 2.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:125
+#, php-format
+msgid "Feed for friends of %s (Atom)"
+msgstr "Voer vir vriende van %s (Atom)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:138
+#, php-format
+msgid ""
+"This is the timeline for %s and friends but no one has posted anything yet."
+msgstr ""
+"Hierdie is die tydslyn vir %s en vriende, maar niemand het nog iets gepos "
+"nie."
+
+#: actions/all.php:143
+#, php-format
+msgid ""
+"Try subscribing to more people, [join a group](%%action.groups%%) or post "
+"something yourself."
+msgstr ""
+
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
+#: actions/all.php:146
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
+"post a notice to them."
+msgstr ""
+
+#. TRANS: H1 text
+#: actions/all.php:182
+msgid "You and friends"
+msgstr "U en vriende"
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
+#, php-format
+msgid "Updates from %1$s and friends on %2$s!"
+msgstr "Opdaterings van %1$s en vriende op %2$s."
+
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
+#: actions/apiaccountupdateprofile.php:97
+#: actions/apiaccountupdateprofilebackgroundimage.php:94
+#: actions/apiaccountupdateprofilecolors.php:118
+#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
+#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
+#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
+#: actions/apitimelineretweetedtome.php:121
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+msgid "API method not found."
+msgstr "Die API-funksie is nie gevind nie."
+
+#: actions/apiaccountupdatedeliverydevice.php:86
+#: actions/apiaccountupdateprofile.php:89
+#: actions/apiaccountupdateprofilebackgroundimage.php:86
+#: actions/apiaccountupdateprofilecolors.php:110
+#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
+#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
+msgid "This method requires a POST."
+msgstr "Hierdie metode benodig 'n POST."
+
+#: actions/apiaccountupdatedeliverydevice.php:106
+msgid ""
+"You must specify a parameter named 'device' with a value of one of: sms, im, "
+"none."
+msgstr ""
+
+#: actions/apiaccountupdatedeliverydevice.php:133
+msgid "Could not update user."
+msgstr "Kon nie die gebruiker opdateer nie."
+
+#: actions/apiaccountupdateprofile.php:112
+#: actions/apiaccountupdateprofilebackgroundimage.php:194
+#: actions/apiaccountupdateprofilecolors.php:185
+#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
+#: lib/profileaction.php:84
+msgid "User has no profile."
+msgstr "Hierdie gebruiker het nie 'n profiel nie."
+
+#: actions/apiaccountupdateprofile.php:147
+msgid "Could not save profile."
+msgstr "Kon nie die profiel stoor nie."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
+#: actions/newapplication.php:101 actions/newnotice.php:94
+#: lib/designsettings.php:283
+#, php-format
+msgid ""
+"The server was unable to handle that much POST data (%s bytes) due to its "
+"current configuration."
+msgstr ""
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:136
+#: actions/apiaccountupdateprofilebackgroundimage.php:146
+#: actions/apiaccountupdateprofilecolors.php:164
+#: actions/apiaccountupdateprofilecolors.php:174
+#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
+#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
+#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
+msgid "Unable to save your design settings."
+msgstr "Dit was nie moontlik om u ontwerp-instellings te stoor nie."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:187
+#: actions/apiaccountupdateprofilecolors.php:142
+msgid "Could not update your design."
+msgstr "Dit was nie moontlik om u ontwerp by te werk nie."
+
+#: actions/apiblockcreate.php:105
+msgid "You cannot block yourself!"
+msgstr "U kan nie uself blokkeer nie!"
+
+#: actions/apiblockcreate.php:126
+msgid "Block user failed."
+msgstr "Die blokkering van die gebruiker het gefaal."
+
+#: actions/apiblockdestroy.php:114
+msgid "Unblock user failed."
+msgstr "Die deblokkering van die gebruiker het gefaal."
+
+#: actions/apidirectmessage.php:89
+#, php-format
+msgid "Direct messages from %s"
+msgstr "Direkte boodskappe vanaf %s"
+
+#: actions/apidirectmessage.php:93
+#, php-format
+msgid "All the direct messages sent from %s"
+msgstr "Alle direkte boodskappe deur %s gestuur"
+
+#: actions/apidirectmessage.php:101
+#, php-format
+msgid "Direct messages to %s"
+msgstr "Direkte boodskappe aan %s"
+
+#: actions/apidirectmessage.php:105
+#, php-format
+msgid "All the direct messages sent to %s"
+msgstr "Alle direkte boodskappe gestuur aan %s"
+
+#: actions/apidirectmessagenew.php:118
+msgid "No message text!"
+msgstr "Die boodskap bevat geen inhoud nie!"
+
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
+#, php-format
+msgid "That's too long. Max message size is %d chars."
+msgstr "Dit is te lank. Die maksimum boodskaplengte is %d karakters."
+
+#: actions/apidirectmessagenew.php:138
+msgid "Recipient user not found."
+msgstr "Die ontvanger kon gevind word nie."
+
+#: actions/apidirectmessagenew.php:142
+msgid "Can't send direct messages to users who aren't your friend."
+msgstr ""
+"U kan nie direkte boodskappe aan gebruikers wat nie op u viendelys is stuur "
+"nie."
+
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
+msgid "No status found with that ID."
+msgstr "Geen status met die ID gevind nie."
+
+#: actions/apifavoritecreate.php:120
+msgid "This status is already a favorite."
+msgstr "Hierdie status is reeds 'n gunsteling."
+
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
+msgid "Could not create favorite."
+msgstr "Dit was nie moontlik om 'n gunsteling te skep nie."
+
+#: actions/apifavoritedestroy.php:123
+msgid "That status is not a favorite."
+msgstr "Hierdie status is nie 'n gunsteling nie."
+
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
+msgid "Could not delete favorite."
+msgstr ""
+"Dit was nie moontlik om die boodskap van u gunstelinge te verwyder nie."
+
+#: actions/apifriendshipscreate.php:109
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "U kan nie die gebruiker volg nie: die gebruiker bestaan nie."
+
+#: actions/apifriendshipscreate.php:118
+#, php-format
+msgid "Could not follow user: %s is already on your list."
+msgstr "U kan nie die gebruiker volg nie: %1 is alreeds op u lys."
+
+#: actions/apifriendshipsdestroy.php:109
+msgid "Could not unfollow user: User not found."
+msgstr ""
+"U kan nie die gebruiker van u volglys verwyder nie: die gebruiker bestaan "
+"nie."
+
+#: actions/apifriendshipsdestroy.php:120
+msgid "You cannot unfollow yourself."
+msgstr "U kan nie ophou om uself te volg nie."
+
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr ""
+
+#: actions/apifriendshipsshow.php:134
+msgid "Could not determine source user."
+msgstr ""
+
+#: actions/apifriendshipsshow.php:142
+msgid "Could not find target user."
+msgstr ""
+
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
+#: actions/newgroup.php:126 actions/profilesettings.php:215
+#: actions/register.php:212
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr ""
+"Die gebruikersnaam mag slegs uit kleinletters en syfers bestaan en mag geen "
+"spasies bevat nie."
+
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
+#: actions/newgroup.php:130 actions/profilesettings.php:238
+#: actions/register.php:215
+msgid "Nickname already in use. Try another one."
+msgstr "Die gebruikersnaam is reeds in gebruik. Kies 'n ander een."
+
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
+#: actions/newgroup.php:133 actions/profilesettings.php:218
+#: actions/register.php:217
+msgid "Not a valid nickname."
+msgstr "Nie 'n geldige gebruikersnaam nie."
+
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
+#: actions/editgroup.php:199 actions/newapplication.php:203
+#: actions/newgroup.php:139 actions/profilesettings.php:222
+#: actions/register.php:224
+msgid "Homepage is not a valid URL."
+msgstr "Tuisblad is nie 'n geldige URL nie."
+
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
+#: actions/newgroup.php:142 actions/profilesettings.php:225
+#: actions/register.php:227
+msgid "Full name is too long (max 255 chars)."
+msgstr "Volledige naam is te lang (maksimum 255 karakters)."
+
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
+#: actions/newapplication.php:172
+#, php-format
+msgid "Description is too long (max %d chars)."
+msgstr "Die beskrywing is te lank (die maksimum is %d karakters)."
+
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
+#: actions/newgroup.php:148 actions/profilesettings.php:232
+#: actions/register.php:234
+msgid "Location is too long (max 255 chars)."
+msgstr "Ligging is te lank is (maksimum 255 karakters)."
+
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
+#: actions/newgroup.php:159
+#, php-format
+msgid "Too many aliases! Maximum %d."
+msgstr "Te veel aliasse! Die maksimum aantal is %d."
+
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr "Ongeldige alias: \"%s\""
+
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
+#: actions/newgroup.php:172
+#, php-format
+msgid "Alias \"%s\" already in use. Try another one."
+msgstr "Die alias \"%s\" word al reeds gebruik. Probeer 'n ander een."
+
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
+#: actions/newgroup.php:178
+msgid "Alias can't be the same as nickname."
+msgstr "Die alias kan nie dieselfde as die gebruikersnaam wees nie."
+
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#, fuzzy
+msgid "Group not found."
+msgstr "Groep nie gevind nie!"
+
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
+msgid "You are already a member of that group."
+msgstr "U is reeds 'n lid van die groep."
+
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
+msgid "You have been blocked from that group by the admin."
+msgstr ""
+
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
+msgid "Could not join user %1$s to group %2$s."
+msgstr ""
+
+#: actions/apigroupleave.php:115
+msgid "You are not a member of this group."
+msgstr ""
+
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
+msgid "Could not remove user %1$s from group %2$s."
+msgstr ""
+
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
+#, php-format
+msgid "%s's groups"
+msgstr "%s se groepe"
+
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Groepe op %1$s waar %2$s lid van is."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#, php-format
+msgid "%s groups"
+msgstr "%s groepe"
+
+#: actions/apigrouplistall.php:96
+#, php-format
+msgid "groups on %s"
+msgstr "groepe op %s"
+
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Die deblokkering van die gebruiker het gefaal."
+
+#: actions/apioauthauthorize.php:101
+msgid "No oauth_token parameter provided."
+msgstr ""
+
+#: actions/apioauthauthorize.php:106
+msgid "Invalid token."
+msgstr "Ongeldige token."
+
+#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
+#: actions/groupblock.php:66 actions/grouplogo.php:312
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
+#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
+#: actions/othersettings.php:145 actions/passwordsettings.php:138
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#: actions/subscribe.php:86 actions/tagother.php:166
+#: actions/unsubscribe.php:69 actions/userauthorization.php:52
+#: lib/designsettings.php:294
+msgid "There was a problem with your session token. Try again, please."
+msgstr ""
+
+#: actions/apioauthauthorize.php:135
+msgid "Invalid nickname / password!"
+msgstr "Ongeldige gebruikersnaam of wagwoord!"
+
+#: actions/apioauthauthorize.php:159
+msgid "Database error deleting OAuth application user."
+msgstr ""
+
+#: actions/apioauthauthorize.php:185
+msgid "Database error inserting OAuth application user."
+msgstr ""
+
+#: actions/apioauthauthorize.php:214
+#, php-format
+msgid ""
+"The request token %s has been authorized. Please exchange it for an access "
+"token."
+msgstr ""
+
+#: actions/apioauthauthorize.php:227
+#, php-format
+msgid "The request token %s has been denied and revoked."
+msgstr ""
+
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
+#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
+#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
+#: actions/smssettings.php:277 lib/designsettings.php:304
+msgid "Unexpected form submission."
+msgstr "Die vorm is onverwags ingestuur."
+
+#: actions/apioauthauthorize.php:259
+msgid "An application would like to connect to your account"
+msgstr "'n Toepassing vra toegang tot u gebruikersinligting"
+
+#: actions/apioauthauthorize.php:276
+msgid "Allow or deny access"
+msgstr "Toegang toelaat of weier"
+
+#: actions/apioauthauthorize.php:292
+#, php-format
+msgid ""
+"The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
+"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."
+msgstr ""
+
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
+msgid "Account"
+msgstr "Gebruiker"
+
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
+#: actions/userauthorization.php:145 lib/groupeditform.php:152
+#: lib/userprofile.php:132
+msgid "Nickname"
+msgstr "Bynaam"
+
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
+msgid "Password"
+msgstr "Wagwoord"
+
+#: actions/apioauthauthorize.php:328
+msgid "Deny"
+msgstr "Ontsê"
+
+#: actions/apioauthauthorize.php:334
+msgid "Allow"
+msgstr "Toestaan"
+
+#: actions/apioauthauthorize.php:351
+msgid "Allow or deny access to your account information."
+msgstr "Laat toegang tot u gebruikersinligting toe of weier dit."
+
+#: actions/apistatusesdestroy.php:112
+msgid "This method requires a POST or DELETE."
+msgstr "Hierdie metode vereis 'n POST of DELETE."
+
+#: actions/apistatusesdestroy.php:135
+msgid "You may not delete another user's status."
+msgstr "U mag nie 'n ander gebruiker se status verwyder nie."
+
+#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
+#: actions/deletenotice.php:52 actions/shownotice.php:92
+msgid "No such notice."
+msgstr "Die kennisgewing bestaan nie."
+
+#: actions/apistatusesretweet.php:83
+msgid "Cannot repeat your own notice."
+msgstr "U kan nie u eie kennisgewings herhaal nie."
+
+#: actions/apistatusesretweet.php:91
+msgid "Already repeated that notice."
+msgstr "U het reeds die kennisgewing herhaal."
+
+#: actions/apistatusesshow.php:139
+msgid "Status deleted."
+msgstr "Die status is verwyder."
+
+#: actions/apistatusesshow.php:145
+msgid "No status with that ID found."
+msgstr "Geen status met die ID gevind nie."
+
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
+#: lib/mailhandler.php:60
+#, php-format
+msgid "That's too long. Max notice size is %d chars."
+msgstr "Die kennisgewing is te lank. Gebruik maksimum %d karakters."
+
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Nie gevind nie."
+
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
+#, php-format
+msgid "Max notice size is %d chars, including attachment URL."
+msgstr ""
+
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
+msgid "Unsupported format."
+msgstr "Nie-ondersteunde formaat."
+
+#: actions/apitimelinefavorites.php:110
+#, php-format
+msgid "%1$s / Favorites from %2$s"
+msgstr "%1$s / Gunstelinge van %2$s"
+
+#: actions/apitimelinefavorites.php:119
+#, php-format
+msgid "%1$s updates favorited by %2$s / %2$s."
+msgstr ""
+
+#: actions/apitimelinementions.php:118
+#, php-format
+msgid "%1$s / Updates mentioning %2$s"
+msgstr ""
+
+#: actions/apitimelinementions.php:131
+#, php-format
+msgid "%1$s updates that reply to updates from %2$s / %3$s."
+msgstr ""
+
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#, php-format
+msgid "%s public timeline"
+msgstr ""
+
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#, php-format
+msgid "%s updates from everyone!"
+msgstr ""
+
+#: actions/apitimelineretweetedtome.php:111
+#, php-format
+msgid "Repeated to %s"
+msgstr "Na %s herhaal"
+
+#: actions/apitimelineretweetsofme.php:114
+#, php-format
+msgid "Repeats of %s"
+msgstr "Herhalings van %s"
+
+#: actions/apitimelinetag.php:105 actions/tag.php:67
+#, php-format
+msgid "Notices tagged with %s"
+msgstr ""
+
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#, php-format
+msgid "Updates tagged with %1$s on %2$s!"
+msgstr ""
+
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
+
+#: actions/attachment.php:73
+msgid "No such attachment."
+msgstr "Die aanhangsel bestaan nie."
+
+#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#: actions/grouplogo.php:86 actions/groupmembers.php:76
+#: actions/grouprss.php:91 actions/showgroup.php:121
+msgid "No nickname."
+msgstr "Geen gebruikersnaam nie."
+
+#: actions/avatarbynickname.php:64
+msgid "No size."
+msgstr "Geen grootte nie."
+
+#: actions/avatarbynickname.php:69
+msgid "Invalid size."
+msgstr "Ongeldige grootte."
+
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
+msgid "Avatar"
+msgstr "Avatar"
+
+#: actions/avatarsettings.php:78
+#, php-format
+msgid "You can upload your personal avatar. The maximum file size is %s."
+msgstr ""
+
+#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr ""
+
+#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
+#: actions/grouplogo.php:254
+msgid "Avatar settings"
+msgstr "Avatar-instellings"
+
+#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
+#: actions/grouplogo.php:202 actions/grouplogo.php:262
+msgid "Original"
+msgstr "Oorspronklik"
+
+#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
+#: actions/grouplogo.php:213 actions/grouplogo.php:274
+msgid "Preview"
+msgstr "Voorskou"
+
+#: actions/avatarsettings.php:149 actions/showapplication.php:252
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
+msgid "Delete"
+msgstr "Skrap"
+
+#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+msgid "Upload"
+msgstr "Oplaai"
+
+#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+msgid "Crop"
+msgstr "Uitsny"
+
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Geen lêer opgelaai nie."
+
+#: actions/avatarsettings.php:332
+msgid "Pick a square area of the image to be your avatar"
+msgstr ""
+
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+msgid "Lost our file data."
+msgstr ""
+
+#: actions/avatarsettings.php:370
+msgid "Avatar updated."
+msgstr "Die avatar is opgedateer."
+
+#: actions/avatarsettings.php:373
+msgid "Failed updating avatar."
+msgstr "Die opdatering van die avatar het gefaal."
+
+#: actions/avatarsettings.php:397
+msgid "Avatar deleted."
+msgstr "Die avatar is verwyder."
+
+#: actions/block.php:69
+msgid "You already blocked that user."
+msgstr "U het reeds die gebruiker geblokkeer."
+
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+msgid "Block user"
+msgstr "Blokkeer gebruiker"
+
+#: actions/block.php:138
+msgid ""
+"Are you sure you want to block this user? Afterwards, they will be "
+"unsubscribed from you, unable to subscribe to you in the future, and you "
+"will not be notified of any @-replies from them."
+msgstr ""
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
+#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
+msgid "No"
+msgstr "Nee"
+
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
+msgid "Do not block this user"
+msgstr "Moenie hierdie gebruiker blokkeer nie"
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Yes"
+msgstr "Ja"
+
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
+msgid "Block this user"
+msgstr "Blokkeer hierdie gebruiker"
+
+#: actions/block.php:187
+msgid "Failed to save block information."
+msgstr ""
+
+#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
+#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
+#: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
+#: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
+#: actions/groupmembers.php:83 actions/groupmembers.php:90
+#: actions/grouprss.php:98 actions/grouprss.php:105
+#: actions/groupunblock.php:86 actions/joingroup.php:82
+#: actions/joingroup.php:93 actions/leavegroup.php:82
+#: actions/leavegroup.php:93 actions/makeadmin.php:86
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
+msgid "No such group."
+msgstr "Die groep bestaan nie."
+
+#: actions/blockedfromgroup.php:97
+#, php-format
+msgid "%s blocked profiles"
+msgstr ""
+
+#: actions/blockedfromgroup.php:100
+#, php-format
+msgid "%1$s blocked profiles, page %2$d"
+msgstr ""
+
+#: actions/blockedfromgroup.php:115
+msgid "A list of the users blocked from joining this group."
+msgstr ""
+
+#: actions/blockedfromgroup.php:288
+msgid "Unblock user from group"
+msgstr "Gee gebruiker weer toegang tot die groep"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
+msgid "Unblock"
+msgstr "Deblokkeer"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
+msgid "Unblock this user"
+msgstr "Deblokkeer hierdie gebruiker"
+
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "Stuur aan "
+
+#: actions/confirmaddress.php:75
+msgid "No confirmation code."
+msgstr "Geen bevestigingskode."
+
+#: actions/confirmaddress.php:80
+msgid "Confirmation code not found."
+msgstr ""
+
+#: actions/confirmaddress.php:85
+msgid "That confirmation code is not for you!"
+msgstr ""
+
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, php-format
+msgid "Unrecognized address type %s."
+msgstr ""
+
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
+msgid "That address has already been confirmed."
+msgstr ""
+
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
+msgid "Couldn't update user."
+msgstr "Kon nie gebruiker opdateer nie."
+
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr ""
+
+#: actions/confirmaddress.php:146
+msgid "Confirm address"
+msgstr "Bevestig adres"
+
+#: actions/confirmaddress.php:161
+#, php-format
+msgid "The address \"%s\" has been confirmed for your account."
+msgstr ""
+
+#: actions/conversation.php:99
+msgid "Conversation"
+msgstr "Gesprek"
+
+#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
+msgid "Notices"
+msgstr "Kennisgewings"
+
+#: actions/deleteapplication.php:63
+msgid "You must be logged in to delete an application."
+msgstr ""
+
+#: actions/deleteapplication.php:71
+msgid "Application not found."
+msgstr "Die applikasie is nie gevind nie."
+
+#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#: actions/showapplication.php:94
+msgid "You are not the owner of this application."
+msgstr "U is nie die eienaar van hierdie applikasie nie."
+
+#: actions/deleteapplication.php:102 actions/editapplication.php:127
+#: actions/newapplication.php:110 actions/showapplication.php:118
+#: lib/action.php:1263
+msgid "There was a problem with your session token."
+msgstr ""
+
+#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+msgid "Delete application"
+msgstr "Skrap applikasie"
+
+#: actions/deleteapplication.php:149
+msgid ""
+"Are you sure you want to delete this application? This will clear all data "
+"about the application from the database, including all existing user "
+"connections."
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
+msgid "Do not delete this application"
+msgstr "Moenie die applikasie verwyder nie"
+
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
+msgid "Delete this application"
+msgstr "Skrap hierdie applikasie"
+
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
+#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
+#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#: actions/tagother.php:33 actions/unsubscribe.php:52
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
+#: lib/settingsaction.php:72
+msgid "Not logged in."
+msgstr "Nie aangeteken nie."
+
+#: actions/deletenotice.php:71
+msgid "Can't delete this notice."
+msgstr "Hierdie kennisgewing kan nie verwyder word nie."
+
+#: actions/deletenotice.php:103
+msgid ""
+"You are about to permanently delete a notice. Once this is done, it cannot "
+"be undone."
+msgstr ""
+
+#: actions/deletenotice.php:109 actions/deletenotice.php:141
+msgid "Delete notice"
+msgstr "Verwyder kennisgewing"
+
+#: actions/deletenotice.php:144
+msgid "Are you sure you want to delete this notice?"
+msgstr "Is u seker u wil hierdie kennisgewing verwyder?"
+
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
+msgid "Do not delete this notice"
+msgstr "Moenie hierdie kennisgewing verwyder nie"
+
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
+msgid "Delete this notice"
+msgstr "Verwyder hierdie kennisgewing"
+
+#: actions/deleteuser.php:67
+msgid "You cannot delete users."
+msgstr "U kan nie gebruikers verwyder nie."
+
+#: actions/deleteuser.php:74
+msgid "You can only delete local users."
+msgstr "U kan slegs lokale gebruikers verwyder."
+
+#: actions/deleteuser.php:110 actions/deleteuser.php:133
+msgid "Delete user"
+msgstr "Verwyder gebruiker"
+
+#: actions/deleteuser.php:136
+msgid ""
+"Are you sure you want to delete this user? This will clear all data about "
+"the user from the database, without a backup."
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
+msgid "Delete this user"
+msgstr "Verwyder die gebruiker"
+
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
+#: lib/groupnav.php:119
+msgid "Design"
+msgstr "Ontwerp"
+
+#: actions/designadminpanel.php:74
+msgid "Design settings for this StatusNet site."
+msgstr ""
+
+#: actions/designadminpanel.php:318
+msgid "Invalid logo URL."
+msgstr "Die logo-URL is ongeldig."
+
+#: actions/designadminpanel.php:322
+#, fuzzy, php-format
+msgid "Theme not available: %s."
+msgstr "Tema is nie beskikbaar nie: %s"
+
+#: actions/designadminpanel.php:426
+msgid "Change logo"
+msgstr "Verander logo"
+
+#: actions/designadminpanel.php:431
+msgid "Site logo"
+msgstr "Webwerf-logo"
+
+#: actions/designadminpanel.php:443
+msgid "Change theme"
+msgstr "Verander tema"
+
+#: actions/designadminpanel.php:460
+msgid "Site theme"
+msgstr "Werf se tema"
+
+#: actions/designadminpanel.php:461
+msgid "Theme for the site."
+msgstr "Tema vir die werf."
+
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Werf se tema"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
+msgid "Change background image"
+msgstr "Verander die agtergrond-prent"
+
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
+#: lib/designsettings.php:178
+msgid "Background"
+msgstr "Agtergrond"
+
+#: actions/designadminpanel.php:496
+#, php-format
+msgid ""
+"You can upload a background image for the site. The maximum file size is %1"
+"$s."
+msgstr ""
+
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
+msgid "On"
+msgstr "Aan"
+
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
+msgid "Off"
+msgstr "Af"
+
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
+msgid "Turn background image on or off."
+msgstr ""
+
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
+msgid "Tile background image"
+msgstr ""
+
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
+msgid "Change colours"
+msgstr "Verander kleure"
+
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
+msgid "Content"
+msgstr "Inhoud"
+
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
+msgid "Sidebar"
+msgstr "Kantstrook"
+
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
+msgid "Text"
+msgstr "Text"
+
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
+msgid "Links"
+msgstr "Skakels"
+
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
+msgid "Use defaults"
+msgstr "Gebruik verstekwaardes"
+
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
+msgid "Restore default designs"
+msgstr ""
+
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
+msgid "Reset back to default"
+msgstr "Stel terug na standaard"
+
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
+#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
+#: lib/designsettings.php:256 lib/groupeditform.php:202
+msgid "Save"
+msgstr "Stoor"
+
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
+msgid "Save design"
+msgstr "Stoor ontwerp"
+
+#: actions/disfavor.php:81
+msgid "This notice is not a favorite!"
+msgstr "Hierdie kennisgewing is nie 'n gunsteling nie!"
+
+#: actions/disfavor.php:94
+msgid "Add to favorites"
+msgstr "Voeg by gunstelinge"
+
+#: actions/doc.php:158
+#, php-format
+msgid "No such document \"%s\""
+msgstr "Onbekende dokument \"%s\""
+
+#: actions/editapplication.php:54
+msgid "Edit Application"
+msgstr "Wysig applikasie"
+
+#: actions/editapplication.php:66
+msgid "You must be logged in to edit an application."
+msgstr "U moet aangeteken wees alvorens u 'n applikasie kan wysig."
+
+#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
+#: actions/showapplication.php:87
+msgid "No such application."
+msgstr "Die applikasie bestaan nie."
+
+#: actions/editapplication.php:161
+msgid "Use this form to edit your application."
+msgstr "Gebruik die vorm om u applikasie te wysig."
+
+#: actions/editapplication.php:177 actions/newapplication.php:159
+msgid "Name is required."
+msgstr "'n Naam is verpligtend."
+
+#: actions/editapplication.php:180 actions/newapplication.php:165
+msgid "Name is too long (max 255 chars)."
+msgstr "Die naam is te lank (maksimum 255 karakters)."
+
+#: actions/editapplication.php:183 actions/newapplication.php:162
+msgid "Name already in use. Try another one."
+msgstr "Die naam is reeds in gebruik. Kies 'n ander een."
+
+#: actions/editapplication.php:186 actions/newapplication.php:168
+msgid "Description is required."
+msgstr "Beskrywing word vereis."
+
+#: actions/editapplication.php:194
+msgid "Source URL is too long."
+msgstr "Die bron-URL is te lank."
+
+#: actions/editapplication.php:200 actions/newapplication.php:185
+msgid "Source URL is not valid."
+msgstr "Die bron-URL is nie geldig nie."
+
+#: actions/editapplication.php:203 actions/newapplication.php:188
+msgid "Organization is required."
+msgstr "Organisasie is verpligtend."
+
+#: actions/editapplication.php:206 actions/newapplication.php:191
+msgid "Organization is too long (max 255 chars)."
+msgstr "Die organisasienaam is te lang (maksimum 255 karakters)."
+
+#: actions/editapplication.php:209 actions/newapplication.php:194
+msgid "Organization homepage is required."
+msgstr "Die tuisblad vir die organisasie is verpligtend."
+
+#: actions/editapplication.php:218 actions/newapplication.php:206
+msgid "Callback is too long."
+msgstr "Die \"callback\" is te lank."
+
+#: actions/editapplication.php:225 actions/newapplication.php:215
+msgid "Callback URL is not valid."
+msgstr "Die \"callback\"-URL is nie geldig nie."
+
+#: actions/editapplication.php:258
+msgid "Could not update application."
+msgstr "Dit was nie moontlik om die applikasie by te werk nie."
+
+#: actions/editgroup.php:56
+#, php-format
+msgid "Edit %s group"
+msgstr "Groep %s wysig"
+
+#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
+msgid "You must be logged in to create a group."
+msgstr "U moet aangeteken wees alvorens u 'n groep kan skep."
+
+#: actions/editgroup.php:107 actions/editgroup.php:172
+#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
+msgid "You must be an admin to edit the group."
+msgstr "U moet 'n administrateur wees alvorens u 'n groep kan wysig."
+
+#: actions/editgroup.php:158
+msgid "Use this form to edit the group."
+msgstr "Gebruik hierdie vorm om die groep te wysig."
+
+#: actions/editgroup.php:205 actions/newgroup.php:145
+#, php-format
+msgid "description is too long (max %d chars)."
+msgstr "Die beskrywing is te lank (die maksimum is %d karakters)."
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ongeldige alias: \"%s\""
+
+#: actions/editgroup.php:258
+msgid "Could not update group."
+msgstr "Dit was nie moontlik om die groep by te werk nie."
+
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
+msgid "Could not create aliases."
+msgstr "Dit was nie moontlik om die aliasse te skep nie."
+
+#: actions/editgroup.php:280
+msgid "Options saved."
+msgstr "Opsies is gestoor."
+
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
+msgid "Email settings"
+msgstr "E-posvoorkeure"
+
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
+#, php-format
+msgid "Manage how you get email from %%site.name%%."
+msgstr ""
+
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-posadres"
+
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
+msgid "Current confirmed email address."
+msgstr "Huidige bevestigde e-posadres."
+
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Remove"
+msgstr "Verwyder"
+
+#: actions/emailsettings.php:122
+msgid ""
+"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
+"a message with further instructions."
+msgstr ""
+
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "Kanselleer"
+
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
+msgid "Email address, like \"UserName@example.org\""
+msgstr "E-posadres, soos \"UserName@example.org\""
+
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Add"
+msgstr "Voeg by"
+
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
+msgid "Incoming email"
+msgstr "Inkomende e-pos"
+
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
+msgid "Send email to this address to post new notices."
+msgstr ""
+
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
+msgid "Make a new email address for posting to; cancels the old one."
+msgstr ""
+
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
+msgid "New"
+msgstr "Nuut"
+
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
+msgstr "Voorkeure"
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
+msgid "Send me notices of new subscriptions through email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
+msgid "Send me email when someone adds my notice as a favorite."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
+msgid "Send me email when someone sends me a private message."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
+msgid "Send me email when someone sends me an \"@-reply\"."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
+msgid "Allow friends to nudge me and send me an email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
+msgid "I want to post notices by email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
+msgid "Publish a MicroID for my email address."
+msgstr ""
+
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "Voorkeure is gestoor."
+
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
+msgid "No email address."
+msgstr "Geen e-posadres."
+
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
+msgid "Cannot normalize that email address"
+msgstr ""
+
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
+#: actions/siteadminpanel.php:144
+msgid "Not a valid email address."
+msgstr "Nie 'n geldige e-posadres nie."
+
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
+msgid "That is already your email address."
+msgstr "Dit is al reeds u e-posadres."
+
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
+msgid "That email address already belongs to another user."
+msgstr ""
+
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
+msgid "Couldn't insert confirmation code."
+msgstr ""
+
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
+msgid ""
+"A confirmation code was sent to the email address you added. Check your "
+"inbox (and spam box!) for the code and instructions on how to use it."
+msgstr ""
+
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
+msgid "No pending confirmation to cancel."
+msgstr ""
+
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
+msgstr "Dit is die verkeerde IM-adres."
+
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
+msgstr "Bevestiging gekanselleer."
+
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
+msgid "That is not your email address."
+msgstr "Dit is nie u e-posadres nie."
+
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
+msgstr "Die adres is verwyder."
+
+#: actions/emailsettings.php:493 actions/smssettings.php:568
+msgid "No incoming email address."
+msgstr "Geen inkomende e-posadres."
+
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
+msgid "Couldn't update user record."
+msgstr "Kon nie gebruikersdata opdateer nie."
+
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
+msgid "Incoming email address removed."
+msgstr "Inkomende e-posadres is verwyder."
+
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
+msgid "New incoming email address added."
+msgstr ""
+
+#: actions/favor.php:79
+msgid "This notice is already a favorite!"
+msgstr ""
+
+#: actions/favor.php:92 lib/disfavorform.php:140
+msgid "Disfavor favorite"
+msgstr ""
+
+#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: lib/publicgroupnav.php:93
+msgid "Popular notices"
+msgstr "Populêre kennisgewings"
+
+#: actions/favorited.php:67
+#, php-format
+msgid "Popular notices, page %d"
+msgstr "Populêre kennisgewings, bladsy %d"
+
+#: actions/favorited.php:79
+msgid "The most popular notices on the site right now."
+msgstr ""
+
+#: actions/favorited.php:150
+msgid "Favorite notices appear on this page but no one has favorited one yet."
+msgstr ""
+
+#: actions/favorited.php:153
+msgid ""
+"Be the first to add a notice to your favorites by clicking the fave button "
+"next to any notice you like."
+msgstr ""
+
+#: actions/favorited.php:156
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to add a "
+"notice to your favorites!"
+msgstr ""
+
+#: actions/favoritesrss.php:111 actions/showfavorites.php:77
+#: lib/personalgroupnav.php:115
+#, php-format
+msgid "%s's favorite notices"
+msgstr "%s se gunsteling kennisgewings"
+
+#: actions/favoritesrss.php:115
+#, php-format
+msgid "Updates favored by %1$s on %2$s!"
+msgstr ""
+
+#: actions/featured.php:69 lib/featureduserssection.php:87
+#: lib/publicgroupnav.php:89
+msgid "Featured users"
+msgstr "Nuwe gebruikers"
+
+#: actions/featured.php:71
+#, php-format
+msgid "Featured users, page %d"
+msgstr "Nuwe gebruikers, bladsy %d"
+
+#: actions/featured.php:99
+#, php-format
+msgid "A selection of some great users on %s"
+msgstr ""
+
+#: actions/file.php:34
+msgid "No notice ID."
+msgstr "Geen kennisgewing-ID."
+
+#: actions/file.php:38
+msgid "No notice."
+msgstr "Geen kennisgewing."
+
+#: actions/file.php:42
+msgid "No attachments."
+msgstr "Geen aanhangsels."
+
+#: actions/file.php:51
+msgid "No uploaded attachments."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:69
+msgid "Not expecting this response!"
+msgstr ""
+
+#: actions/finishremotesubscribe.php:80
+msgid "User being listened to does not exist."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
+msgid "You can use the local subscription!"
+msgstr ""
+
+#: actions/finishremotesubscribe.php:99
+msgid "That user has blocked you from subscribing."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:110
+msgid "You are not authorized."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:113
+msgid "Could not convert request token to access token."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:118
+msgid "Remote service uses unknown version of OMB protocol."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
+msgstr "Kon nie die profiel stoor nie."
+
+#: actions/getfile.php:79
+msgid "No such file."
+msgstr "Die lêer bestaan nie."
+
+#: actions/getfile.php:83
+msgid "Cannot read file."
+msgstr "Die lêer kan nie gelees word nie."
+
+#: actions/grantrole.php:62 actions/revokerole.php:62
+msgid "Invalid role."
+msgstr "Ongeldige rol."
+
+#: actions/grantrole.php:66 actions/revokerole.php:66
+msgid "This role is reserved and cannot be set."
+msgstr ""
+
+#: actions/grantrole.php:75
+msgid "You cannot grant user roles on this site."
+msgstr ""
+
+#: actions/grantrole.php:82
+msgid "User already has this role."
+msgstr ""
+
+#: actions/groupblock.php:71 actions/groupunblock.php:71
+#: actions/makeadmin.php:71 actions/subedit.php:46
+#: lib/profileformaction.php:79
+msgid "No profile specified."
+msgstr "Geen profiel verskaf nie."
+
+#: actions/groupblock.php:76 actions/groupunblock.php:76
+#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+msgid "No profile with that ID."
+msgstr "Daar is geen profiel met daardie ID nie."
+
+#: actions/groupblock.php:81 actions/groupunblock.php:81
+#: actions/makeadmin.php:81
+msgid "No group specified."
+msgstr "Geen groep verskaf nie."
+
+#: actions/groupblock.php:91
+msgid "Only an admin can block group members."
+msgstr ""
+
+#: actions/groupblock.php:95
+msgid "User is already blocked from group."
+msgstr ""
+
+#: actions/groupblock.php:100
+msgid "User is not a member of group."
+msgstr ""
+
+#: actions/groupblock.php:134 actions/groupmembers.php:360
+msgid "Block user from group"
+msgstr "Blok gebruiker toegang tot die groep"
+
+#: actions/groupblock.php:160
+#, php-format
+msgid ""
+"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
+"will be removed from the group, unable to post, and unable to subscribe to "
+"the group in the future."
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
+msgid "Do not block this user from this group"
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
+msgid "Block this user from this group"
+msgstr "Blok hierdie gebruiker van hierdie groep"
+
+#: actions/groupblock.php:206
+msgid "Database error blocking user from group."
+msgstr ""
+
+#: actions/groupbyid.php:74 actions/userbyid.php:70
+msgid "No ID."
+msgstr "Geen ID."
+
+#: actions/groupdesignsettings.php:68
+msgid "You must be logged in to edit a group."
+msgstr ""
+
+#: actions/groupdesignsettings.php:144
+msgid "Group design"
+msgstr ""
+
+#: actions/groupdesignsettings.php:155
+msgid ""
+"Customize the way your group looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+
+#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
+#: lib/designsettings.php:391 lib/designsettings.php:413
+msgid "Couldn't update your design."
+msgstr ""
+
+#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
+msgid "Design preferences saved."
+msgstr ""
+
+#: actions/grouplogo.php:142 actions/grouplogo.php:195
+msgid "Group logo"
+msgstr "Groepslogo"
+
+#: actions/grouplogo.php:153
+#, php-format
+msgid ""
+"You can upload a logo image for your group. The maximum file size is %s."
+msgstr ""
+
+#: actions/grouplogo.php:365
+msgid "Pick a square area of the image to be the logo."
+msgstr ""
+
+#: actions/grouplogo.php:399
+msgid "Logo updated."
+msgstr "Logo opgedateer."
+
+#: actions/grouplogo.php:401
+msgid "Failed updating logo."
+msgstr "Die opdatering van die logo het gefaal."
+
+#: actions/groupmembers.php:100 lib/groupnav.php:92
+#, php-format
+msgid "%s group members"
+msgstr "lede van die groep %s"
+
+#: actions/groupmembers.php:103
+#, php-format
+msgid "%1$s group members, page %2$d"
+msgstr ""
+
+#: actions/groupmembers.php:118
+msgid "A list of the users in this group."
+msgstr ""
+
+#: actions/groupmembers.php:182 lib/groupnav.php:107
+msgid "Admin"
+msgstr "Administrateur"
+
+#: actions/groupmembers.php:392 lib/blockform.php:69
+msgid "Block"
+msgstr "Blokkeer"
+
+#: actions/groupmembers.php:487
+msgid "Make user an admin of the group"
+msgstr ""
+
+#: actions/groupmembers.php:519
+msgid "Make Admin"
+msgstr "Maak Admin"
+
+#: actions/groupmembers.php:519
+msgid "Make this user an admin"
+msgstr "Maak hierdie gebruiker 'n administrateur"
+
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
+#, php-format
+msgid "%s timeline"
+msgstr "%s tydlyn"
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
+#, php-format
+msgid "Updates from members of %1$s on %2$s!"
+msgstr ""
+
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
+#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+msgid "Groups"
+msgstr "Groepe"
+
+#: actions/groups.php:64
+#, php-format
+msgid "Groups, page %d"
+msgstr "Groepe, bladsy %d"
+
+#: actions/groups.php:90
+#, php-format
+msgid ""
+"%%%%site.name%%%% groups let you find and talk with people of similar "
+"interests. After you join a group you can send messages to all other members "
+"using the syntax \"!groupname\". Don't see a group you like? Try [searching "
+"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
+"%%%%)"
+msgstr ""
+
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
+msgid "Create a new group"
+msgstr "Skep 'n nuwe groep"
+
+#: actions/groupsearch.php:52
+#, php-format
+msgid ""
+"Search for groups on %%site.name%% by their name, location, or description. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/groupsearch.php:58
+msgid "Group search"
+msgstr ""
+
+#: actions/groupsearch.php:79 actions/noticesearch.php:117
+#: actions/peoplesearch.php:83
+msgid "No results."
+msgstr "Geen resultate nie."
+
+#: actions/groupsearch.php:82
+#, php-format
+msgid ""
+"If you can't find the group you're looking for, you can [create it](%%action."
+"newgroup%%) yourself."
+msgstr ""
+
+#: actions/groupsearch.php:85
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and [create the group](%%"
+"action.newgroup%%) yourself!"
+msgstr ""
+
+#: actions/groupunblock.php:91
+msgid "Only an admin can unblock group members."
+msgstr ""
+
+#: actions/groupunblock.php:95
+msgid "User is not blocked from group."
+msgstr ""
+
+#: actions/groupunblock.php:128 actions/unblock.php:86
+msgid "Error removing the block."
+msgstr ""
+
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
+msgid "IM settings"
+msgstr "IM-instellings"
+
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
+#, php-format
+msgid ""
+"You can send and receive notices through Jabber/GTalk [instant messages](%%"
+"doc.im%%). Configure your address and settings below."
+msgstr ""
+
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
+msgid "IM is not available."
+msgstr "IM is nie beskikbaar nie."
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IP-adres"
+
+#: actions/imsettings.php:113
+msgid "Current confirmed Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
+#, php-format
+msgid ""
+"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
+"message with further instructions. (Did you add %s to your buddy list?)"
+msgstr ""
+
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
+#, php-format
+msgid ""
+"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
+"add %s to your buddy list in your IM client or on GTalk."
+msgstr ""
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Voorkeure"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
+msgid "Send me notices through Jabber/GTalk."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
+msgid "Post a notice when my Jabber/GTalk status changes."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
+msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
+msgid "Publish a MicroID for my Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Voorkeure is gestoor."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
+msgid "No Jabber ID."
+msgstr "Geen Jabber-ID nie."
+
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
+msgid "Cannot normalize that Jabber ID"
+msgstr "Dit was nie moontlik om die Jabber-ID te normaliseer nie"
+
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
+msgid "Not a valid Jabber ID"
+msgstr "Nie 'n geldige Jabber-ID nie"
+
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
+msgid "That is already your Jabber ID."
+msgstr "Dit is al reeds u Jabber-ID."
+
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
+msgid "Jabber ID already belongs to another user."
+msgstr "Die Jabber-ID word reeds deur 'n ander gebruiker gebruik."
+
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
+#, php-format
+msgid ""
+"A confirmation code was sent to the IM address you added. You must approve %"
+"s for sending messages to you."
+msgstr ""
+
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Dit is die verkeerde IM-adres."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr ""
+"Dit was nie moontlik om die boodskap van u gunstelinge te verwyder nie."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Bevestiging gekanselleer."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
+msgid "That is not your Jabber ID."
+msgstr "Dit is nie u Jabber-ID nie."
+
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Die adres is verwyder."
+
+#: actions/inbox.php:59
+#, php-format
+msgid "Inbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/inbox.php:62
+#, php-format
+msgid "Inbox for %s"
+msgstr ""
+
+#: actions/inbox.php:115
+msgid "This is your inbox, which lists your incoming private messages."
+msgstr ""
+
+#: actions/invite.php:39
+msgid "Invites have been disabled."
+msgstr ""
+
+#: actions/invite.php:41
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "U moet aanteken alvorens u by groep kan aansluit."
+
+#: actions/invite.php:72
+#, php-format
+msgid "Invalid email address: %s"
+msgstr "Ongeldige e-posadres: %s"
+
+#: actions/invite.php:110
+msgid "Invitation(s) sent"
+msgstr ""
+
+#: actions/invite.php:112
+msgid "Invite new users"
+msgstr "Nooi nuwe gebruikers"
+
+#: actions/invite.php:128
+msgid "You are already subscribed to these users:"
+msgstr ""
+
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
+#, php-format
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
+#: actions/invite.php:136
+msgid ""
+"These people are already users and you were automatically subscribed to them:"
+msgstr ""
+
+#: actions/invite.php:144
+msgid "Invitation(s) sent to the following people:"
+msgstr ""
+
+#: actions/invite.php:150
+msgid ""
+"You will be notified when your invitees accept the invitation and register "
+"on the site. Thanks for growing the community!"
+msgstr ""
+
+#: actions/invite.php:162
+msgid ""
+"Use this form to invite your friends and colleagues to use this service."
+msgstr ""
+
+#: actions/invite.php:187
+msgid "Email addresses"
+msgstr "E-posadresse"
+
+#: actions/invite.php:189
+msgid "Addresses of friends to invite (one per line)"
+msgstr ""
+
+#: actions/invite.php:192
+msgid "Personal message"
+msgstr "Persoonlike boodskap"
+
+#: actions/invite.php:194
+msgid "Optionally add a personal message to the invitation."
+msgstr ""
+
+#. TRANS: Send button for inviting friends
+#: actions/invite.php:198
+msgctxt "BUTTON"
+msgid "Send"
+msgstr "Stuur"
+
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
+#, php-format
+msgid "%1$s has invited you to join them on %2$s"
+msgstr ""
+
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
+#, php-format
+msgid ""
+"%1$s has invited you to join them on %2$s (%3$s).\n"
+"\n"
+"%2$s is a micro-blogging service that lets you keep up-to-date with people "
+"you know and people who interest you.\n"
+"\n"
+"You can also share news about yourself, your thoughts, or your life online "
+"with people who know about you. It's also great for meeting new people who "
+"share your interests.\n"
+"\n"
+"%1$s said:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see %1$s's profile page on %2$s here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"If you'd like to try the service, click on the link below to accept the "
+"invitation.\n"
+"\n"
+"%6$s\n"
+"\n"
+"If not, you can ignore this message. Thanks for your patience and your "
+"time.\n"
+"\n"
+"Sincerely, %2$s\n"
+msgstr ""
+
+#: actions/joingroup.php:60
+msgid "You must be logged in to join a group."
+msgstr "U moet aanteken alvorens u by groep kan aansluit."
+
+#: actions/joingroup.php:88 actions/leavegroup.php:88
+msgid "No nickname or ID."
+msgstr "Geen gebruikersnaam of ID nie."
+
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
+#, php-format
+msgid "%1$s joined group %2$s"
+msgstr "%1$s het by groep %2$s aangesluit"
+
+#: actions/leavegroup.php:60
+msgid "You must be logged in to leave a group."
+msgstr "U moet aanteken alvorens u 'n groep kan verlaat."
+
+#: actions/leavegroup.php:100 lib/command.php:373
+msgid "You are not a member of that group."
+msgstr "U is nie 'n lid van daardie groep nie."
+
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
+msgid "%1$s left group %2$s"
+msgstr "%1$s het die groep %2$s verlaat"
+
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
+msgid "Already logged in."
+msgstr "U is reeds aangeteken."
+
+#: actions/login.php:148
+msgid "Incorrect username or password."
+msgstr "Verkeerde gebruikersnaam of wagwoord."
+
+#: actions/login.php:154 actions/otp.php:120
+msgid "Error setting user. You are probably not authorized."
+msgstr ""
+
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
+msgid "Login"
+msgstr "Aanteken"
+
+#: actions/login.php:249
+msgid "Login to site"
+msgstr "Teken aan"
+
+#: actions/login.php:258 actions/register.php:485
+msgid "Remember me"
+msgstr "Onthou my"
+
+#: actions/login.php:259 actions/register.php:487
+msgid "Automatically login in the future; not for shared computers!"
+msgstr ""
+
+#: actions/login.php:269
+msgid "Lost or forgotten password?"
+msgstr "Wagwoord verloor of vergeet?"
+
+#: actions/login.php:288
+msgid ""
+"For security reasons, please re-enter your user name and password before "
+"changing your settings."
+msgstr ""
+
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Verkeerde gebruikersnaam of wagwoord."
+
+#: actions/login.php:295
+#, php-format
+msgid ""
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr ""
+
+#: actions/makeadmin.php:92
+msgid "Only an admin can make another user an admin."
+msgstr ""
+
+#: actions/makeadmin.php:96
+#, php-format
+msgid "%1$s is already an admin for group \"%2$s\"."
+msgstr ""
+
+#: actions/makeadmin.php:133
+#, php-format
+msgid "Can't get membership record for %1$s in group %2$s."
+msgstr ""
+
+#: actions/makeadmin.php:146
+#, php-format
+msgid "Can't make %1$s an admin for group %2$s."
+msgstr ""
+
+#: actions/microsummary.php:69
+#, fuzzy
+msgid "No current status."
+msgstr "Geen huidige status"
+
+#: actions/newapplication.php:52
+msgid "New Application"
+msgstr "Nuwe appplikasie"
+
+#: actions/newapplication.php:64
+msgid "You must be logged in to register an application."
+msgstr ""
+
+#: actions/newapplication.php:143
+msgid "Use this form to register a new application."
+msgstr ""
+
+#: actions/newapplication.php:176
+msgid "Source URL is required."
+msgstr "'n Bron-URL is verpligtend."
+
+#: actions/newapplication.php:258 actions/newapplication.php:267
+msgid "Could not create application."
+msgstr "Dit was nie moontlik om die applikasie te skep nie."
+
+#: actions/newgroup.php:53
+msgid "New group"
+msgstr "Nuwe groep"
+
+#: actions/newgroup.php:110
+msgid "Use this form to create a new group."
+msgstr ""
+
+#: actions/newmessage.php:71 actions/newmessage.php:231
+msgid "New message"
+msgstr "Nuwe boodskap"
+
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
+msgid "You can't send a message to this user."
+msgstr "U kan nie 'n boodskap aan hierdie gebruiker stuur nie."
+
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
+msgid "No content!"
+msgstr "Geen inhoud nie!"
+
+#: actions/newmessage.php:158
+msgid "No recipient specified."
+msgstr "Geen ontvanger gespesifiseer nie."
+
+#: actions/newmessage.php:164 lib/command.php:484
+msgid ""
+"Don't send a message to yourself; just say it to yourself quietly instead."
+msgstr ""
+
+#: actions/newmessage.php:181
+msgid "Message sent"
+msgstr "Boodskap is gestuur."
+
+#: actions/newmessage.php:185
+#, php-format
+msgid "Direct message to %s sent."
+msgstr ""
+
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
+msgid "Ajax Error"
+msgstr "Ajax-fout"
+
+#: actions/newnotice.php:69
+msgid "New notice"
+msgstr ""
+
+#: actions/newnotice.php:217
+msgid "Notice posted"
+msgstr ""
+
+#: actions/noticesearch.php:68
+#, php-format
+msgid ""
+"Search for notices on %%site.name%% by their contents. Separate search terms "
+"by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/noticesearch.php:78
+msgid "Text search"
+msgstr "Teks soektog"
+
+#: actions/noticesearch.php:91
+#, php-format
+msgid "Search results for \"%1$s\" on %2$s"
+msgstr ""
+
+#: actions/noticesearch.php:121
+#, php-format
+msgid ""
+"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearch.php:124
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and be the first to "
+"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearchrss.php:96
+#, php-format
+msgid "Updates with \"%s\""
+msgstr "Opdaterings met \"%s\""
+
+#: actions/noticesearchrss.php:98
+#, php-format
+msgid "Updates matching search term \"%1$s\" on %2$s!"
+msgstr ""
+
+#: actions/nudge.php:85
+msgid ""
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+msgstr ""
+
+#: actions/nudge.php:94
+msgid "Nudge sent"
+msgstr "Die por is gestuur"
+
+#: actions/nudge.php:97
+msgid "Nudge sent!"
+msgstr "Die por is gestuur!"
+
+#: actions/oauthappssettings.php:59
+msgid "You must be logged in to list your applications."
+msgstr ""
+
+#: actions/oauthappssettings.php:74
+msgid "OAuth applications"
+msgstr ""
+
+#: actions/oauthappssettings.php:85
+msgid "Applications you have registered"
+msgstr ""
+
+#: actions/oauthappssettings.php:135
+#, php-format
+msgid "You have not registered any applications yet."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:72
+msgid "Connected applications"
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:83
+msgid "You have allowed the following applications to access you account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:175
+msgid "You are not a user of that application."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:186
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:198
+msgid "You have not authorized any applications to use your account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:211
+msgid "Developers can edit the registration settings for their applications "
+msgstr ""
+
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
+msgstr "Hierdie gebruiker het nie 'n profiel nie."
+
+#: actions/oembed.php:87 actions/shownotice.php:175
+#, php-format
+msgid "%1$s's status on %2$s"
+msgstr "Status van %1$s op %2$s"
+
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr ""
+
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
+
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
+msgid "Not a supported data format."
+msgstr ""
+
+#: actions/opensearch.php:64
+msgid "People Search"
+msgstr "Mense soek"
+
+#: actions/opensearch.php:67
+msgid "Notice Search"
+msgstr ""
+
+#: actions/othersettings.php:60
+msgid "Other settings"
+msgstr ""
+
+#: actions/othersettings.php:71
+msgid "Manage various other options."
+msgstr ""
+
+#: actions/othersettings.php:108
+msgid " (free service)"
+msgstr "(gratis diens)"
+
+#: actions/othersettings.php:116
+msgid "Shorten URLs with"
+msgstr ""
+
+#: actions/othersettings.php:117
+msgid "Automatic shortening service to use."
+msgstr ""
+
+#: actions/othersettings.php:122
+msgid "View profile designs"
+msgstr ""
+
+#: actions/othersettings.php:123
+msgid "Show or hide profile designs."
+msgstr ""
+
+#: actions/othersettings.php:153
+msgid "URL shortening service is too long (max 50 chars)."
+msgstr ""
+
+#: actions/otp.php:69
+msgid "No user ID specified."
+msgstr ""
+
+#: actions/otp.php:83
+msgid "No login token specified."
+msgstr ""
+
+#: actions/otp.php:90
+msgid "No login token requested."
+msgstr ""
+
+#: actions/otp.php:95
+msgid "Invalid login token specified."
+msgstr ""
+
+#: actions/otp.php:104
+msgid "Login token expired."
+msgstr ""
+
+#: actions/outbox.php:58
+#, php-format
+msgid "Outbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/outbox.php:61
+#, php-format
+msgid "Outbox for %s"
+msgstr ""
+
+#: actions/outbox.php:116
+msgid "This is your outbox, which lists private messages you have sent."
+msgstr ""
+
+#: actions/passwordsettings.php:58
+msgid "Change password"
+msgstr "Verander wagwoord"
+
+#: actions/passwordsettings.php:69
+msgid "Change your password."
+msgstr "Verander u wagwoord."
+
+#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+msgid "Password change"
+msgstr "Verander wagwoord"
+
+#: actions/passwordsettings.php:104
+msgid "Old password"
+msgstr "Ou wagwoord"
+
+#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+msgid "New password"
+msgstr "Nuwe wagwoord"
+
+#: actions/passwordsettings.php:109
+msgid "6 or more characters"
+msgstr "6 of meer karakters"
+
+#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
+#: actions/register.php:440
+msgid "Confirm"
+msgstr "Bevestig"
+
+#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
+msgid "Same as password above"
+msgstr "Dieselfde as wagwoord hierbo"
+
+#: actions/passwordsettings.php:117
+msgid "Change"
+msgstr "Wysig"
+
+#: actions/passwordsettings.php:154 actions/register.php:237
+msgid "Password must be 6 or more characters."
+msgstr "Wagwoord moet 6 of meer karakters bevat."
+
+#: actions/passwordsettings.php:157 actions/register.php:240
+msgid "Passwords don't match."
+msgstr "Wagwoorde is nie dieselfde nie."
+
+#: actions/passwordsettings.php:165
+msgid "Incorrect old password"
+msgstr "Verkeerde ou wagwoord"
+
+#: actions/passwordsettings.php:181
+msgid "Error saving user; invalid."
+msgstr "Fout tydens stoor van gebruiker; ongeldig."
+
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
+msgid "Can't save new password."
+msgstr "Kon nie nuwe wagwoord stoor nie."
+
+#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+msgid "Password saved."
+msgstr "Wagwoord gestoor."
+
+#. TRANS: Menu item for site administration
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
+msgid "Paths"
+msgstr "Paaie"
+
+#: actions/pathsadminpanel.php:70
+msgid "Path and server settings for this StatusNet site."
+msgstr ""
+
+#: actions/pathsadminpanel.php:157
+#, fuzzy, php-format
+msgid "Theme directory not readable: %s."
+msgstr "Tema is nie beskikbaar nie: %s"
+
+#: actions/pathsadminpanel.php:163
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Avatar-gids"
+
+#: actions/pathsadminpanel.php:169
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Agtergrond-gids"
+
+#: actions/pathsadminpanel.php:177
+#, php-format
+msgid "Locales directory not readable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:183
+msgid "Invalid SSL server. The maximum length is 255 characters."
+msgstr ""
+
+#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+msgid "Site"
+msgstr "Webtuiste"
+
+#: actions/pathsadminpanel.php:238
+msgid "Server"
+msgstr "Bediener"
+
+#: actions/pathsadminpanel.php:238
+msgid "Site's server hostname."
+msgstr ""
+
+#: actions/pathsadminpanel.php:242
+msgid "Path"
+msgstr "Pad"
+
+#: actions/pathsadminpanel.php:242
+msgid "Site path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Directory path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:250
+msgid "Fancy URLs"
+msgstr ""
+
+#: actions/pathsadminpanel.php:252
+msgid "Use fancy (more readable and memorable) URLs?"
+msgstr ""
+
+#: actions/pathsadminpanel.php:259
+msgid "Theme"
+msgstr "Tema"
+
+#: actions/pathsadminpanel.php:264
+msgid "Theme server"
+msgstr "Tema-bediener"
+
+#: actions/pathsadminpanel.php:268
+msgid "Theme path"
+msgstr "Tema-pad"
+
+#: actions/pathsadminpanel.php:272
+msgid "Theme directory"
+msgstr "Tema-gids"
+
+#: actions/pathsadminpanel.php:279
+msgid "Avatars"
+msgstr "Avatars"
+
+#: actions/pathsadminpanel.php:284
+msgid "Avatar server"
+msgstr "Avatar-bediener"
+
+#: actions/pathsadminpanel.php:288
+msgid "Avatar path"
+msgstr "Avatar-pad"
+
+#: actions/pathsadminpanel.php:292
+msgid "Avatar directory"
+msgstr "Avatar-gids"
+
+#: actions/pathsadminpanel.php:301
+msgid "Backgrounds"
+msgstr "Agtergronde"
+
+#: actions/pathsadminpanel.php:305
+msgid "Background server"
+msgstr "Agtergrond-bediener"
+
+#: actions/pathsadminpanel.php:309
+msgid "Background path"
+msgstr "Agtergrond-pad"
+
+#: actions/pathsadminpanel.php:313
+msgid "Background directory"
+msgstr "Agtergrond-gids"
+
+#: actions/pathsadminpanel.php:320
+msgid "SSL"
+msgstr "SSL"
+
+#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+msgid "Never"
+msgstr "Nooit"
+
+#: actions/pathsadminpanel.php:324
+msgid "Sometimes"
+msgstr "Soms"
+
+#: actions/pathsadminpanel.php:325
+msgid "Always"
+msgstr "Altyd"
+
+#: actions/pathsadminpanel.php:329
+msgid "Use SSL"
+msgstr "Gebruik SSL"
+
+#: actions/pathsadminpanel.php:330
+msgid "When to use SSL"
+msgstr "Wanneer SSL gebruik moet word"
+
+#: actions/pathsadminpanel.php:335
+msgid "SSL server"
+msgstr "SSL-bediener"
+
+#: actions/pathsadminpanel.php:336
+msgid "Server to direct SSL requests to"
+msgstr ""
+
+#: actions/pathsadminpanel.php:352
+msgid "Save paths"
+msgstr ""
+
+#: actions/peoplesearch.php:52
+#, php-format
+msgid ""
+"Search for people on %%site.name%% by their name, location, or interests. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/peoplesearch.php:58
+msgid "People search"
+msgstr "Soek gebruikers"
+
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
+msgstr "Nie 'n geldige e-posadres nie."
+
+#: actions/peopletag.php:142
+#, php-format
+msgid "Users self-tagged with %1$s - page %2$d"
+msgstr ""
+
+#: actions/postnotice.php:95
+#, fuzzy
+msgid "Invalid notice content."
+msgstr "Ongeldige token."
+
+#: actions/postnotice.php:101
+#, php-format
+msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#: actions/profilesettings.php:60
+msgid "Profile settings"
+msgstr ""
+
+#: actions/profilesettings.php:71
+msgid ""
+"You can update your personal profile info here so people know more about you."
+msgstr ""
+
+#: actions/profilesettings.php:99
+msgid "Profile information"
+msgstr ""
+
+#: actions/profilesettings.php:108 lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr ""
+
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
+msgid "Full name"
+msgstr "Volledige naam"
+
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
+msgid "Homepage"
+msgstr "Tuisblad"
+
+#: actions/profilesettings.php:117 actions/register.php:462
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr ""
+
+#: actions/profilesettings.php:122 actions/register.php:468
+#, php-format
+msgid "Describe yourself and your interests in %d chars"
+msgstr ""
+
+#: actions/profilesettings.php:125 actions/register.php:471
+msgid "Describe yourself and your interests"
+msgstr ""
+
+#: actions/profilesettings.php:127 actions/register.php:473
+msgid "Bio"
+msgstr "Bio"
+
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:177
+#: lib/userprofile.php:165
+msgid "Location"
+msgstr "Ligging"
+
+#: actions/profilesettings.php:134 actions/register.php:480
+msgid "Where you are, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: actions/profilesettings.php:138
+msgid "Share my current location when posting notices"
+msgstr ""
+
+#: actions/profilesettings.php:145 actions/tagother.php:149
+#: actions/tagother.php:209 lib/subscriptionlist.php:106
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+msgid "Tags"
+msgstr "Etikette"
+
+#: actions/profilesettings.php:147
+msgid ""
+"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
+msgstr ""
+
+#: actions/profilesettings.php:151
+msgid "Language"
+msgstr "Taal"
+
+#: actions/profilesettings.php:152
+msgid "Preferred language"
+msgstr ""
+
+#: actions/profilesettings.php:161
+msgid "Timezone"
+msgstr "Tydsone"
+
+#: actions/profilesettings.php:162
+msgid "What timezone are you normally in?"
+msgstr ""
+
+#: actions/profilesettings.php:167
+msgid ""
+"Automatically subscribe to whoever subscribes to me (best for non-humans)"
+msgstr ""
+
+#: actions/profilesettings.php:228 actions/register.php:230
+#, php-format
+msgid "Bio is too long (max %d chars)."
+msgstr ""
+
+#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+msgid "Timezone not selected."
+msgstr ""
+
+#: actions/profilesettings.php:241
+msgid "Language is too long (max 50 chars)."
+msgstr ""
+
+#: actions/profilesettings.php:253 actions/tagother.php:178
+#, php-format
+msgid "Invalid tag: \"%s\""
+msgstr "Ongeldige etiket: \"$s\""
+
+#: actions/profilesettings.php:306
+msgid "Couldn't update user for autosubscribe."
+msgstr ""
+
+#: actions/profilesettings.php:363
+msgid "Couldn't save location prefs."
+msgstr ""
+
+#: actions/profilesettings.php:375
+msgid "Couldn't save profile."
+msgstr ""
+
+#: actions/profilesettings.php:383
+msgid "Couldn't save tags."
+msgstr ""
+
+#. TRANS: Message after successful saving of administrative settings.
+#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
+msgid "Settings saved."
+msgstr "Voorkeure is gestoor."
+
+#: actions/public.php:83
+#, php-format
+msgid "Beyond the page limit (%s)."
+msgstr ""
+
+#: actions/public.php:92
+msgid "Could not retrieve public stream."
+msgstr ""
+
+#: actions/public.php:130
+#, php-format
+msgid "Public timeline, page %d"
+msgstr ""
+
+#: actions/public.php:132 lib/publicgroupnav.php:79
+msgid "Public timeline"
+msgstr ""
+
+#: actions/public.php:160
+msgid "Public Stream Feed (RSS 1.0)"
+msgstr ""
+
+#: actions/public.php:164
+msgid "Public Stream Feed (RSS 2.0)"
+msgstr ""
+
+#: actions/public.php:168
+msgid "Public Stream Feed (Atom)"
+msgstr ""
+
+#: actions/public.php:188
+#, php-format
+msgid ""
+"This is the public timeline for %%site.name%% but no one has posted anything "
+"yet."
+msgstr ""
+
+#: actions/public.php:191
+msgid "Be the first to post!"
+msgstr "U kan die eerste een wees om 'n boodskap te plaas!"
+
+#: actions/public.php:195
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post!"
+msgstr ""
+
+#: actions/public.php:242
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool. [Join now](%%action.register%%) to share notices about yourself with "
+"friends, family, and colleagues! ([Read more](%%doc.help%%))"
+msgstr ""
+
+#: actions/public.php:247
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool."
+msgstr ""
+
+#: actions/publictagcloud.php:57
+msgid "Public tag cloud"
+msgstr ""
+
+#: actions/publictagcloud.php:63
+#, php-format
+msgid "These are most popular recent tags on %s "
+msgstr ""
+
+#: actions/publictagcloud.php:69
+#, php-format
+msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
+msgstr ""
+
+#: actions/publictagcloud.php:72
+msgid "Be the first to post one!"
+msgstr ""
+
+#: actions/publictagcloud.php:75
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post "
+"one!"
+msgstr ""
+
+#: actions/publictagcloud.php:134
+msgid "Tag cloud"
+msgstr ""
+
+#: actions/recoverpassword.php:36
+msgid "You are already logged in!"
+msgstr ""
+
+#: actions/recoverpassword.php:62
+msgid "No such recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:66
+msgid "Not a recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:73
+msgid "Recovery code for unknown user."
+msgstr ""
+
+#: actions/recoverpassword.php:86
+msgid "Error with confirmation code."
+msgstr ""
+
+#: actions/recoverpassword.php:97
+msgid "This confirmation code is too old. Please start again."
+msgstr ""
+
+#: actions/recoverpassword.php:111
+msgid "Could not update user with confirmed email address."
+msgstr ""
+
+#: actions/recoverpassword.php:152
+msgid ""
+"If you have forgotten or lost your password, you can get a new one sent to "
+"the email address you have stored in your account."
+msgstr ""
+
+#: actions/recoverpassword.php:158
+msgid "You have been identified. Enter a new password below. "
+msgstr ""
+
+#: actions/recoverpassword.php:188
+msgid "Password recovery"
+msgstr ""
+
+#: actions/recoverpassword.php:191
+msgid "Nickname or email address"
+msgstr ""
+
+#: actions/recoverpassword.php:193
+msgid "Your nickname on this server, or your registered email address."
+msgstr ""
+
+#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
+msgid "Recover"
+msgstr ""
+
+#: actions/recoverpassword.php:208
+msgid "Reset password"
+msgstr ""
+
+#: actions/recoverpassword.php:209
+msgid "Recover password"
+msgstr ""
+
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
+msgid "Password recovery requested"
+msgstr ""
+
+#: actions/recoverpassword.php:213
+msgid "Unknown action"
+msgstr "Onbekende aksie"
+
+#: actions/recoverpassword.php:236
+msgid "6 or more characters, and don't forget it!"
+msgstr ""
+
+#: actions/recoverpassword.php:243
+msgid "Reset"
+msgstr "Herstel"
+
+#: actions/recoverpassword.php:252
+msgid "Enter a nickname or email address."
+msgstr ""
+
+#: actions/recoverpassword.php:282
+msgid "No user with that email address or username."
+msgstr ""
+
+#: actions/recoverpassword.php:299
+msgid "No registered email address for that user."
+msgstr ""
+
+#: actions/recoverpassword.php:313
+msgid "Error saving address confirmation."
+msgstr ""
+
+#: actions/recoverpassword.php:338
+msgid ""
+"Instructions for recovering your password have been sent to the email "
+"address registered to your account."
+msgstr ""
+
+#: actions/recoverpassword.php:357
+msgid "Unexpected password reset."
+msgstr ""
+
+#: actions/recoverpassword.php:365
+msgid "Password must be 6 chars or more."
+msgstr ""
+
+#: actions/recoverpassword.php:369
+msgid "Password and confirmation do not match."
+msgstr ""
+
+#: actions/recoverpassword.php:388 actions/register.php:255
+msgid "Error setting user."
+msgstr ""
+
+#: actions/recoverpassword.php:395
+msgid "New password successfully saved. You are now logged in."
+msgstr ""
+
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+msgid "Sorry, only invited people can register."
+msgstr ""
+
+#: actions/register.php:99
+msgid "Sorry, invalid invitation code."
+msgstr ""
+
+#: actions/register.php:119
+msgid "Registration successful"
+msgstr "Die registrasie is voltooi"
+
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+msgid "Register"
+msgstr "Registreer"
+
+#: actions/register.php:142
+msgid "Registration not allowed."
+msgstr "Registrasie nie toegelaat nie."
+
+#: actions/register.php:205
+msgid "You can't register if you don't agree to the license."
+msgstr ""
+
+#: actions/register.php:219
+msgid "Email address already exists."
+msgstr "Die E-posadres bestaan reeds."
+
+#: actions/register.php:250 actions/register.php:272
+msgid "Invalid username or password."
+msgstr "Ongeldige gebruikersnaam of wagwoord."
+
+#: actions/register.php:350
+msgid ""
+"With this form you can create a new account. You can then post notices and "
+"link up to friends and colleagues. "
+msgstr ""
+
+#: actions/register.php:432
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
+msgstr ""
+
+#: actions/register.php:437
+msgid "6 or more characters. Required."
+msgstr ""
+
+#: actions/register.php:441
+msgid "Same as password above. Required."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
+msgid "Email"
+msgstr "E-pos"
+
+#: actions/register.php:446 actions/register.php:450
+msgid "Used only for updates, announcements, and password recovery"
+msgstr ""
+
+#: actions/register.php:457
+msgid "Longer name, preferably your \"real\" name"
+msgstr ""
+
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
+msgid ""
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
+msgstr ""
+
+#: actions/register.php:583
+#, php-format
+msgid ""
+"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
+"want to...\n"
+"\n"
+"* Go to [your profile](%2$s) and post your first message.\n"
+"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send "
+"notices through instant messages.\n"
+"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that "
+"share your interests. \n"
+"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell "
+"others more about you. \n"
+"* Read over the [online docs](%%%%doc.help%%%%) for features you may have "
+"missed. \n"
+"\n"
+"Thanks for signing up and we hope you enjoy using this service."
+msgstr ""
+
+#: actions/register.php:607
+msgid ""
+"(You should receive a message by email momentarily, with instructions on how "
+"to confirm your email address.)"
+msgstr ""
+
+#: actions/remotesubscribe.php:98
+#, php-format
+msgid ""
+"To subscribe, you can [login](%%action.login%%), or [register](%%action."
+"register%%) a new account. If you already have an account on a [compatible "
+"microblogging site](%%doc.openmublog%%), enter your profile URL below."
+msgstr ""
+
+#: actions/remotesubscribe.php:112
+msgid "Remote subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:124
+msgid "Subscribe to a remote user"
+msgstr ""
+
+#: actions/remotesubscribe.php:129
+msgid "User nickname"
+msgstr ""
+
+#: actions/remotesubscribe.php:130
+msgid "Nickname of the user you want to follow"
+msgstr ""
+
+#: actions/remotesubscribe.php:133
+msgid "Profile URL"
+msgstr ""
+
+#: actions/remotesubscribe.php:134
+msgid "URL of your profile on another compatible microblogging service"
+msgstr ""
+
+#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
+#: lib/userprofile.php:406
+msgid "Subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:159
+msgid "Invalid profile URL (bad format)"
+msgstr ""
+
+#: actions/remotesubscribe.php:168
+msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
+msgstr ""
+
+#: actions/remotesubscribe.php:176
+msgid "That’s a local profile! Login to subscribe."
+msgstr ""
+
+#: actions/remotesubscribe.php:183
+msgid "Couldn’t get a request token."
+msgstr ""
+
+#: actions/repeat.php:57
+msgid "Only logged-in users can repeat notices."
+msgstr ""
+
+#: actions/repeat.php:64 actions/repeat.php:71
+msgid "No notice specified."
+msgstr ""
+
+#: actions/repeat.php:76
+msgid "You can't repeat your own notice."
+msgstr ""
+
+#: actions/repeat.php:90
+msgid "You already repeated that notice."
+msgstr ""
+
+#: actions/repeat.php:114 lib/noticelist.php:675
+msgid "Repeated"
+msgstr "Herhalend"
+
+#: actions/repeat.php:119
+msgid "Repeated!"
+msgstr "Herhaal!"
+
+#: actions/replies.php:126 actions/repliesrss.php:68
+#: lib/personalgroupnav.php:105
+#, php-format
+msgid "Replies to %s"
+msgstr ""
+
+#: actions/replies.php:128
+#, php-format
+msgid "Replies to %1$s, page %2$d"
+msgstr ""
+
+#: actions/replies.php:145
+#, php-format
+msgid "Replies feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/replies.php:152
+#, php-format
+msgid "Replies feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/replies.php:159
+#, php-format
+msgid "Replies feed for %s (Atom)"
+msgstr ""
+
+#: actions/replies.php:199
+#, fuzzy, php-format
+msgid ""
+"This is the timeline showing replies to %1$s but %2$s hasn't received a "
+"notice to them yet."
+msgstr ""
+"Hierdie is die tydslyn vir %s en vriende, maar niemand het nog iets gepos "
+"nie."
+
+#: actions/replies.php:204
+#, php-format
+msgid ""
+"You can engage other users in a conversation, subscribe to more people or "
+"[join groups](%%action.groups%%)."
+msgstr ""
+
+#: actions/replies.php:206
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/repliesrss.php:72
+#, php-format
+msgid "Replies to %1$s on %2$s!"
+msgstr ""
+
+#: actions/revokerole.php:75
+msgid "You cannot revoke user roles on this site."
+msgstr ""
+
+#: actions/revokerole.php:82
+msgid "User doesn't have this role."
+msgstr ""
+
+#: actions/rsd.php:146 actions/version.php:159
+msgid "StatusNet"
+msgstr "StatusNet"
+
+#: actions/sandbox.php:65 actions/unsandbox.php:65
+msgid "You cannot sandbox users on this site."
+msgstr ""
+
+#: actions/sandbox.php:72
+msgid "User is already sandboxed."
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
+#: lib/adminpanelaction.php:392
+msgid "Sessions"
+msgstr "Sessies"
+
+#: actions/sessionsadminpanel.php:65
+msgid "Session settings for this StatusNet site."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:175
+msgid "Handle sessions"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:177
+msgid "Whether to handle sessions ourselves."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:181
+msgid "Session debugging"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:183
+msgid "Turn on debugging output for sessions."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/useradminpanel.php:294
+msgid "Save site settings"
+msgstr ""
+
+#: actions/showapplication.php:82
+msgid "You must be logged in to view an application."
+msgstr ""
+
+#: actions/showapplication.php:157
+msgid "Application profile"
+msgstr ""
+
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
+msgid "Icon"
+msgstr "Ikoon"
+
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
+msgid "Name"
+msgstr "Naam"
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
+msgid "Organization"
+msgstr "Organisasie"
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
+msgid "Description"
+msgstr "Beskrywing"
+
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
+msgid "Statistics"
+msgstr "Statistieke"
+
+#: actions/showapplication.php:203
+#, php-format
+msgid "Created by %1$s - %2$s access by default - %3$d users"
+msgstr ""
+
+#: actions/showapplication.php:213
+msgid "Application actions"
+msgstr ""
+
+#: actions/showapplication.php:236
+msgid "Reset key & secret"
+msgstr ""
+
+#: actions/showapplication.php:261
+msgid "Application info"
+msgstr ""
+
+#: actions/showapplication.php:263
+msgid "Consumer key"
+msgstr ""
+
+#: actions/showapplication.php:268
+msgid "Consumer secret"
+msgstr ""
+
+#: actions/showapplication.php:273
+msgid "Request token URL"
+msgstr ""
+
+#: actions/showapplication.php:278
+msgid "Access token URL"
+msgstr ""
+
+#: actions/showapplication.php:283
+msgid "Authorize URL"
+msgstr ""
+
+#: actions/showapplication.php:288
+msgid ""
+"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
+"signature method."
+msgstr ""
+
+#: actions/showapplication.php:309
+msgid "Are you sure you want to reset your consumer key and secret?"
+msgstr ""
+
+#: actions/showfavorites.php:79
+#, php-format
+msgid "%1$s's favorite notices, page %2$d"
+msgstr ""
+
+#: actions/showfavorites.php:132
+msgid "Could not retrieve favorite notices."
+msgstr ""
+
+#: actions/showfavorites.php:171
+#, php-format
+msgid "Feed for favorites of %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showfavorites.php:178
+#, php-format
+msgid "Feed for favorites of %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showfavorites.php:185
+#, php-format
+msgid "Feed for favorites of %s (Atom)"
+msgstr ""
+
+#: actions/showfavorites.php:206
+msgid ""
+"You haven't chosen any favorite notices yet. Click the fave button on "
+"notices you like to bookmark them for later or shed a spotlight on them."
+msgstr ""
+
+#: actions/showfavorites.php:208
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:212
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:243
+msgid "This is a way to share what you like."
+msgstr ""
+
+#: actions/showgroup.php:82 lib/groupnav.php:86
+#, php-format
+msgid "%s group"
+msgstr "%s groep"
+
+#: actions/showgroup.php:84
+#, php-format
+msgid "%1$s group, page %2$d"
+msgstr "Groep %1$s, bladsy %2$d"
+
+#: actions/showgroup.php:227
+msgid "Group profile"
+msgstr "Groepsprofiel"
+
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
+msgid "URL"
+msgstr "URL"
+
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
+msgid "Note"
+msgstr "Nota"
+
+#: actions/showgroup.php:293 lib/groupeditform.php:184
+msgid "Aliases"
+msgstr "Aliasse"
+
+#: actions/showgroup.php:302
+msgid "Group actions"
+msgstr "Groepsaksies"
+
+#: actions/showgroup.php:338
+#, php-format
+msgid "Notice feed for %s group (RSS 1.0)"
+msgstr ""
+
+#: actions/showgroup.php:344
+#, php-format
+msgid "Notice feed for %s group (RSS 2.0)"
+msgstr ""
+
+#: actions/showgroup.php:350
+#, php-format
+msgid "Notice feed for %s group (Atom)"
+msgstr ""
+
+#: actions/showgroup.php:355
+#, php-format
+msgid "FOAF for %s group"
+msgstr "Vriend van 'n vriend vir die groep %s"
+
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
+msgid "Members"
+msgstr "Lede"
+
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
+msgid "(None)"
+msgstr "(geen)"
+
+#: actions/showgroup.php:404
+msgid "All members"
+msgstr "Alle lede"
+
+#: actions/showgroup.php:439
+msgid "Created"
+msgstr "Geskep"
+
+#: actions/showgroup.php:455
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. [Join now](%%%%action.register%%%%) to become part "
+"of this group and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showgroup.php:461
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. "
+msgstr ""
+
+#: actions/showgroup.php:489
+msgid "Admins"
+msgstr "Administrateurs"
+
+#: actions/showmessage.php:81
+msgid "No such message."
+msgstr "Die boodskap bestaan nie."
+
+#: actions/showmessage.php:98
+msgid "Only the sender and recipient may read this message."
+msgstr ""
+
+#: actions/showmessage.php:108
+#, php-format
+msgid "Message to %1$s on %2$s"
+msgstr ""
+
+#: actions/showmessage.php:113
+#, php-format
+msgid "Message from %1$s on %2$s"
+msgstr ""
+
+#: actions/shownotice.php:90
+msgid "Notice deleted."
+msgstr "Hierdie kennisgewing is verwyder."
+
+#: actions/showstream.php:73
+#, php-format
+msgid " tagged %s"
+msgstr "met die etiket %s"
+
+#: actions/showstream.php:79
+#, php-format
+msgid "%1$s, page %2$d"
+msgstr "%1$s, bladsy %2$d"
+
+#: actions/showstream.php:122
+#, php-format
+msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:129
+#, php-format
+msgid "Notice feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:136
+#, php-format
+msgid "Notice feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showstream.php:143
+#, php-format
+msgid "Notice feed for %s (Atom)"
+msgstr ""
+
+#: actions/showstream.php:148
+#, php-format
+msgid "FOAF for %s"
+msgstr "Vriend van 'n vriend (FOAF) vir %s"
+
+#: actions/showstream.php:200
+#, php-format
+msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+msgstr ""
+
+#: actions/showstream.php:205
+msgid ""
+"Seen anything interesting recently? You haven't posted any notices yet, now "
+"would be a good time to start :)"
+msgstr ""
+
+#: actions/showstream.php:207
+#, php-format
+msgid ""
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
+msgstr ""
+
+#: actions/showstream.php:243
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
+"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showstream.php:248
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. "
+msgstr ""
+
+#: actions/showstream.php:305
+#, php-format
+msgid "Repeat of %s"
+msgstr "Herhaling van %s"
+
+#: actions/silence.php:65 actions/unsilence.php:65
+msgid "You cannot silence users on this site."
+msgstr "Jy kan nie gebruikers op hierdie webwerf stilmaak nie."
+
+#: actions/silence.php:72
+msgid "User is already silenced."
+msgstr "Hierdie gebruiker is reeds stilgemaak."
+
+#: actions/siteadminpanel.php:69
+msgid "Basic settings for this StatusNet site"
+msgstr ""
+
+#: actions/siteadminpanel.php:133
+msgid "Site name must have non-zero length."
+msgstr ""
+
+#: actions/siteadminpanel.php:141
+msgid "You must have a valid contact email address."
+msgstr ""
+
+#: actions/siteadminpanel.php:159
+#, php-format
+msgid "Unknown language \"%s\"."
+msgstr "Onbekende taal \"%s\"."
+
+#: actions/siteadminpanel.php:165
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr ""
+
+#: actions/siteadminpanel.php:171
+msgid "Dupe limit must be one or more seconds."
+msgstr ""
+
+#: actions/siteadminpanel.php:221
+msgid "General"
+msgstr "Algemeen"
+
+#: actions/siteadminpanel.php:224
+msgid "Site name"
+msgstr ""
+
+#: actions/siteadminpanel.php:225
+msgid "The name of your site, like \"Yourcompany Microblog\""
+msgstr ""
+
+#: actions/siteadminpanel.php:229
+msgid "Brought by"
+msgstr ""
+
+#: actions/siteadminpanel.php:230
+msgid "Text used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:234
+msgid "Brought by URL"
+msgstr ""
+
+#: actions/siteadminpanel.php:235
+msgid "URL used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:239
+msgid "Contact email address for your site"
+msgstr ""
+
+#: actions/siteadminpanel.php:245
+msgid "Local"
+msgstr "Lokaal"
+
+#: actions/siteadminpanel.php:256
+msgid "Default timezone"
+msgstr "Standaardtydsone"
+
+#: actions/siteadminpanel.php:257
+msgid "Default timezone for the site; usually UTC."
+msgstr ""
+
+#: actions/siteadminpanel.php:262
+msgid "Default language"
+msgstr ""
+
+#: actions/siteadminpanel.php:263
+msgid "Site language when autodetection from browser settings is not available"
+msgstr ""
+
+#: actions/siteadminpanel.php:271
+msgid "Limits"
+msgstr "Limiete"
+
+#: actions/siteadminpanel.php:274
+msgid "Text limit"
+msgstr "Tekslimiet"
+
+#: actions/siteadminpanel.php:274
+msgid "Maximum number of characters for notices."
+msgstr "Maksimum aantal karakters vir kennisgewings."
+
+#: actions/siteadminpanel.php:278
+msgid "Dupe limit"
+msgstr "Duplikaatlimiet"
+
+#: actions/siteadminpanel.php:278
+msgid "How long users must wait (in seconds) to post the same thing again."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:56
+msgid "Site Notice"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:67
+msgid "Edit site-wide message"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:103
+msgid "Unable to save site notice."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:113
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:176
+msgid "Site notice text"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:178
+msgid "Site-wide notice text (255 chars max; HTML okay)"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:198
+msgid "Save site notice"
+msgstr ""
+
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
+msgid "SMS settings"
+msgstr "SMS-instellings"
+
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
+#, php-format
+msgid "You can receive SMS messages through email from %%site.name%%."
+msgstr ""
+
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
+msgid "SMS is not available."
+msgstr ""
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IP-adres"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
+msgid "Current confirmed SMS-enabled phone number."
+msgstr ""
+
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
+msgid "Awaiting confirmation on this phone number."
+msgstr ""
+
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
+msgid "Confirmation code"
+msgstr ""
+
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
+msgid "Enter the code you received on your phone."
+msgstr ""
+
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Bevestig"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
+msgid "SMS phone number"
+msgstr "SMS-nommer"
+
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
+msgid "Phone number, no punctuation or spaces, with area code"
+msgstr ""
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Voorkeure"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
+msgid ""
+"Send me notices through SMS; I understand I may incur exorbitant charges "
+"from my carrier."
+msgstr ""
+
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Voorkeure is gestoor."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
+msgid "No phone number."
+msgstr "Geen telefoonnommer."
+
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
+msgid "No carrier selected."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
+msgid "That is already your phone number."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
+msgid "That phone number already belongs to another user."
+msgstr ""
+
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
+msgid ""
+"A confirmation code was sent to the phone number you added. Check your phone "
+"for the code and instructions on how to use it."
+msgstr ""
+
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
+msgid "That is the wrong confirmation number."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Bevestiging gekanselleer."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
+msgid "That is not your phone number."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS-nommer"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
+msgid "Mobile carrier"
+msgstr ""
+
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
+msgid "Select a carrier"
+msgstr ""
+
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
+#, php-format
+msgid ""
+"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
+"email but isn't listed here, send email to let us know at %s."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
+msgid "No code entered"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
+#: lib/adminpanelaction.php:408
+msgid "Snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:65
+msgid "Manage snapshot configuration"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:127
+msgid "Invalid snapshot run value."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:133
+msgid "Snapshot frequency must be a number."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:144
+msgid "Invalid snapshot report URL."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:200
+msgid "Randomly during web hit"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:201
+msgid "In a scheduled job"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:206
+msgid "Data snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:208
+msgid "When to send statistical data to status.net servers"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:217
+msgid "Frequency"
+msgstr "Frekwensie"
+
+#: actions/snapshotadminpanel.php:218
+msgid "Snapshots will be sent once every N web hits"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:226
+msgid "Report URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:227
+msgid "Snapshots will be sent to this URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:248
+msgid "Save snapshot settings"
+msgstr ""
+
+#: actions/subedit.php:70
+msgid "You are not subscribed to that profile."
+msgstr ""
+
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
+msgid "Could not save subscription."
+msgstr ""
+
+#: actions/subscribe.php:77
+msgid "This action only accepts POST requests."
+msgstr ""
+
+#: actions/subscribe.php:107
+msgid "No such profile."
+msgstr ""
+
+#: actions/subscribe.php:117
+msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
+msgstr ""
+
+#: actions/subscribe.php:145
+msgid "Subscribed"
+msgstr ""
+
+#: actions/subscribers.php:50
+#, php-format
+msgid "%s subscribers"
+msgstr ""
+
+#: actions/subscribers.php:52
+#, php-format
+msgid "%1$s subscribers, page %2$d"
+msgstr ""
+
+#: actions/subscribers.php:63
+msgid "These are the people who listen to your notices."
+msgstr ""
+
+#: actions/subscribers.php:67
+#, php-format
+msgid "These are the people who listen to %s's notices."
+msgstr ""
+
+#: actions/subscribers.php:108
+msgid ""
+"You have no subscribers. Try subscribing to people you know and they might "
+"return the favor"
+msgstr ""
+
+#: actions/subscribers.php:110
+#, php-format
+msgid "%s has no subscribers. Want to be the first?"
+msgstr ""
+
+#: actions/subscribers.php:114
+#, php-format
+msgid ""
+"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
+"%) and be the first?"
+msgstr ""
+
+#: actions/subscriptions.php:52
+#, php-format
+msgid "%s subscriptions"
+msgstr ""
+
+#: actions/subscriptions.php:54
+#, php-format
+msgid "%1$s subscriptions, page %2$d"
+msgstr ""
+
+#: actions/subscriptions.php:65
+msgid "These are the people whose notices you listen to."
+msgstr ""
+
+#: actions/subscriptions.php:69
+#, php-format
+msgid "These are the people whose notices %s listens to."
+msgstr ""
+
+#: actions/subscriptions.php:126
+#, php-format
+msgid ""
+"You're not listening to anyone's notices right now, try subscribing to "
+"people you know. Try [people search](%%action.peoplesearch%%), look for "
+"members in groups you're interested in and in our [featured users](%%action."
+"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
+"automatically subscribe to people you already follow there."
+msgstr ""
+
+#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#, php-format
+msgid "%s is not listening to anyone."
+msgstr "%s volg niemand nie."
+
+#: actions/subscriptions.php:208
+msgid "Jabber"
+msgstr "Jabber"
+
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
+msgid "SMS"
+msgstr "SMS"
+
+#: actions/tag.php:69
+#, php-format
+msgid "Notices tagged with %1$s, page %2$d"
+msgstr ""
+
+#: actions/tag.php:87
+#, php-format
+msgid "Notice feed for tag %s (RSS 1.0)"
+msgstr ""
+
+#: actions/tag.php:93
+#, php-format
+msgid "Notice feed for tag %s (RSS 2.0)"
+msgstr ""
+
+#: actions/tag.php:99
+#, php-format
+msgid "Notice feed for tag %s (Atom)"
+msgstr ""
+
+#: actions/tagother.php:39
+msgid "No ID argument."
+msgstr "Geen ID-argument."
+
+#: actions/tagother.php:65
+#, php-format
+msgid "Tag %s"
+msgstr "Etiket $s"
+
+#: actions/tagother.php:77 lib/userprofile.php:76
+msgid "User profile"
+msgstr "Gebruikersprofiel"
+
+#: actions/tagother.php:81 actions/userauthorization.php:132
+#: lib/userprofile.php:103
+msgid "Photo"
+msgstr "Foto"
+
+#: actions/tagother.php:141
+msgid "Tag user"
+msgstr "Etiketteer gebruiker"
+
+#: actions/tagother.php:151
+msgid ""
+"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
+"separated"
+msgstr ""
+
+#: actions/tagother.php:193
+msgid ""
+"You can only tag people you are subscribed to or who are subscribed to you."
+msgstr ""
+
+#: actions/tagother.php:200
+msgid "Could not save tags."
+msgstr ""
+
+#: actions/tagother.php:236
+msgid "Use this form to add tags to your subscribers or subscriptions."
+msgstr ""
+
+#: actions/tagrss.php:35
+msgid "No such tag."
+msgstr "Onbekende etiket."
+
+#: actions/unblock.php:59
+msgid "You haven't blocked that user."
+msgstr ""
+
+#: actions/unsandbox.php:72
+msgid "User is not sandboxed."
+msgstr ""
+
+#: actions/unsilence.php:72
+msgid "User is not silenced."
+msgstr ""
+
+#: actions/unsubscribe.php:77
+#, fuzzy
+msgid "No profile ID in request."
+msgstr "Daar is geen profiel met daardie ID nie."
+
+#: actions/unsubscribe.php:98
+msgid "Unsubscribed"
+msgstr ""
+
+#: actions/updateprofile.php:64 actions/userauthorization.php:337
+#, php-format
+msgid ""
+"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#. TRANS: User admin panel title
+#: actions/useradminpanel.php:59
+msgctxt "TITLE"
+msgid "User"
+msgstr "Gebruiker"
+
+#: actions/useradminpanel.php:70
+msgid "User settings for this StatusNet site."
+msgstr ""
+
+#: actions/useradminpanel.php:149
+msgid "Invalid bio limit. Must be numeric."
+msgstr ""
+
+#: actions/useradminpanel.php:155
+msgid "Invalid welcome text. Max length is 255 characters."
+msgstr ""
+
+#: actions/useradminpanel.php:165
+#, php-format
+msgid "Invalid default subscripton: '%1$s' is not user."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
+#: lib/personalgroupnav.php:109
+msgid "Profile"
+msgstr "Profiel"
+
+#: actions/useradminpanel.php:222
+msgid "Bio Limit"
+msgstr "Profiellimiet"
+
+#: actions/useradminpanel.php:223
+msgid "Maximum length of a profile bio in characters."
+msgstr ""
+
+#: actions/useradminpanel.php:231
+msgid "New users"
+msgstr "Nuwe gebruikers"
+
+#: actions/useradminpanel.php:235
+msgid "New user welcome"
+msgstr ""
+
+#: actions/useradminpanel.php:236
+msgid "Welcome text for new users (Max 255 chars)."
+msgstr ""
+
+#: actions/useradminpanel.php:241
+msgid "Default subscription"
+msgstr ""
+
+#: actions/useradminpanel.php:242
+msgid "Automatically subscribe new users to this user."
+msgstr ""
+
+#: actions/useradminpanel.php:251
+msgid "Invitations"
+msgstr "Uitnodigings"
+
+#: actions/useradminpanel.php:256
+msgid "Invitations enabled"
+msgstr ""
+
+#: actions/useradminpanel.php:258
+msgid "Whether to allow users to invite new users."
+msgstr ""
+
+#: actions/userauthorization.php:105
+msgid "Authorize subscription"
+msgstr ""
+
+#: actions/userauthorization.php:110
+msgid ""
+"Please check these details to make sure that you want to subscribe to this "
+"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
+"click “Rejectâ€."
+msgstr ""
+
+#: actions/userauthorization.php:196 actions/version.php:167
+msgid "License"
+msgstr "Lisensie"
+
+#: actions/userauthorization.php:217
+msgid "Accept"
+msgstr "Aanvaar"
+
+#: actions/userauthorization.php:218 lib/subscribeform.php:115
+#: lib/subscribeform.php:139
+msgid "Subscribe to this user"
+msgstr ""
+
+#: actions/userauthorization.php:219
+msgid "Reject"
+msgstr "Verwerp"
+
+#: actions/userauthorization.php:220
+msgid "Reject this subscription"
+msgstr ""
+
+#: actions/userauthorization.php:232
+msgid "No authorization request!"
+msgstr ""
+
+#: actions/userauthorization.php:254
+msgid "Subscription authorized"
+msgstr ""
+
+#: actions/userauthorization.php:256
+msgid ""
+"The subscription has been authorized, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to authorize the "
+"subscription. Your subscription token is:"
+msgstr ""
+
+#: actions/userauthorization.php:266
+msgid "Subscription rejected"
+msgstr ""
+
+#: actions/userauthorization.php:268
+msgid ""
+"The subscription has been rejected, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to fully reject the "
+"subscription."
+msgstr ""
+
+#: actions/userauthorization.php:303
+#, php-format
+msgid "Listener URI ‘%s’ not found here."
+msgstr ""
+
+#: actions/userauthorization.php:308
+#, php-format
+msgid "Listenee URI ‘%s’ is too long."
+msgstr ""
+
+#: actions/userauthorization.php:314
+#, php-format
+msgid "Listenee URI ‘%s’ is a local user."
+msgstr ""
+
+#: actions/userauthorization.php:329
+#, php-format
+msgid "Profile URL ‘%s’ is for a local user."
+msgstr ""
+
+#: actions/userauthorization.php:345
+#, php-format
+msgid "Avatar URL ‘%s’ is not valid."
+msgstr ""
+
+#: actions/userauthorization.php:350
+#, php-format
+msgid "Can’t read avatar URL ‘%s’."
+msgstr "Kan nie die avatar-URL \"%s\" lees nie."
+
+#: actions/userauthorization.php:355
+#, php-format
+msgid "Wrong image type for avatar URL ‘%s’."
+msgstr ""
+
+#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+msgid "Profile design"
+msgstr ""
+
+#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+msgid ""
+"Customize the way your profile looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+
+#: actions/userdesignsettings.php:282
+msgid "Enjoy your hotdog!"
+msgstr "Geniet u worsbroodjie!"
+
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
+msgid "%1$s groups, page %2$d"
+msgstr "%1$s groepe, bladsy %2$d"
+
+#: actions/usergroups.php:132
+msgid "Search for more groups"
+msgstr "Soek vir meer groepe"
+
+#: actions/usergroups.php:159
+#, php-format
+msgid "%s is not a member of any group."
+msgstr ""
+
+#: actions/usergroups.php:164
+#, php-format
+msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
+#, php-format
+msgid "Updates from %1$s on %2$s!"
+msgstr "Opdaterings van %1$s op %2$s."
+
+#: actions/version.php:75
+#, php-format
+msgid "StatusNet %s"
+msgstr "StatusNet %s"
+
+#: actions/version.php:155
+#, php-format
+msgid ""
+"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
+"Inc. and contributors."
+msgstr ""
+
+#: actions/version.php:163
+msgid "Contributors"
+msgstr "Medewerkers"
+
+#: actions/version.php:170
+msgid ""
+"StatusNet is free software: you can redistribute it and/or modify it under "
+"the terms of the GNU Affero General Public License as published by the Free "
+"Software Foundation, either version 3 of the License, or (at your option) "
+"any later version. "
+msgstr ""
+
+#: actions/version.php:176
+msgid ""
+"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. "
+msgstr ""
+
+#: actions/version.php:182
+#, php-format
+msgid ""
+"You should have received a copy of the GNU Affero General Public License "
+"along with this program. If not, see %s."
+msgstr ""
+
+#: actions/version.php:191
+msgid "Plugins"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
+msgid "Version"
+msgstr "Weergawe"
+
+#: actions/version.php:199
+msgid "Author(s)"
+msgstr "Outeur(s)"
+
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, php-format
+msgid ""
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgstr ""
+
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
+#, php-format
+msgid "A file this large would exceed your user quota of %d bytes."
+msgstr ""
+
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
+#, php-format
+msgid "A file this large would exceed your monthly quota of %d bytes."
+msgstr ""
+
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Ongeldige grootte."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
+msgid "Group join failed."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
+msgid "Not part of group."
+msgstr "Nie lid van die groep nie."
+
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
+msgid "Group leave failed."
+msgstr ""
+
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
+msgid "Could not update local group."
+msgstr ""
+
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
+msgid "Could not create login token for %s"
+msgstr ""
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
+msgid "You are banned from sending direct messages."
+msgstr ""
+
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
+msgid "Could not insert message."
+msgstr ""
+
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
+msgid "Could not update message with new URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr ""
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
+msgid "Problem saving notice. Too long."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
+msgid "Problem saving notice. Unknown user."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
+msgid ""
+"Too many notices too fast; take a breather and post again in a few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
+msgid ""
+"Too many duplicate messages too quickly; take a breather and post again in a "
+"few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
+msgid "You are banned from posting notices on this site."
+msgstr ""
+
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
+msgid "Problem saving notice."
+msgstr ""
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
+msgid "Problem saving group inbox."
+msgstr ""
+
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
+msgid "RT @%1$s %2$s"
+msgstr "RT @%1$s %2$s"
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Hierdie gebruiker het nie 'n profiel nie."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Dit was nie moontlik om u ontwerp-instellings te stoor nie."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
+msgid "Already subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
+msgid "User has blocked you."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
+msgid "Not subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
+msgstr ""
+"Dit was nie moontlik om die boodskap van u gunstelinge te verwyder nie."
+
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+#, fuzzy
+msgid "Could not delete subscription OMB token."
+msgstr ""
+"Dit was nie moontlik om die boodskap van u gunstelinge te verwyder nie."
+
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
+msgstr ""
+"Dit was nie moontlik om die boodskap van u gunstelinge te verwyder nie."
+
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
+#, php-format
+msgid "Welcome to %1$s, @%2$s!"
+msgstr "Welkom by %1$s, @%2$s!"
+
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
+msgid "Could not create group."
+msgstr "Kon nie die groep skep nie."
+
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
+msgid "Could not set group URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
+msgid "Could not set group membership."
+msgstr ""
+
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
+msgid "Could not save local group info."
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
+msgid "Change your profile settings"
+msgstr "Verander u profiel gegewens"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
+msgid "Upload an avatar"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
+msgid "Change your password"
+msgstr "Verander u wagwoord"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
+msgid "Change email handling"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
+msgid "Design your profile"
+msgstr "Ontwerp u profiel"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr "Ander opsies"
+
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Ander"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
+msgid "%1$s - %2$s"
+msgstr "%1$s - %2$s"
+
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
+msgid "Untitled page"
+msgstr ""
+
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
+msgid "Primary site navigation"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Personal"
+#: lib/action.php:442
+msgctxt "TOOLTIP"
+msgid "Personal profile and friends timeline"
+msgstr ""
+
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
+msgctxt "MENU"
+msgid "Personal"
+msgstr "Persoonlik"
+
+#. TRANS: Tooltip for main menu option "Account"
+#: lib/action.php:447
+msgctxt "TOOLTIP"
+msgid "Change your email, avatar, password, profile"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Services"
+#: lib/action.php:452
+msgctxt "TOOLTIP"
+msgid "Connect to services"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
+msgid "Connect"
+msgstr "Konnekteer"
+
+#. TRANS: Tooltip for menu option "Admin"
+#: lib/action.php:458
+msgctxt "TOOLTIP"
+msgid "Change site configuration"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
+msgctxt "MENU"
+msgid "Admin"
+msgstr "Beheer"
+
+#. TRANS: Tooltip for main menu option "Invite"
+#: lib/action.php:465
+#, php-format
+msgctxt "TOOLTIP"
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
+msgctxt "MENU"
+msgid "Invite"
+msgstr "Uitnodig"
+
+#. TRANS: Tooltip for main menu option "Logout"
+#: lib/action.php:474
+msgctxt "TOOLTIP"
+msgid "Logout from the site"
+msgstr ""
+
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
+msgctxt "MENU"
+msgid "Logout"
+msgstr "Teken uit"
+
+#. TRANS: Tooltip for main menu option "Register"
+#: lib/action.php:482
+msgctxt "TOOLTIP"
+msgid "Create an account"
+msgstr "Skep 'n gebruiker"
+
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
+msgctxt "MENU"
+msgid "Register"
+msgstr "Registreer"
+
+#. TRANS: Tooltip for main menu option "Login"
+#: lib/action.php:488
+msgctxt "TOOLTIP"
+msgid "Login to the site"
+msgstr "Meld by die webwerf aan"
+
+#: lib/action.php:491
+msgctxt "MENU"
+msgid "Login"
+msgstr "Teken in"
+
+#. TRANS: Tooltip for main menu option "Help"
+#: lib/action.php:494
+msgctxt "TOOLTIP"
+msgid "Help me!"
+msgstr "Help my!"
+
+#: lib/action.php:497
+msgctxt "MENU"
+msgid "Help"
+msgstr "Help"
+
+#. TRANS: Tooltip for main menu option "Search"
+#: lib/action.php:500
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
+msgstr "Soek na mense of teks"
+
+#: lib/action.php:503
+msgctxt "MENU"
+msgid "Search"
+msgstr "Soek"
+
+#. TRANS: DT element for site notice. String is hidden in default CSS.
+#. TRANS: Menu item for site administration
+#: lib/action.php:525 lib/adminpanelaction.php:400
+msgid "Site notice"
+msgstr ""
+
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
+msgid "Local views"
+msgstr ""
+
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
+msgid "Page notice"
+msgstr ""
+
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
+msgid "Secondary site navigation"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
+msgid "Help"
+msgstr "Help"
+
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
+msgid "About"
+msgstr "Aangaande"
+
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
+msgid "FAQ"
+msgstr "Gewilde vrae"
+
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
+msgid "TOS"
+msgstr "Gebruiksvoorwaardes"
+
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
+msgid "Privacy"
+msgstr "Privaatheid"
+
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
+msgid "Source"
+msgstr "Bron"
+
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
+msgid "Contact"
+msgstr "Kontak"
+
+#: lib/action.php:794
+msgid "Badge"
+msgstr ""
+
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
+msgid "StatusNet software license"
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, php-format
+msgid ""
+"**%%site.name%%** is a microblogging service brought to you by [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
+#, php-format
+msgid "**%%site.name%%** is a microblogging service."
+msgstr ""
+
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
+#, php-format
+msgid ""
+"It runs the [StatusNet](http://status.net/) microblogging software, version %"
+"s, available under the [GNU Affero General Public License](http://www.fsf."
+"org/licensing/licenses/agpl-3.0.html)."
+msgstr ""
+
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
+msgid "Site content license"
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
+#, php-format
+msgid "Content and data of %1$s are private and confidential."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
+#, php-format
+msgid "Content and data copyright by %1$s. All rights reserved."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
+msgid "Content and data copyright by contributors. All rights reserved."
+msgstr ""
+
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
+msgid "Pagination"
+msgstr ""
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
+msgid "After"
+msgstr "Na"
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
+msgid "Before"
+msgstr "Voor"
+
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr ""
+
+#: lib/activityutils.php:244
+msgid "Can't handle embedded XML content yet."
+msgstr ""
+
+#: lib/activityutils.php:248
+msgid "Can't handle embedded Base64 content yet."
+msgstr ""
+
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
+#: lib/adminpanelaction.php:98
+msgid "You cannot make changes to this site."
+msgstr ""
+
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
+#: lib/adminpanelaction.php:110
+msgid "Changes to that panel are not allowed."
+msgstr ""
+
+#. TRANS: Client error message.
+#: lib/adminpanelaction.php:229
+msgid "showForm() not implemented."
+msgstr ""
+
+#. TRANS: Client error message
+#: lib/adminpanelaction.php:259
+msgid "saveSettings() not implemented."
+msgstr ""
+
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
+msgid "Unable to delete design setting."
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:350
+msgid "Basic site configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:352
+msgctxt "MENU"
+msgid "Site"
+msgstr "Webtuiste"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:358
+msgid "Design configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:360
+msgctxt "MENU"
+msgid "Design"
+msgstr "Ontwerp"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:366
+msgid "User configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
+msgid "User"
+msgstr "Gebruiker"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:374
+msgid "Access configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:382
+msgid "Paths configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:390
+msgid "Sessions configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:398
+msgid "Edit site notice"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:406
+msgid "Snapshots configuration"
+msgstr ""
+
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
+msgid "API resource requires read-write access, but you only have read access."
+msgstr ""
+
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
+msgid "Edit application"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
+msgid "Icon for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
+msgid "Describe your application in %d characters"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
+msgid "Describe your application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
+msgid "Organization responsible for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
+msgid "URL for the homepage of the organization"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
+msgid "URL to redirect to after authentication"
+msgstr ""
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
+msgid "Browser"
+msgstr "Webblaaier"
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
+msgid "Desktop"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
+msgid "Type of application, browser or desktop"
+msgstr ""
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
+msgid "Read-only"
+msgstr "Lees-alleen"
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
+msgid "Read-write"
+msgstr "Lees-skryf"
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
+msgid "Default access for this application: read-only, or read-write"
+msgstr ""
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Kanselleer"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+#, fuzzy
+msgid "read-write"
+msgstr "Lees-skryf"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+#, fuzzy
+msgid "read-only"
+msgstr "Lees-alleen"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Revoke"
+msgstr "Herroep"
+
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
+msgid "Attachments"
+msgstr "Aanhangsels"
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:265
+msgid "Author"
+msgstr "Outeur"
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
+msgid "Provider"
+msgstr "Verskaffer"
+
+#: lib/attachmentnoticesection.php:67
+msgid "Notices where this attachment appears"
+msgstr ""
+
+#: lib/attachmenttagcloudsection.php:48
+msgid "Tags for this attachment"
+msgstr "Etikette vir hierdie aanhangsel"
+
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
+msgid "Password changing failed"
+msgstr "Wagwoord wysiging het misluk"
+
+#: lib/authenticationplugin.php:236
+msgid "Password changing is not allowed"
+msgstr "Wagwoord verandering word nie toegelaat nie"
+
+#: lib/channel.php:157 lib/channel.php:177
+msgid "Command results"
+msgstr "Opdragresultate"
+
+#: lib/channel.php:229 lib/mailhandler.php:142
+msgid "Command complete"
+msgstr "Opdrag voltooi"
+
+#: lib/channel.php:240
+msgid "Command failed"
+msgstr ""
+
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr ""
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr ""
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
+msgid "Could not find a user with nickname %s"
+msgstr ""
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr ""
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
+msgid "It does not make a lot of sense to nudge yourself!"
+msgstr ""
+
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
+msgid "Nudge sent to %s"
+msgstr ""
+
+#: lib/command.php:260
+#, php-format
+msgid ""
+"Subscriptions: %1$s\n"
+"Subscribers: %2$s\n"
+"Notices: %3$s"
+msgstr ""
+
+#: lib/command.php:302
+msgid "Notice marked as fave."
+msgstr ""
+
+#: lib/command.php:323
+msgid "You are already a member of that group"
+msgstr ""
+
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, fuzzy, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr "U kan nie die gebruiker volg nie: die gebruiker bestaan nie."
+
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Kon nie die groep skep nie."
+
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
+#, php-format
+msgid "Fullname: %s"
+msgstr "Volle naam: %s"
+
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
+#, php-format
+msgid "Location: %s"
+msgstr "Ligging: %s"
+
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
+#, php-format
+msgid "Homepage: %s"
+msgstr "Tuisblad: %s"
+
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
+#, php-format
+msgid "About: %s"
+msgstr "Oor: %s"
+
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, fuzzy, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Boodskap is te lank. Die maksimum is %1$d karakters. U het %2$d karakters "
+"gestuur."
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
+msgid "Direct message to %s sent"
+msgstr ""
+
+#: lib/command.php:494
+msgid "Error sending direct message."
+msgstr ""
+
+#: lib/command.php:514
+msgid "Cannot repeat your own notice"
+msgstr ""
+
+#: lib/command.php:519
+msgid "Already repeated that notice"
+msgstr ""
+
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
+msgid "Notice from %s repeated"
+msgstr ""
+
+#: lib/command.php:531
+msgid "Error repeating notice."
+msgstr ""
+
+#: lib/command.php:562
+#, php-format
+msgid "Notice too long - maximum is %d characters, you sent %d"
+msgstr ""
+
+#: lib/command.php:571
+#, php-format
+msgid "Reply to %s sent"
+msgstr ""
+
+#: lib/command.php:573
+msgid "Error saving notice."
+msgstr ""
+
+#: lib/command.php:620
+msgid "Specify the name of the user to subscribe to"
+msgstr ""
+
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
+
+#: lib/command.php:634
+#, php-format
+msgid "Subscribed to %s"
+msgstr ""
+
+#: lib/command.php:655 lib/command.php:754
+msgid "Specify the name of the user to unsubscribe from"
+msgstr ""
+
+#: lib/command.php:664
+#, php-format
+msgid "Unsubscribed from %s"
+msgstr ""
+
+#: lib/command.php:682 lib/command.php:705
+msgid "Command not yet implemented."
+msgstr ""
+
+#: lib/command.php:685
+msgid "Notification off."
+msgstr ""
+
+#: lib/command.php:687
+msgid "Can't turn off notification."
+msgstr ""
+
+#: lib/command.php:708
+msgid "Notification on."
+msgstr ""
+
+#: lib/command.php:710
+msgid "Can't turn on notification."
+msgstr ""
+
+#: lib/command.php:723
+msgid "Login command is disabled"
+msgstr ""
+
+#: lib/command.php:734
+#, php-format
+msgid "This link is useable only once, and is good for only 2 minutes: %s"
+msgstr ""
+
+#: lib/command.php:761
+#, php-format
+msgid "Unsubscribed %s"
+msgstr ""
+
+#: lib/command.php:778
+msgid "You are not subscribed to anyone."
+msgstr ""
+
+#: lib/command.php:780
+msgid "You are subscribed to this person:"
+msgid_plural "You are subscribed to these people:"
+msgstr[0] "U volg hierdie gebruiker:"
+msgstr[1] "U volg hierdie gebruikers:"
+
+#: lib/command.php:800
+msgid "No one is subscribed to you."
+msgstr ""
+
+#: lib/command.php:802
+msgid "This person is subscribed to you:"
+msgid_plural "These people are subscribed to you:"
+msgstr[0] "Hierdie gebruiker volg u:"
+msgstr[1] "Hierdie gebruikers volg u:"
+
+#: lib/command.php:822
+msgid "You are not a member of any groups."
+msgstr "U is nie 'n lid van enige groep nie."
+
+#: lib/command.php:824
+msgid "You are a member of this group:"
+msgid_plural "You are a member of these groups:"
+msgstr[0] "U is 'n lid van hierdie groep:"
+msgstr[1] "U is 'n lid van hierdie groepe:"
+
+#: lib/command.php:838
+msgid ""
+"Commands:\n"
+"on - turn on notifications\n"
+"off - turn off notifications\n"
+"help - show this help\n"
+"follow <nickname> - subscribe to user\n"
+"groups - lists the groups you have joined\n"
+"subscriptions - list the people you follow\n"
+"subscribers - list the people that follow you\n"
+"leave <nickname> - unsubscribe from user\n"
+"d <nickname> <text> - direct message to user\n"
+"get <nickname> - get last notice from user\n"
+"whois <nickname> - get profile info on user\n"
+"lose <nickname> - force user to stop following you\n"
+"fav <nickname> - add user's last notice as a 'fave'\n"
+"fav #<notice_id> - add notice with the given id as a 'fave'\n"
+"repeat #<notice_id> - repeat a notice with a given id\n"
+"repeat <nickname> - repeat the last notice from user\n"
+"reply #<notice_id> - reply to notice with a given id\n"
+"reply <nickname> - reply to the last notice from user\n"
+"join <group> - join group\n"
+"login - Get a link to login to the web interface\n"
+"drop <group> - leave group\n"
+"stats - get your stats\n"
+"stop - same as 'off'\n"
+"quit - same as 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
+msgstr ""
+
+#: lib/common.php:135
+msgid "No configuration file found. "
+msgstr ""
+
+#: lib/common.php:136
+msgid "I looked for configuration files in the following places: "
+msgstr ""
+
+#: lib/common.php:138
+msgid "You may wish to run the installer to fix this."
+msgstr ""
+
+#: lib/common.php:139
+msgid "Go to the installer."
+msgstr "Gaan na die installeerder."
+
+#: lib/connectsettingsaction.php:110
+msgid "IM"
+msgstr "IM"
+
+#: lib/connectsettingsaction.php:111
+msgid "Updates by instant messenger (IM)"
+msgstr ""
+
+#: lib/connectsettingsaction.php:116
+msgid "Updates by SMS"
+msgstr ""
+
+#: lib/connectsettingsaction.php:120
+msgid "Connections"
+msgstr ""
+
+#: lib/connectsettingsaction.php:121
+msgid "Authorized connected applications"
+msgstr ""
+
+#: lib/dberroraction.php:60
+msgid "Database error"
+msgstr "Databasisfout"
+
+#: lib/designsettings.php:105
+msgid "Upload file"
+msgstr ""
+
+#: lib/designsettings.php:109
+msgid ""
+"You can upload your personal background image. The maximum file size is 2MB."
+msgstr ""
+
+#: lib/designsettings.php:418
+msgid "Design defaults restored."
+msgstr ""
+
+#: lib/disfavorform.php:114 lib/disfavorform.php:140
+msgid "Disfavor this notice"
+msgstr ""
+
+#: lib/favorform.php:114 lib/favorform.php:140
+msgid "Favor this notice"
+msgstr ""
+
+#: lib/favorform.php:140
+msgid "Favor"
+msgstr ""
+
+#: lib/feed.php:85
+msgid "RSS 1.0"
+msgstr "RSS 1.0"
+
+#: lib/feed.php:87
+msgid "RSS 2.0"
+msgstr "RSS 2.0"
+
+#: lib/feed.php:89
+msgid "Atom"
+msgstr "Atom"
+
+#: lib/feed.php:91
+msgid "FOAF"
+msgstr "Vriende van vriende (FOAF)"
+
+#: lib/feedlist.php:64
+msgid "Export data"
+msgstr ""
+
+#: lib/galleryaction.php:121
+msgid "Filter tags"
+msgstr ""
+
+#: lib/galleryaction.php:131
+msgid "All"
+msgstr "Alle"
+
+#: lib/galleryaction.php:139
+msgid "Select tag to filter"
+msgstr ""
+
+#: lib/galleryaction.php:140
+msgid "Tag"
+msgstr "Etiket"
+
+#: lib/galleryaction.php:141
+msgid "Choose a tag to narrow list"
+msgstr ""
+
+#: lib/galleryaction.php:143
+msgid "Go"
+msgstr "OK"
+
+#: lib/grantroleform.php:91
+#, php-format
+msgid "Grant this user the \"%s\" role"
+msgstr ""
+
+#: lib/groupeditform.php:163
+msgid "URL of the homepage or blog of the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:168
+msgid "Describe the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:170
+#, php-format
+msgid "Describe the group or topic in %d characters"
+msgstr ""
+
+#: lib/groupeditform.php:179
+msgid ""
+"Location for the group, if any, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: lib/groupeditform.php:187
+#, php-format
+msgid "Extra nicknames for the group, comma- or space- separated, max %d"
+msgstr ""
+
+#: lib/groupnav.php:85
+msgid "Group"
+msgstr "Groep"
+
+#: lib/groupnav.php:101
+msgid "Blocked"
+msgstr "Geblokkeer"
+
+#: lib/groupnav.php:102
+#, php-format
+msgid "%s blocked users"
+msgstr "%s geblokkeerde gebruikers"
+
+#: lib/groupnav.php:108
+#, php-format
+msgid "Edit %s group properties"
+msgstr ""
+
+#: lib/groupnav.php:113
+msgid "Logo"
+msgstr "Logo"
+
+#: lib/groupnav.php:114
+#, php-format
+msgid "Add or edit %s logo"
+msgstr ""
+
+#: lib/groupnav.php:120
+#, php-format
+msgid "Add or edit %s design"
+msgstr ""
+
+#: lib/groupsbymemberssection.php:71
+msgid "Groups with most members"
+msgstr ""
+
+#: lib/groupsbypostssection.php:71
+msgid "Groups with most posts"
+msgstr ""
+
+#: lib/grouptagcloudsection.php:56
+#, php-format
+msgid "Tags in %s group's notices"
+msgstr ""
+
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
+msgid "This page is not available in a media type you accept"
+msgstr ""
+
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
+#, php-format
+msgid "That file is too big. The maximum file size is %s."
+msgstr ""
+
+#: lib/imagefile.php:93
+msgid "Partial upload."
+msgstr ""
+
+#: lib/imagefile.php:101 lib/mediafile.php:170
+msgid "System error uploading file."
+msgstr ""
+
+#: lib/imagefile.php:109
+msgid "Not an image or corrupt file."
+msgstr ""
+
+#: lib/imagefile.php:122
+msgid "Lost our file."
+msgstr ""
+
+#: lib/imagefile.php:163 lib/imagefile.php:224
+msgid "Unknown file type"
+msgstr "Onbekende lêertipe"
+
+#: lib/imagefile.php:244
+msgid "MB"
+msgstr "MB"
+
+#: lib/imagefile.php:246
+msgid "kB"
+msgstr "kB"
+
+#: lib/jabber.php:387
+#, php-format
+msgid "[%s]"
+msgstr "[%s]"
+
+#: lib/jabber.php:567
+#, php-format
+msgid "Unknown inbox source %d."
+msgstr ""
+
+#: lib/joinform.php:114
+msgid "Join"
+msgstr "Aansluit"
+
+#: lib/leaveform.php:114
+msgid "Leave"
+msgstr "Verlaat"
+
+#: lib/logingroupnav.php:80
+msgid "Login with a username and password"
+msgstr ""
+
+#: lib/logingroupnav.php:86
+msgid "Sign up for a new account"
+msgstr ""
+
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
+msgid "Email address confirmation"
+msgstr ""
+
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
+#, php-format
+msgid ""
+"Hey, %s.\n"
+"\n"
+"Someone just entered this email address on %s.\n"
+"\n"
+"If it was you, and you want to confirm your entry, use the URL below:\n"
+"\n"
+"\t%s\n"
+"\n"
+"If not, just ignore this message.\n"
+"\n"
+"Thanks for your time, \n"
+"%s\n"
+msgstr ""
+
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
+#, php-format
+msgid "%1$s is now listening to your notices on %2$s."
+msgstr ""
+
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
+msgid ""
+"%1$s is now listening to your notices on %2$s.\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"Faithfully yours,\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Change your email address or notification options at %8$s\n"
+msgstr ""
+
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
+msgid "Bio: %s"
+msgstr "Beskrywing: %s"
+
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
+#, php-format
+msgid "New email address for posting to %s"
+msgstr ""
+
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
+#, php-format
+msgid ""
+"You have a new posting address on %1$s.\n"
+"\n"
+"Send email to %2$s to post new messages.\n"
+"\n"
+"More email instructions at %3$s.\n"
+"\n"
+"Faithfully yours,\n"
+"%4$s"
+msgstr ""
+
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
+#, php-format
+msgid "%s status"
+msgstr "%s status"
+
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
+msgid "SMS confirmation"
+msgstr "SMS-bevestiging"
+
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
+#, php-format
+msgid "You've been nudged by %s"
+msgstr ""
+
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
+#, php-format
+msgid ""
+"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
+"to post some news.\n"
+"\n"
+"So let's hear from you :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%4$s\n"
+msgstr ""
+
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
+#, php-format
+msgid "New private message from %s"
+msgstr "Nuwe privaat boodskap vanaf %s"
+
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
+#, php-format
+msgid ""
+"%1$s (%2$s) sent you a private message:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"You can reply to their message here:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%5$s\n"
+msgstr ""
+
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
+#, php-format
+msgid "%s (@%s) added your notice as a favorite"
+msgstr ""
+
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
+#, php-format
+msgid ""
+"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
+"\n"
+"The URL of your notice is:\n"
+"\n"
+"%3$s\n"
+"\n"
+"The text of your notice is:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see the list of %1$s's favorites here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Faithfully yours,\n"
+"%6$s\n"
+msgstr ""
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr ""
+
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
+#, php-format
+msgid ""
+"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
+"\n"
+"The notice is here:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"It reads:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
+msgstr ""
+
+#: lib/mailbox.php:89
+msgid "Only the user can read their own mailboxes."
+msgstr ""
+
+#: lib/mailbox.php:139
+msgid ""
+"You have no private messages. You can send private message to engage other "
+"users in conversation. People can send you messages for your eyes only."
+msgstr ""
+
+#: lib/mailbox.php:227 lib/noticelist.php:505
+msgid "from"
+msgstr "van"
+
+#: lib/mailhandler.php:37
+msgid "Could not parse message."
+msgstr "Kan nie boodskap verwerk nie."
+
+#: lib/mailhandler.php:42
+msgid "Not a registered user."
+msgstr "Nie 'n geregistreerde gebruiker nie."
+
+#: lib/mailhandler.php:46
+msgid "Sorry, that is not your incoming email address."
+msgstr "Jammer, dit is nie u inkomende e-posadres nie."
+
+#: lib/mailhandler.php:50
+msgid "Sorry, no incoming email allowed."
+msgstr "Jammer, inkomende e-pos word nie toegelaat nie."
+
+#: lib/mailhandler.php:228
+#, php-format
+msgid "Unsupported message type: %s"
+msgstr ""
+
+#: lib/mediafile.php:98 lib/mediafile.php:123
+msgid "There was a database error while saving your file. Please try again."
+msgstr ""
+
+#: lib/mediafile.php:142
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
+msgstr ""
+
+#: lib/mediafile.php:147
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form."
+msgstr ""
+
+#: lib/mediafile.php:152
+msgid "The uploaded file was only partially uploaded."
+msgstr ""
+
+#: lib/mediafile.php:159
+msgid "Missing a temporary folder."
+msgstr ""
+
+#: lib/mediafile.php:162
+msgid "Failed to write file to disk."
+msgstr ""
+
+#: lib/mediafile.php:165
+msgid "File upload stopped by extension."
+msgstr ""
+
+#: lib/mediafile.php:179 lib/mediafile.php:217
+msgid "File exceeds user's quota."
+msgstr ""
+
+#: lib/mediafile.php:197 lib/mediafile.php:234
+msgid "File could not be moved to destination directory."
+msgstr ""
+
+#: lib/mediafile.php:202 lib/mediafile.php:238
+msgid "Could not determine file's MIME type."
+msgstr ""
+
+#: lib/mediafile.php:318
+#, php-format
+msgid " Try using another %s format."
+msgstr ""
+
+#: lib/mediafile.php:323
+#, php-format
+msgid "%s is not a supported file type on this server."
+msgstr ""
+
+#: lib/messageform.php:120
+msgid "Send a direct notice"
+msgstr ""
+
+#: lib/messageform.php:146
+msgid "To"
+msgstr "Aan"
+
+#: lib/messageform.php:159 lib/noticeform.php:185
+msgid "Available characters"
+msgstr "Beskikbare karakters"
+
+#: lib/messageform.php:178 lib/noticeform.php:236
+msgctxt "Send button for sending notice"
+msgid "Send"
+msgstr "Stuur"
+
+#: lib/noticeform.php:160
+msgid "Send a notice"
+msgstr ""
+
+#: lib/noticeform.php:173
+#, php-format
+msgid "What's up, %s?"
+msgstr "Hallo, %s."
+
+#: lib/noticeform.php:192
+msgid "Attach"
+msgstr "Aanheg"
+
+#: lib/noticeform.php:196
+msgid "Attach a file"
+msgstr "Heg 'n lêer aan"
+
+#: lib/noticeform.php:212
+msgid "Share my location"
+msgstr ""
+
+#: lib/noticeform.php:215
+msgid "Do not share my location"
+msgstr ""
+
+#: lib/noticeform.php:216
+msgid ""
+"Sorry, retrieving your geo location is taking longer than expected, please "
+"try again later"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
+msgid "N"
+msgstr "N"
+
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
+msgid "S"
+msgstr "S"
+
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
+msgid "E"
+msgstr "O"
+
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
+msgid "W"
+msgstr "W"
+
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
+msgid "at"
+msgstr "op"
+
+#: lib/noticelist.php:567
+msgid "in context"
+msgstr "in konteks"
+
+#: lib/noticelist.php:602
+msgid "Repeated by"
+msgstr "Herhaal deur"
+
+#: lib/noticelist.php:629
+msgid "Reply to this notice"
+msgstr ""
+
+#: lib/noticelist.php:630
+msgid "Reply"
+msgstr "Antwoord"
+
+#: lib/noticelist.php:674
+msgid "Notice repeated"
+msgstr ""
+
+#: lib/nudgeform.php:116
+msgid "Nudge this user"
+msgstr ""
+
+#: lib/nudgeform.php:128
+msgid "Nudge"
+msgstr "Aanpor"
+
+#: lib/nudgeform.php:128
+msgid "Send a nudge to this user"
+msgstr ""
+
+#: lib/oauthstore.php:283
+msgid "Error inserting new profile"
+msgstr ""
+
+#: lib/oauthstore.php:291
+msgid "Error inserting avatar"
+msgstr ""
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:311
+msgid "Error inserting remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:345
+msgid "Duplicate notice"
+msgstr ""
+
+#: lib/oauthstore.php:490
+msgid "Couldn't insert new subscription."
+msgstr ""
+
+#: lib/personalgroupnav.php:99
+msgid "Personal"
+msgstr "Persoonlik"
+
+#: lib/personalgroupnav.php:104
+msgid "Replies"
+msgstr "Antwoorde"
+
+#: lib/personalgroupnav.php:114
+msgid "Favorites"
+msgstr "Gunstelinge"
+
+#: lib/personalgroupnav.php:125
+msgid "Inbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:126
+msgid "Your incoming messages"
+msgstr "U inkomende boodskappe"
+
+#: lib/personalgroupnav.php:130
+msgid "Outbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:131
+msgid "Your sent messages"
+msgstr ""
+
+#: lib/personaltagcloudsection.php:56
+#, php-format
+msgid "Tags in %s's notices"
+msgstr ""
+
+#: lib/plugin.php:115
+msgid "Unknown"
+msgstr "Onbekend"
+
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+msgid "Subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:126
+msgid "All subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
+msgid "Subscribers"
+msgstr ""
+
+#: lib/profileaction.php:161
+msgid "All subscribers"
+msgstr ""
+
+#: lib/profileaction.php:191
+msgid "User ID"
+msgstr "Gebruikers-ID"
+
+#: lib/profileaction.php:196
+msgid "Member since"
+msgstr "Lid sedert"
+
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Daaglikse gemiddelde"
+
+#: lib/profileaction.php:264
+msgid "All groups"
+msgstr "Alle groepe"
+
+#: lib/profileformaction.php:123
+msgid "Unimplemented method."
+msgstr ""
+
+#: lib/publicgroupnav.php:78
+msgid "Public"
+msgstr "Openbaar"
+
+#: lib/publicgroupnav.php:82
+msgid "User groups"
+msgstr "Gebruikersgroepe"
+
+#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
+msgid "Recent tags"
+msgstr "Onlangse etikette"
+
+#: lib/publicgroupnav.php:88
+msgid "Featured"
+msgstr "Uitgelig"
+
+#: lib/publicgroupnav.php:92
+msgid "Popular"
+msgstr "Gewild"
+
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
+#: lib/repeatform.php:107
+msgid "Repeat this notice?"
+msgstr ""
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ja"
+
+#: lib/repeatform.php:132
+msgid "Repeat this notice"
+msgstr ""
+
+#: lib/revokeroleform.php:91
+#, php-format
+msgid "Revoke the \"%s\" role from this user"
+msgstr ""
+
+#: lib/router.php:709
+msgid "No single user defined for single-user mode."
+msgstr ""
+
+#: lib/sandboxform.php:67
+msgid "Sandbox"
+msgstr ""
+
+#: lib/sandboxform.php:78
+msgid "Sandbox this user"
+msgstr ""
+
+#: lib/searchaction.php:120
+msgid "Search site"
+msgstr ""
+
+#: lib/searchaction.php:126
+msgid "Keyword(s)"
+msgstr "Term(e)"
+
+#: lib/searchaction.php:127
+msgid "Search"
+msgstr "Soek"
+
+#: lib/searchaction.php:162
+msgid "Search help"
+msgstr ""
+
+#: lib/searchgroupnav.php:80
+msgid "People"
+msgstr "Gebruikers"
+
+#: lib/searchgroupnav.php:81
+msgid "Find people on this site"
+msgstr ""
+
+#: lib/searchgroupnav.php:83
+msgid "Find content of notices"
+msgstr ""
+
+#: lib/searchgroupnav.php:85
+msgid "Find groups on this site"
+msgstr ""
+
+#: lib/section.php:89
+msgid "Untitled section"
+msgstr ""
+
+#: lib/section.php:106
+msgid "More..."
+msgstr "Meer..."
+
+#: lib/silenceform.php:67
+msgid "Silence"
+msgstr "Maak stil"
+
+#: lib/silenceform.php:78
+msgid "Silence this user"
+msgstr "Maak die gebruikers stil"
+
+#: lib/subgroupnav.php:83
+#, php-format
+msgid "People %s subscribes to"
+msgstr ""
+
+#: lib/subgroupnav.php:91
+#, php-format
+msgid "People subscribed to %s"
+msgstr ""
+
+#: lib/subgroupnav.php:99
+#, php-format
+msgid "Groups %s is a member of"
+msgstr "Groepe waarvan %s lid is"
+
+#: lib/subgroupnav.php:105
+msgid "Invite"
+msgstr "Uitnodig"
+
+#: lib/subgroupnav.php:106
+#, php-format
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#: lib/subscriberspeopleselftagcloudsection.php:48
+#: lib/subscriptionspeopleselftagcloudsection.php:48
+msgid "People Tagcloud as self-tagged"
+msgstr ""
+
+#: lib/subscriberspeopletagcloudsection.php:48
+#: lib/subscriptionspeopletagcloudsection.php:48
+msgid "People Tagcloud as tagged"
+msgstr ""
+
+#: lib/tagcloudsection.php:56
+msgid "None"
+msgstr "Geen"
+
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Die opdatering van die avatar het gefaal."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Kon nie die profiel stoor nie."
+
+#: lib/topposterssection.php:74
+msgid "Top posters"
+msgstr "Mees aktiewe gebruikers"
+
+#: lib/unsandboxform.php:69
+msgid "Unsandbox"
+msgstr ""
+
+#: lib/unsandboxform.php:80
+msgid "Unsandbox this user"
+msgstr ""
+
+#: lib/unsilenceform.php:67
+msgid "Unsilence"
+msgstr ""
+
+#: lib/unsilenceform.php:78
+msgid "Unsilence this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
+msgid "Unsubscribe from this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:137
+msgid "Unsubscribe"
+msgstr ""
+
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr ""
+
+#: lib/userprofile.php:117
+msgid "Edit Avatar"
+msgstr "Wysig Avatar"
+
+#: lib/userprofile.php:234 lib/userprofile.php:248
+msgid "User actions"
+msgstr "Gebruikershandelinge"
+
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
+msgid "Edit profile settings"
+msgstr "Wysig profiel-instellings"
+
+#: lib/userprofile.php:264
+msgid "Edit"
+msgstr "Wysig"
+
+#: lib/userprofile.php:287
+msgid "Send a direct message to this user"
+msgstr "Stuur 'n direkte boodskap aan hierdie gebruiker"
+
+#: lib/userprofile.php:288
+msgid "Message"
+msgstr "Boodskap"
+
+#: lib/userprofile.php:326
+msgid "Moderate"
+msgstr "Modereer"
+
+#: lib/userprofile.php:364
+msgid "User role"
+msgstr "Gebruikersrol"
+
+#: lib/userprofile.php:366
+msgctxt "role"
+msgid "Administrator"
+msgstr "Administrateur"
+
+#: lib/userprofile.php:367
+msgctxt "role"
+msgid "Moderator"
+msgstr "Moderator"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
+msgid "a few seconds ago"
+msgstr "'n paar sekondes gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
+msgid "about a minute ago"
+msgstr "ongeveer 'n minuut gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
+#, php-format
+msgid "about %d minutes ago"
+msgstr "ongeveer %d minute gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
+msgid "about an hour ago"
+msgstr "ongeveer 'n uur gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
+#, php-format
+msgid "about %d hours ago"
+msgstr "ongeveer %d uur gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
+msgid "about a day ago"
+msgstr "ongeveer een dag gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
+#, php-format
+msgid "about %d days ago"
+msgstr "ongeveer %d dae gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
+msgid "about a month ago"
+msgstr "ongeveer een maand gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
+#, php-format
+msgid "about %d months ago"
+msgstr "ongeveer %d maande gelede"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
+msgid "about a year ago"
+msgstr "ongeveer een jaar gelede"
+
+#: lib/webcolor.php:82
+#, php-format
+msgid "%s is not a valid color!"
+msgstr "%s is nie 'n geldige kleur nie!"
+
+#: lib/webcolor.php:123
+#, php-format
+msgid "%s is not a valid color! Use 3 or 6 hex chars."
+msgstr ""
+"%s is nie 'n geldige kleur nie. Gebruik drie of ses heksadesimale karakters."
+
+#: lib/xmppmanager.php:403
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr ""
+"Boodskap is te lank. Die maksimum is %1$d karakters. U het %2$d karakters "
+"gestuur."
diff --git a/locale/ar/LC_MESSAGES/statusnet.po b/locale/ar/LC_MESSAGES/statusnet.po
index 56029bc82..e0d4701a3 100644
--- a/locale/ar/LC_MESSAGES/statusnet.po
+++ b/locale/ar/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Arabic
#
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: Meno25
# Author@translatewiki.net: OsamaK
# --
@@ -9,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:16+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:01+0000\n"
"Language-Team: Arabic\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ar\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Ù†Ùاذ"
@@ -51,7 +52,7 @@ msgstr "خاص"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
msgid "Make registration invitation only."
-msgstr ""
+msgstr "اجعل التسجيل عبر الدعوة Ùقط."
#. TRANS: Checkbox label for configuring site as invite only.
#: actions/accessadminpanel.php:176
@@ -73,84 +74,89 @@ msgstr "Ù…Ùغلق"
msgid "Save access settings"
msgstr "Ø­Ùظ إعدادت الوصول"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "احÙظ"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "لا صÙحة كهذه"
+msgid "No such page."
+msgstr "لا صÙحة كهذه."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "لا مستخدم كهذا."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s والأصدقاء, الصÙحة %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s والأصدقاء"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -158,77 +164,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
+"%s لم يض٠أي إشعارات إلى Ù…Ùضلته إلى الآن. لمّ لا [تسجل حسابًا](%%%%action."
+"register%%%%) وترسل شيئًا شيقًا ليضيÙÙ‡ إلى Ù…Ùضلته. :)"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "أنت والأصدقاء"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "لم يتم العثور على وسيلة API."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "تتطلب هذه الطريقة POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "تعذّر تحديث المستخدم."
@@ -237,7 +247,7 @@ msgstr "تعذّر تحديث المستخدم."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "ليس للمستخدم مل٠شخصي."
@@ -247,9 +257,9 @@ msgid "Could not save profile."
msgstr "لم يمكن Ø­Ùظ الملÙ."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -305,47 +315,48 @@ msgstr "رسالة مباشرة %s"
msgid "All the direct messages sent to %s"
msgstr "كل الرسائل المباشرة التي أرسلت إلى %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "لا نص ÙÙŠ الرسالة!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "لم ÙŠÙعثر على المستخدم المستلم."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "هذه الحالة Ù…Ùضلة بالÙعل."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "تعذّر إنشاء Ù…Ùضلة."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "تلك الحالة ليست Ù…Ùضلة."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "تعذّر حذ٠المÙضلة."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "لم يمكن Ø­Ùظ الملÙ."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -360,8 +371,8 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "لا يمكنك عدم متابعة Ù†Ùسك."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -372,115 +383,128 @@ msgstr "تعذّر تحديد المستخدم المصدر."
msgid "Could not find target user."
msgstr "تعذّر إيجاد المستخدم الهدÙ."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "الاسم المستعار مستخدم بالÙعل. جرّب اسمًا آخرًا."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "ليس اسمًا مستعارًا صحيحًا."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "الصÙحة الرئيسية ليست عنونًا صالحًا."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "الاسم الكامل طويل جدا (الأقصى 255 حرÙًا)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr ""
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr ""
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "كنيات كيرة! العدد الأقصى هو %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "كنية غير صالحة: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "كنية غير صالحة: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr ""
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "لم توجد المجموعة!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "المجموعة غير موجودة."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr ""
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعة %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "لست عضوًا ÙÙŠ هذه المجموعة"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "لم يمكن إزالة المستخدم %1$s من المجموعة %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "مجموعات %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "مجموعات %1$s التي %2$s عضو Ùيها."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "مجموعات %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "مجموعات %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ارÙع ملÙًا"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -491,17 +515,17 @@ msgid "Invalid token."
msgstr "حجم غير صالح."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -513,9 +537,8 @@ msgid "Invalid nickname / password!"
msgstr "اسم/كلمة سر غير صحيحة!"
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "خطأ قاعدة البيانات أثناء حذ٠المستخدم OAuth app"
+msgstr "خطأ ÙÙŠ قاعدة البيانات أثناء حذ٠مستخدم تطبيق OAuth."
#: actions/apioauthauthorize.php:185
#, fuzzy
@@ -534,12 +557,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr ""
@@ -559,20 +585,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "الحساب"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "الاسم المستعار"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "كلمة السر"
@@ -588,11 +616,11 @@ msgstr "اسمح"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -609,59 +637,63 @@ msgstr "لا يمكنك تكرار ملحوظتك الخاصة."
msgid "Already repeated that notice."
msgstr "كرر بالÙعل هذه الملاحظة."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Ø­ÙØ°ÙÙت الحالة."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "لا حالة ÙˆÙجدت بهذه الهوية."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
-msgstr ""
+msgstr "هذه طويلة جدًا. أطول حجم للإشعار %d حرÙًا."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "لم يوجد"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "لم يوجد."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "نسق غير مدعوم."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr ""
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr ""
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr ""
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "مسار %s الزمني العام"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -676,19 +708,19 @@ msgstr "كرر إلى %s"
msgid "Repeats of %s"
msgstr "تكرارات %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "الإشعارات الموسومة ب%s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr ""
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "لم يوجد."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
msgid "No such attachment."
@@ -709,8 +741,9 @@ msgstr "لا حجم."
msgid "Invalid size."
msgstr "حجم غير صالح."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ø£Ùتار"
@@ -720,10 +753,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "بإمكانك رÙع Ø£Ùتارك الشخصي. أقصى حجم للمل٠هو %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "المستخدم بدون مل٠مطابق."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -741,7 +774,7 @@ msgid "Preview"
msgstr "معاينة"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "احذÙ"
@@ -753,23 +786,27 @@ msgstr "ارÙع"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "لم ÙŠÙرÙع ملÙ."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "رÙÙع الأÙتار."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Ùشل تحديث الأÙتار."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ø­Ùذ٠الأÙتار."
@@ -777,38 +814,53 @@ msgstr "Ø­Ùذ٠الأÙتار."
msgid "You already blocked that user."
msgstr "لقد منعت مسبقا هذا المستخدم."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "امنع المستخدم"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "لا"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "لا تمنع هذا المستخدم"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "نعم"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "امنع هذا المستخدم"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Ùشل Ø­Ùظ معلومات المنع."
@@ -821,8 +873,8 @@ msgstr "Ùشل Ø­Ùظ معلومات المنع."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "لا مجموعة كهذه."
@@ -852,9 +904,11 @@ msgstr "ألغ٠المنع"
msgid "Unblock this user"
msgstr "ألغ٠منع هذا المستخدم"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "أرسل إلى %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -868,33 +922,43 @@ msgstr "لم يوجد رمز التأكيد."
msgid "That confirmation code is not for you!"
msgstr "رمز التأكيد ليس لك!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
+msgid "Unrecognized address type %s."
msgstr ""
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr ""
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "تعذّر تحديث المستخدم."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "تعذّر حذ٠تأكيد البريد الإلكتروني."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "أكد العنوان"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr ""
@@ -904,7 +968,7 @@ msgid "Conversation"
msgstr "محادثة"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "الإشعارات"
@@ -923,7 +987,7 @@ msgstr "أنت لست مالك هذا التطبيق."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -938,21 +1002,23 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "لا تحذ٠هذا التطبيق"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "احذ٠هذا التطبيق"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "لست والجًا."
@@ -975,11 +1041,13 @@ msgstr "احذ٠الإشعار"
msgid "Are you sure you want to delete this notice?"
msgstr "أمتأكد من أنك تريد حذ٠هذا الإشعار؟"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "لا تحذ٠هذا الإشعار"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "احذ٠هذا الإشعار"
@@ -1001,125 +1069,145 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "احذ٠هذا المستخدم"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "التصميم"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "مسار شعار غير صالح."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "السمة غير متوÙرة: %s"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "غيّر الشعار"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "شعار الموقع"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "غيّر السمة"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "سمة الموقع"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "سمة الموقع."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "سمة مخصصة"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "تغيير صورة الخلÙية"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "الخلÙية"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "بإمكانك رÙع صورة خلÙية للموقع. أقصى حجم للمل٠هو %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "مكّن"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "عطّل"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "مكّن صورة الخلÙية أو عطّلها."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "تغيير الألوان"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "المحتوى"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "الشريط الجانبي"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "النص"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "وصلات"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "متقدم"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS مخصصة"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "استخدم المبدئيات"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "استعد التصميمات المبدئية"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "ارجع إلى المبدئي"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "أرسل"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "احÙظ التصميم"
@@ -1171,7 +1259,7 @@ msgstr "الوص٠مطلوب."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr ""
+msgstr "المسار المصدر طويل جدًا."
#: actions/editapplication.php:200 actions/newapplication.php:185
msgid "Source URL is not valid."
@@ -1224,11 +1312,17 @@ msgstr "استخدم هذا النموذج لتعديل المجموعة."
msgid "description is too long (max %d chars)."
msgstr ""
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "كنية غير صالحة: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "تعذر تحديث المجموعة."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "تعذّر إنشاء الكنى."
@@ -1236,178 +1330,229 @@ msgstr "تعذّر إنشاء الكنى."
msgid "Options saved."
msgstr "Ø­ÙÙظت الخيارات."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "إعدادات البريد الإلكتروني"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "أدر كي٠تستلم البريد الإلكتروني من %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "العنوان"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "عنوان البريد الإلكتروني"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "عنوان البريد الإلكتروني المÙؤكد الحالي."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "أزل"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "ألغÙ"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "عنوان البريد الإلكتروني"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "عنوان البريد الإلكتروني، مثل \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "أضÙ"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "البريد الإلكتروني الوارد"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "أرسل بريدًا إلكترونيًا إلى هذا العنوان لترسل إشعارات جديدة."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "أنشئ عنوان بريد إلكتروني لترسل إليه؛ ألغ٠القديم."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "جديد"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "التÙضيلات"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "تÙضيلات البريد الإلكتروني"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "أرسل لي إشعارات بالاشتراكات الجديدة عبر البريد الإلكتروني."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "أرسل لي بريدًا إلكرتونيًا عندما يضي٠أحدهم إشعاري Ù…Ùضلة."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "أرسل لي بريدًا إلكترونيًا عندما يرسل لي أحد رسالة خاصة."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "أرسل لي بريدًا إلكترونيًا عندما يرسل لي أحد \"@-رد\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "اسمح لأصدقائي بتنبيهي ومراسلتي عبر البريد الإلكتروني."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "أريد أن أرسل الملاحظات عبر البريد الإلكتروني."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "انشر هوية مصغّرة لعنوان بريدي الإلكتروني."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Ø­ÙÙÙظت التÙضيلات."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Ø­ÙÙظت تÙضيلات البريد الإلكرتوني."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "لا عنوان بريد إلكتروني."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "ليس عنوان بريد صالح."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "هذا هو عنوان بريدك الإكتروني سابقًا."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "هذا البريد الإلكتروني ملك مستخدم آخر بالÙعل."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "تعذّر إدراج رمز التأكيد."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "هذا عنوان محادثة Ùورية خاطئ."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "هذا عنوان بريد إلكتروني خطأ."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Ø£Ùلغي التأكيد."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Ø£Ùلغي تأكيد البريد الإلكتروني."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "هذا ليس عنوان بريدك الإلكتروني."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "أزيل هذا العنوان."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "أزيل عنوان البريد الإلكتروني."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "لا عنوان بريد إلكتروني وارد."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "تعذّر تحديث سجل المستخدم."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1520,9 +1665,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "خطأ أثناء تحديث المل٠الشخصي البعيد"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "خطأ أثناء تحديث المل٠الشخصي البعيد."
#: actions/getfile.php:79
msgid "No such file."
@@ -1547,19 +1692,18 @@ msgid "You cannot grant user roles on this site."
msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "المستخدم مسكت من قبل."
+msgstr "لدى المستخدم هذا الدور من قبل."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "لا مل٠شخصي Ù…Ùحدّد."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "لا مل٠شخصي بهذه الهوية."
@@ -1580,11 +1724,11 @@ msgstr ""
msgid "User is not a member of group."
msgstr "المستخدم ليس عضوًا ÙÙŠ المجموعة."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "امنع المستخدم من المجموعة"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1592,15 +1736,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "لا تمنع هذا المستخدم من هذه المجموعة"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "امنع هذا المستخدم من هذه المجموعة"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "خطأ ÙÙŠ قاعدة البيانات أثناء منع المستخدم من المجموعة."
@@ -1641,10 +1787,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "بإمكانك رÙع صورة شعار مجموعتك. أقصى حجم للمل٠هو %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "المستخدم بدون مل٠مطابق."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1675,34 +1817,38 @@ msgstr "قائمة بمستخدمي هذه المجموعة."
msgid "Admin"
msgstr "إداري"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "امنع"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "اجعل المستخدم إداريًا ÙÙŠ المجموعة"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
-msgstr ""
+msgstr "اجعله إداريًا"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "اجعل هذا المستخدم إداريًا"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "مسار %s الزمني"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr ""
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "مجموعات"
@@ -1721,8 +1867,12 @@ msgid ""
"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
"%%%%)"
msgstr ""
+"تتيح لك مجموعات %%%%site.name%%%% إيجاد أشخاص ذوي اهتمامات مشتركة والتحدث "
+"معهم. تستطيع إرسال رسائل إلى جميع أعضاء المجموعة الآخرين بعد الانضمام إليها "
+"عبر الصياغة \"!اسم_المجموعة\". ألا ترى مجموعة تعجبك؟ جرّب [البحث عن مجموعة](%%"
+"%%action.groupsearch%%%%) أو [ابدأ مجموعتك!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "أنشئ مجموعة جديدة"
@@ -1732,6 +1882,8 @@ msgid ""
"Search for groups on %%site.name%% by their name, location, or description. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
+"ابحث عن مجموعات على %%site.name%% بدلالة الاسم أو الموقع أو الوصÙ. اÙصل "
+"عبارات البحث بمساÙات؛ ويجب أن تتكون تلك العبارات من 3 أحر٠أو أكثر."
#: actions/groupsearch.php:58
msgid "Group search"
@@ -1768,90 +1920,144 @@ msgstr "المستخدم ليس ممنوعًا من المجموعة."
msgid "Error removing the block."
msgstr "خطأ أثناء منع الحجب."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "إعدادات المراسلة الÙورية"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "المراسلة الÙورية غير متوÙرة."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "عنوان المراسلة الÙورية"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
-msgstr ""
+msgstr "عنوان جابر أو محادثة غوغل المعتمد حاليًا."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "عنوان المراسلة الÙورية"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "تÙضيلات المحادثة الÙورية"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Ø­ÙÙÙظت التÙضيلات."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "لا هوية جابر."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr ""
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "ليست هوية جابر صالحة"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr ""
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr ""
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "هذا عنوان محادثة Ùورية خاطئ."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "تعذّر حذ٠تأكيد البريد المراسلة الÙورية."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Ø£Ùلغي تأكيد المراسلة الÙورية."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "هذه ليست هويتك ÙÙŠ جابر."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "أزيل عنوان المراسلة الÙورية هذا."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1868,12 +2074,12 @@ msgstr "هذا صندوق بريدك الوارد، والذي يسرد رسائ
#: actions/invite.php:39
msgid "Invites have been disabled."
-msgstr ""
+msgstr "تم تعطيل الدعوات."
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "يجب أن تلج لتÙعدّل المجموعات."
#: actions/invite.php:72
#, php-format
@@ -1892,7 +2098,9 @@ msgstr "دعوة مستخدمين جدد"
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1939,12 +2147,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "أرسل"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -1984,7 +2194,9 @@ msgstr "يجب أن تلج لتنضم إلى مجموعة."
msgid "No nickname or ID."
msgstr "لا اسم مستعار."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s انضم للمجموعة %2$s"
@@ -1993,59 +2205,65 @@ msgstr "%1$s انضم للمجموعة %2$s"
msgid "You must be logged in to leave a group."
msgstr "يجب أن تلج لتغادر مجموعة."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "لست عضوا ÙÙŠ تلك المجموعة."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ترك المجموعة %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "والج بالÙعل."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "اسم المستخدم أو كلمة السر غير صحيحان."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "خطأ أثناء ضبط المستخدم. لست Ù…Ùصرحًا على الأرجح."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Ù„Ùج"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Ù„Ùج إلى الموقع"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "تذكّرني"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Ù„Ùج تلقائيًا ÙÙŠ المستقبل؛ هذا الخيار ليس Ù…Ùعدًا للحواسيب المشتركة!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "أنسيت كلمة السر؟"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
"لأسباب أمنية، من Ùضلك أعد إدخال اسم مستخدمك وكلمة سرك قبل تغيير إعداداتك."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Ù„Ùج باسم مستخدم وكلمة سر"
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
#: actions/makeadmin.php:92
@@ -2068,8 +2286,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "لم يمكن جعل %1$s إداريا للمجموعة %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "لا حالة حالية"
+msgid "No current status."
+msgstr "لا حالة جارية."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2103,12 +2321,12 @@ msgstr "استخدم هذا النموذج لإنشاء مجموعة جديدة.
msgid "New message"
msgstr "رسالة جديدة"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "لا يمكنك إرسال رسائل إلى هذا المستخدم."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "لا محتوى!"
@@ -2116,7 +2334,7 @@ msgstr "لا محتوى!"
msgid "No recipient specified."
msgstr "لا مستلم Ø­Ùدّد."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2130,7 +2348,7 @@ msgstr "Ø£Ùرسلت الرسالة"
msgid "Direct message to %s sent."
msgstr "رسالة مباشرة ل%s تم إرسالها."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "خطأ أجاكس"
@@ -2138,7 +2356,7 @@ msgstr "خطأ أجاكس"
msgid "New notice"
msgstr "إشعار جديد"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Ø£Ùرسل الإشعار"
@@ -2186,7 +2404,7 @@ msgstr ""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2227,11 +2445,11 @@ msgid "You are not a user of that application."
msgstr "لست مستخدما لهذا التطبيق."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2239,25 +2457,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
+msgstr "ليس للمستخدم مل٠شخصي."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "حالة %1$s ÙÙŠ يوم %2$s"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "نوع المحتوى "
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "ليس نسق بيانات مدعوم."
@@ -2360,7 +2584,7 @@ msgid "6 or more characters"
msgstr "6 أحر٠أو أكثر"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "أكّد"
@@ -2372,11 +2596,11 @@ msgstr "Ù†Ùس كلمة السر أعلاه"
msgid "Change"
msgstr "غيّر"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "يجب أن تكون كلمة السر 6 حرو٠أو أكثر."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "كلمتا السر غير متطابقتين."
@@ -2388,7 +2612,7 @@ msgstr "كلمة السر القديمة غير صحيحة"
msgid "Error saving user; invalid."
msgstr "خطأ أثناء Ø­Ùظ المستخدم؛ غير صالح."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "تعذّر Ø­Ùظ كلمة السر الجديدة."
@@ -2397,7 +2621,7 @@ msgid "Password saved."
msgstr "Ø­ÙÙظت كلمة السر."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "المسارات"
@@ -2407,23 +2631,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "لا يمكن قراءة دليل السمات: %s"
+msgid "Theme directory not readable: %s."
+msgstr "لا يمكن قراءة دليل السمات: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "لا يمكن الكتابة ÙÙŠ دليل الأÙتارات: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "لا يمكن الكتابة ÙÙŠ دليل الأÙتارات: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "لا يمكن الكتابة ÙÙŠ دليل الخلÙيات: %s"
+msgid "Background directory not writable: %s."
+msgstr "لا يمكن الكتابة ÙÙŠ دليل الخلÙيات: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "لا يمكن قراءة دليل المحليات: %s"
+msgid "Locales directory not readable: %s."
+msgstr "لا يمكن قراءة دليل المحليات: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2555,24 +2779,26 @@ msgid ""
"Search for people on %%site.name%% by their name, location, or interests. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
+"ابحث عن أشخاص على %%site.name%% بدلالة الاسم أو الموقع أو الاهتمامات. اÙصل "
+"عبارات البحث بمساÙات؛ ويجب أن تتكون تلك العبارات من 3 أحر٠أو أكثر."
#: actions/peoplesearch.php:58
msgid "People search"
msgstr "بحث ÙÙŠ الأشخاص"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "ليس وسم أشخاص صالح: %s"
+msgid "Not a valid people tag: %s."
+msgstr "ليس وسم أشخاص صالح: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "المستخدمون الذين وسموا أنÙسهم ب%1$s - الصÙحة %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "محتوى إشعار غير صالح"
+msgid "Invalid notice content."
+msgstr "محتوى إشعار غير صالح."
#: actions/postnotice.php:101
#, php-format
@@ -2596,42 +2822,43 @@ msgstr "معلومات المل٠الشخصي"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 حرÙًا إنجليزيًا أو رقمًا بدون نقاط أو مساÙات"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "الاسم الكامل"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "الصÙحة الرئيسية"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "مسار صÙحتك الرئيسية أو مدونتك أو ملÙÙƒ الشخصي على موقع آخر"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "تكلم عن Ù†Ùسك واهتمامتك ÙÙŠ %d حرÙ"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "صÙÙ Ù†Ùسك واهتماماتك"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "السيرة"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "الموقع"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "مكان تواجدك، على سبيل المثال \"المدينة، الولاية (أو المنطقة)، الدولة\""
@@ -2641,7 +2868,7 @@ msgstr "شارك مكاني الحالي عند إرسال إشعارات"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "الوسوم"
@@ -2672,7 +2899,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "اشترك تلقائيًا بأي شخص يشترك بي (ÙŠÙضل أن يستخدم لغير البشر)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr ""
@@ -2713,8 +2940,8 @@ msgstr "Ø­ÙÙظت الإعدادات."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "وراء حد الصÙحة (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "بعد حد الصÙحة (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2872,7 +3099,7 @@ msgstr "أعد ضبط كلمة السر"
msgid "Recover password"
msgstr "استعد كلمة السر"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Ø·Ùلبت استعادة كلمة السر"
@@ -2892,122 +3119,138 @@ msgstr "أعد الضبط"
msgid "Enter a nickname or email address."
msgstr "أدخل اسمًا مستعارًا أو عنوان بريد إلكتروني."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
-msgstr ""
+msgstr "لا يوجد عنوان بريد إلكتروني Ù…Ùسجّل لهذا المستخدم."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "خطأ أثناء Ø­Ùظ تأكيد العنوان."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "يجب أن تكون كلمة السر 6 محار٠أو أكثر."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr ""
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "خطأ أثناء ضبط المستخدم."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "عذرًا، الأشخاص المدعوون وحدهم يستطيعون التسجيل."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "عذرا، رمز دعوة غير صالح."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "نجح التسجيل"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "سجّل"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "لا ÙŠÙسمح بالتسجيل."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "عنوان البريد الإلكتروني موجود مسبقًا."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "اسم مستخدم أو كلمة سر غير صالحة."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 حرو٠أو أكثر. مطلوب."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Ù†Ùس كلمة السر أعلاه. مطلوب."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "البريد الإلكتروني"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "نصوصي وملÙاتي متاحة تحت رخصة "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "المشاع المبدع نسبة المنص٠إلى مؤلÙÙ‡ 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "جميع الحقوق محÙوظة."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3026,7 +3269,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3065,7 +3308,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "اشترك"
@@ -3079,7 +3322,7 @@ msgstr ""
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "هذا مل٠شخصي محلي! Ù„Ùج لتشترك."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
@@ -3101,7 +3344,7 @@ msgstr "لا يمكنك تكرار ملاحظتك الشخصية."
msgid "You already repeated that notice."
msgstr "أنت كررت هذه الملاحظة بالÙعل."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "مكرر"
@@ -3116,9 +3359,9 @@ msgid "Replies to %s"
msgstr "الردود على %s"
#: actions/replies.php:128
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s, page %2$d"
-msgstr "الردود على %s"
+msgstr "الردود على %1$sØŒ الصÙحة %2$d"
#: actions/replies.php:145
#, php-format
@@ -3139,7 +3382,7 @@ msgstr ""
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3152,8 +3395,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3162,16 +3405,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr ""
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "لا يمكنك إسكات المستخدمين على هذا الموقع."
+msgstr "لا يمكنك سحب أدوار المستخدمين على هذا الموقع."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "المستخدم بدون مل٠مطابق."
+msgstr "ليس للمستخدم هذا الدور."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "ستاتس نت"
@@ -3185,14 +3426,13 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "الجلسات"
#: actions/sessionsadminpanel.php:65
-#, fuzzy
msgid "Session settings for this StatusNet site."
-msgstr "الإعدادات الأساسية لموقع StatusNet هذا."
+msgstr "إعدادات جلسة موقع StatusNet هذا."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3223,26 +3463,30 @@ msgstr "يجب أن تكون مسجل الدخول لرؤية تطبيق."
msgid "Application profile"
msgstr ""
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "أيقونة"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "الاسم"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "المنظمة"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "الوصÙ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "إحصاءات"
@@ -3261,7 +3505,7 @@ msgstr ""
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "معلومات التطبيق"
#: actions/showapplication.php:263
msgid "Consumer key"
@@ -3290,14 +3534,13 @@ msgid ""
msgstr ""
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "أمتأكد من أنك تريد حذ٠هذا الإشعار؟"
+msgstr "أمتأكد من أنك تريد إعادة ضبط Ù…Ùتاح المستهلك وكلمة سره؟"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "إشعارات %s المÙÙضلة"
+msgstr "إشعارات %1$s المÙÙضلة، الصÙحة %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3325,20 +3568,20 @@ msgid ""
msgstr ""
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s لم يض٠أي إشعارات إلى Ù…Ùضلته إلى الآن. أرسل شيئًا شيقًا ليضيÙÙ‡ إلى "
"Ù…Ùضلته. :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s لم يض٠أي إشعارات إلى Ù…Ùضلته إلى الآن. لمّ لا [تسجل حسابًا](%%%%action."
"register%%%%) وترسل شيئًا شيقًا ليضيÙÙ‡ إلى Ù…Ùضلته. :)"
@@ -3353,71 +3596,71 @@ msgid "%s group"
msgstr "مجموعة %s"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "%1$s أعضاء المجموعة, الصÙحة %2$d"
+msgstr "مجموعة %1$sØŒ الصÙحة %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "مل٠المجموعة الشخصي"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "مسار"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "ملاحظة"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "الكنى"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr ""
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "الأعضاء"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(لا شيء)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "جميع الأعضاء"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
-msgstr "أنشئ"
+msgstr "أنشئت"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3432,7 +3675,7 @@ msgstr ""
"[انضم الآن](%%%%action.register%%%%) لتصبح عضوًا ÙÙŠ هذه المجموعة ومجموعات "
"أخرى عديدة! ([اقرأ المزيد](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3444,7 +3687,7 @@ msgstr ""
"en.wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]"
"(http://status.net/). يتشارك أعضاؤها رسائل قصيرة عن حياتهم واهتماماتهم. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "الإداريون"
@@ -3519,8 +3762,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3531,7 +3774,7 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-"لدى **%s** حساب على %%site.name%%ØŒ خدمة [التدوين المÙصغّر](http://en."
+"لدى **%s** حساب على %%%%site.name%%%%ØŒ خدمة [التدوين المÙصغّر](http://en."
"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]"
"(http://status.net/). يتشارك أعضاؤها رسائل قصيرة عن حياتهم واهتماماتهم. "
"[انضم الآن](%%%%action.register%%%%) لتتابع إشعارت **%s** وغيره! ([اقرأ "
@@ -3544,6 +3787,9 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
+"لدى **%s** حساب على %%%%site.name%%%%ØŒ خدمة [التدوين المÙصغّر](http://en."
+"wikipedia.org/wiki/Micro-blogging) المبنية على البرنامج الحر [StatusNet]"
+"(http://status.net/). "
#: actions/showstream.php:305
#, php-format
@@ -3576,11 +3822,11 @@ msgid "Unknown language \"%s\"."
msgstr "لغة غير معروÙØ© \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "حد النص الأدنى هو 140 حرÙًا."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "حد النص الأدنى 0 (غير محدود)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3664,12 +3910,11 @@ msgid "Edit site-wide message"
msgstr "عدّل رسالة الموقع العامة"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "مشكلة أثناء Ø­Ùظ الإشعار."
+msgstr "تعذّر Ø­Ùظ إشعار الموقع."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3684,101 +3929,156 @@ msgstr "نص إشعار عام للموقع (255 حر٠كحد أقصى؛ يسم
msgid "Save site notice"
msgstr "احÙظ إشعار الموقع"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "إعدادات الرسائل القصيرة"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "لا يمكنك استلام رسائل قصيرة عبر البريد الإلكرتوني من %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "الرسائل القصيرة غير متوÙرة."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "عنوان الرسائل القصيرة"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "رمز التأكيد"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "أكّد"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "رقم هات٠SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
-msgstr ""
+msgstr "رقم الهات٠بدون شرطات أو مساÙات مع رمز المنطقة"
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "تÙضيلات الرسائل القصيرة"
-#: actions/smssettings.php:174
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Ø­ÙÙظت تÙضيلات الرسائل القصيرة."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "لا رقم هاتÙ."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "إن رقم التأكيد هذا خاطئ."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Ø£Ùلغي تأكيد الرسائل القصيرة."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "هذا ليس رقم هاتÙÙƒ."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "تمت إزالة رقم هات٠الرسائل القصيرة."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "لم تدخل رمزًا"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3800,7 +4100,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3840,8 +4140,8 @@ msgstr "اذ٠إعدادت الموقع"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "تعذّر Ø­Ùظ الاشتراك."
@@ -3932,18 +4232,18 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr ""
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "جابر"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "رسائل قصيرة"
#: actions/tag.php:69
-#, fuzzy, php-format
+#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr "الإشعارات الموسومة ب%s"
+msgstr "الإشعارات الموسومة ب%sØŒ الصÙحة %2$d"
#: actions/tag.php:87
#, php-format
@@ -3969,12 +4269,12 @@ msgstr "لا مدخل هوية."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "مل٠المستخدم الشخصي"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "صورة"
@@ -4005,10 +4305,6 @@ msgstr ""
msgid "No such tag."
msgstr "لا وسم كهذا."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "لم تمنع هذا المستخدم."
@@ -4022,12 +4318,13 @@ msgid "User is not silenced."
msgstr "المستخدم ليس Ù…Ùسكتًا."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+#, fuzzy
+msgid "No profile ID in request."
+msgstr "لا طلب استيثاق."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
-msgstr ""
+msgstr "غير مشترك"
#: actions/updateprofile.php:64 actions/userauthorization.php:337
#, php-format
@@ -4058,7 +4355,8 @@ msgstr "رسالة ترحيب غير صالحة. أقصى طول هو 255 حرÙ
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "المل٠الشخصي"
@@ -4114,7 +4412,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "الرخصة"
@@ -4210,37 +4508,43 @@ msgstr "خصّص أسلوب عرض ملÙÙƒ بصورة خلÙية ومخطط Ø£Ù
msgid "Enjoy your hotdog!"
msgstr "استمتع بالنقانق!"
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "%1$s أعضاء المجموعة, الصÙحة %2$d"
+msgstr "مجموعات %1$sØŒ الصÙحة %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "ابحث عن المزيد من المجموعات"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s ليس عضوًا ÙÙŠ أي مجموعة."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
-msgstr ""
+msgstr "جرّب [البحث عن مجموعات](%%action.groupsearch%%) والانضمام إليها."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "ستاتس نت %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4249,11 +4553,11 @@ msgstr ""
"هذا الموقع يشغله %1$s النسخة %2$s، حقوق النشر 2008-2010 StatusNet, Inc "
"ومساهموها."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "المساهمون"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4261,7 +4565,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4269,385 +4573,516 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "الملحقات"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "النسخة"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "المؤلÙ(ون)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "حجم غير صالح."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "الانضمام للمجموعة Ùشل."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "ليس جزءا من المجموعة."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "ترك المجموعة Ùشل."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "تعذر تحديث المجموعة المحلية."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "لم يمكن إنشاء توكن الولوج ل%s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "أنت ممنوع من إرسال رسائل مباشرة."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "تعذّر إدراج الرسالة."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "خطأ قاعدة البيانات أثناء إدخال المستخدم OAuth app"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "مشكلة ÙÙŠ Ø­Ùظ الإشعار. طويل جدًا."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "مشكلة ÙÙŠ Ø­Ùظ الإشعار. مستخدم غير معروÙ."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "مشكلة أثناء Ø­Ùظ الإشعار."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "مشكلة أثناء Ø­Ùظ الإشعار."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "آر تي @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ليس للمستخدم مل٠شخصي."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "تعذّر Ø­Ùظ إشعار الموقع."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Ù…Ùشترك أصلا!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "لقد منعك المستخدم."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "غير مشترك!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "لم يمكن حذ٠اشتراك ذاتي."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "تعذّر حذ٠الاشتراك."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "تعذّر حذ٠الاشتراك."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "أهلا بكم ÙÙŠ %1$s يا @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "تعذّر إنشاء المجموعة."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "تعذّر ضبط عضوية المجموعة."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "تعذّر ضبط عضوية المجموعة."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "تعذّر Ø­Ùظ الاشتراك."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "غيّر إعدادات ملÙÙƒ الشخصي"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "ارÙع Ø£Ùتارًا"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "غير كلمة سرّك"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "غير أسلوب التعامل مع البريد الإلكتروني"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "صمّم ملÙÙƒ الشخصي"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "أخرى"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "خيارات أخرى"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "أخرى"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "صÙحة غير Ù…Ùعنونة"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "المل٠الشخصي ومسار الأصدقاء الزمني"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "الصÙحة الشخصية"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "غير بريدك الإلكتروني وكلمة سرّك وأÙتارك وملÙÙƒ الشخصي"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "اتصالات"
+msgstr "اتصل بالخدمات"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "اتصل"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "غيّر ضبط الموقع"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "إداري"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "ادع٠أصدقائك وزملائك للانضمام إليك ÙÙŠ %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "ادعÙ"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "اخرج من الموقع"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "اخرج"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "أنشئ حسابًا"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "سجّل"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Ù„Ùج إلى الموقع"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Ù„Ùج"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "ساعدني!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "مساعدة"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "ابحث عن أشخاص أو نصوص"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "ابحث"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "إشعار الموقع"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "المشاهدات المحلية"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "إشعار الصÙحة"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "مساعدة"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "عن"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "الأسئلة المكررة"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "الشروط"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "خصوصية"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "المصدر"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "اتصل"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "الجسر"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "رخصة برنامج StatusNet"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** خدمة تدوين مصغر يقدمها لك [%%site.broughtby%%](%%site."
"broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr ""
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4658,67 +5093,81 @@ msgstr ""
"المتوÙر تحت [رخصة غنو Ø£Ùيرو العمومية](http://www.fsf.org/licensing/licenses/"
"agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "رخصة محتوى الموقع"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:853
-msgid "license."
-msgstr "الرخصة."
-
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "بعد"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "قبل"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "لا يمكنك إجراء تغييرات على هذا الموقع."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "التغييرات لهذه اللوحة غير مسموح بها."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4728,152 +5177,191 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "تعذّر حذ٠إعدادات التصميم."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "ضبط الموقع الأساسي"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "الموقع"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "ضبط التصميم"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "التصميم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "ضبط المستخدم"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "المستخدم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "ضبط الحساب"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "ضبط المسارات"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "ضبط الجلسات"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "عدّل إشعار الموقع"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "ضبط المسارات"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "عدّل التطبيق"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "أيقونة لهذا التطبيق"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr ""
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "ص٠تطبيقك"
-#: lib/applicationeditform.php:216
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr "مسار صÙحة هذا التطبيق"
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
msgid "Source URL"
msgstr "مسار المصدر"
-#: lib/applicationeditform.php:218
-msgid "URL of the homepage of this application"
-msgstr ""
-
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr ""
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "متصÙØ­"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "ألغÙ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "اسحب"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "مرÙقات"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "المؤلÙ"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "المزود"
@@ -4885,45 +5373,64 @@ msgstr ""
msgid "Tags for this attachment"
msgstr "وسوم هذا المرÙÙ‚"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "تغيير كلمة السر Ùشل"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "تغيير كلمة السر غير مسموح به"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "نتائج الأمر"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "اكتمل الأمر"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Ùشل الأمر"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "الملاحظة بهذا الرقم غير موجودة"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "ليس للمستخدم إشعار أخير"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "لم يمكن إيجاد مستخدم بالاسم %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "لم يمكن إيجاد مستخدم بالاسم %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "التنبيه تم إرساله إلى %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -4934,169 +5441,173 @@ msgstr ""
"المشتركون: %2$s\n"
"الإشعارات: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "الملاحظة بهذا الرقم غير موجودة"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "ليس للمستخدم إشعار أخير"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "أنت بالÙعل عضو ÙÙŠ هذه المجموعة"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "لم يمكن ضم المستخدم %s إلى المجموعة %s"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s انضم إلى مجموعة %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "لم يمكن إزالة المستخدم %s من المجموعة %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "لم يمكن ضم المستخدم %1$s إلى المجموعة %2$s."
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s ترك المجموعة %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "لم يمكن إزالة المستخدم %1$s من المجموعة %2$s."
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "الاسم الكامل: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "الموقع: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "الصÙحة الرئيسية: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "عن: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "رسالة مباشرة إلى %s تم إرسالها"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "لا يمكنك تكرار ملاحظتك الخاصة"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "كرر بالÙعل هذا الإشعار"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "الإشعار من %s مكرر"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "خطأ تكرار الإشعار."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "رÙد على رسالة %s"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "خطأ أثناء Ø­Ùظ الإشعار."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "لا مستخدم كهذا"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Ù…Ùشترك ب%s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "الأمر لم ÙŠÙجهزّ بعد."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "الإشعار Ù…ÙØ·ÙØ£."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "تعذّر إطÙاء الإشعارات."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "الإشعار يعمل."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "تعذّر تشغيل الإشعار."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "ألغ٠الاشتراك"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "لست Ù…Ùشتركًا بأي أحد."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "لست مشتركًا بأحد."
@@ -5106,11 +5617,11 @@ msgstr[3] "أنت مشترك بهؤلاء الأشخاص:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "لا أحد مشترك بك."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "لا أحد مشترك بك."
@@ -5120,11 +5631,11 @@ msgstr[3] "هؤلاء الأشخاص مشتركون بك:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "لست عضوًا ÙÙŠ أي مجموعة."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "لست عضوًا ÙÙŠ أي مجموعة."
@@ -5134,7 +5645,7 @@ msgstr[3] "أنت عضو ÙÙŠ هذه المجموعات:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5175,20 +5686,58 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
-
-#: lib/common.php:148
+"الأوامر:\n"
+"on - شغّل الإشعار\n"
+"off - أطÙئ الإشعار\n"
+"help - أظهر هذه المساعدة\n"
+"follow <nickname> - اشترك بالمستخدم\n"
+"groups - اسرد المجموعات التي أنا عضو Ùيها\n"
+"subscriptions - اسرد الذين أتابعهم\n"
+"subscribers - اسرد الذين يتابعونني\n"
+"leave <nickname> - ألغ٠الاشتراك بمستخدم\n"
+"d <nickname> <text> - وجّه رسالة مباشرة إلى مستخدم\n"
+"get <nickname> - اجلب آخر رسالة من مستخدم\n"
+"whois <nickname> - اجلب معلومات مل٠المستخدم\n"
+"lose <nickname> - أجبر المستخدم على عدم تتبعك\n"
+"fav <nickname> - اجعل آخر إشعار من المستخدم Ù…Ùضلًا\n"
+"fav #<notice_id> - اجعل الإشعار ذا رقم الهوية المعطى Ù…Ùضلا\n"
+"repeat #<notice_id> - كرّر الإشعار ذا رقم الهوية المعطى\n"
+"repeat <nickname> - كرّر آخر إشعار من المستخدم\n"
+"reply #<notice_id> - رÙد على الإشعار ذي رقم الهوية المعطى\n"
+"reply <nickname> - رÙد على آخر إشعار من المستخدم\n"
+"join <group> - انضم إلى مجموعة\n"
+"login - اجلب وصلة الولوج إلى واجهة الوب\n"
+"drop <group> - اترك المجموعة\n"
+"stats - اجلب إحصاءاتك\n"
+"stop - مثل 'off'\n"
+"quit - مثل 'off'\n"
+"sub <nickname> - مثل 'follow'\n"
+"unsub <nickname> - مثل 'leave'\n"
+"last <nickname> - مثل 'get'\n"
+"on <nickname> - لم يطبق بعد.\n"
+"off <nickname> - لم يطبق بعد.\n"
+"nudge <nickname> - ذكّر مستخدمًا بإشعار أرسلته.\n"
+"invite <phone number> - لم يطبق بعد.\n"
+"track <word> - لم يطبق بعد.\n"
+"untrack <word> - لم يطبق بعد.\n"
+"track off - لم يطبق بعد.\n"
+"untrack all - لم يطبق بعد.\n"
+"tracks - لم يطبق بعد.\n"
+"tracking - لم يطبق بعد.\n"
+
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr ""
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "اذهب إلى المÙثبّت."
@@ -5202,7 +5751,7 @@ msgstr ""
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
-msgstr ""
+msgstr "تحديثات عبر الرسائل القصيرة"
#: lib/connectsettingsaction.php:120
msgid "Connections"
@@ -5296,7 +5845,7 @@ msgstr ""
#: lib/groupeditform.php:168
msgid "Describe the group or topic"
-msgstr ""
+msgstr "صÙ٠المجموعة أو الموضوع"
#: lib/groupeditform.php:170
#, php-format
@@ -5356,55 +5905,56 @@ msgstr "المجموعات الأكثر مرسلات"
#: lib/grouptagcloudsection.php:56
#, php-format
msgid "Tags in %s group's notices"
-msgstr "وسوم ÙÙŠ إشعارات المجموعة %s"
+msgstr "وسوم ÙÙŠ إشعارات مجموعة %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "هذا المل٠كبير جدًا. إن أقصى حجم للملÙات هو %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
-
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
+msgid "Not an image or corrupt file."
msgstr ""
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr ""
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "نوع مل٠غير معروÙ"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "ميجابايت"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "كيلوبايت"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "مصدر صندوق وارد غير معرو٠%d."
@@ -5425,11 +5975,13 @@ msgstr "Ù„Ùج باسم مستخدم وكلمة سر"
msgid "Sign up for a new account"
msgstr "سجّل حسابًا جديدًا"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "تأكيد عنوان البريد الإلكتروني"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5458,12 +6010,21 @@ msgstr ""
"شكرًا على الوقت الذي أمضيته، \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s يستمع الآن إلى إشعاراتك على %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5488,17 +6049,20 @@ msgstr ""
"----\n"
"غيّر خيارات البريد الإلكتروني والإشعار ÙÙŠ %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "السيرة: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "عنوان بريد إلكتروني جديد للإرسال إلى %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5511,21 +6075,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "حالة %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "تأكيد الرسالة القصيرة"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "لقد نبهك %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5541,12 +6115,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "رسالة خاصة جديدة من %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5565,12 +6141,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "لقد أضا٠%s (@%s) إشعارك إلى Ù…Ùضلاته"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5591,12 +6169,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "لقد أرسل %s (@%s) إشعارًا إليك"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5609,6 +6197,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5621,7 +6221,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "من"
@@ -5674,26 +6274,26 @@ msgstr "Ùشل ÙÙŠ كتابة المل٠إلى القرص."
#: lib/mediafile.php:165
msgid "File upload stopped by extension."
-msgstr ""
+msgstr "أوقÙت إضاÙØ© رÙع الملÙ."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "لم يمكن تحديد نوع MIME للملÙ."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5746,48 +6346,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "Ø´"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "ج"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "ر"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "غ"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "ÙÙŠ"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "ÙÙŠ السياق"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "مكرر بواسطة"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "رÙد على هذا الإشعار"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "رÙد"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "الإشعار مكرر"
@@ -5811,6 +6415,10 @@ msgstr "خطأ أثناء إدراج المل٠الشخصي الجديد"
msgid "Error inserting avatar"
msgstr "خطأ ÙÙŠ إدراج الأÙتار"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "خطأ أثناء تحديث المل٠الشخصي البعيد"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "خطأ أثناء إدراج المل٠الشخصي البعيد"
@@ -5856,11 +6464,11 @@ msgstr "رسائلك المÙرسلة"
msgid "Tags in %s's notices"
msgstr "وسوم ÙÙŠ إشعارات %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "غير معروÙØ©"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "الاشتراكات"
@@ -5868,31 +6476,32 @@ msgstr "الاشتراكات"
msgid "All subscriptions"
msgstr "جميع الاشتراكات"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "المشتركون"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "جميع المشتركين"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "هوية المستخدم"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "عضو منذ"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "المÙعدّل اليومي"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "كل المجموعات"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "لا مدخلات رجوع إلى."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -5916,11 +6525,19 @@ msgstr "Ù…Ùختارون"
msgid "Popular"
msgstr "محبوبة"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "لا مدخلات رجوع إلى."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "أأكرّر هذا الإشعار؟ّ"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "نعم"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "كرّر هذا الإشعار"
@@ -5929,7 +6546,7 @@ msgstr "كرّر هذا الإشعار"
msgid "Revoke the \"%s\" role from this user"
msgstr "امنع هذا المستخدم من هذه المجموعة"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6027,6 +6644,50 @@ msgstr ""
msgid "None"
msgstr "لا شيء"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Ùشل تحديث الأÙتار."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "خطأ أثناء تحديث المل٠الشخصي البعيد"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "أعلى المرسلين"
@@ -6055,90 +6716,108 @@ msgstr "ألغ٠الاشتراك مع هذا المستخدم"
msgid "Unsubscribe"
msgstr "ألغ٠الاشتراك"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "ليس للمستخدم مل٠شخصي."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "عدّل الأÙتار"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "تصرÙات المستخدم"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "حذ٠المستخدم قيد التنÙيذ..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "عدّل إعدادات المل٠الشخصي"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "عدّل"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "أرسل رسالة مباشرة إلى هذا المستخدم"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "رسالة"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
-msgstr ""
+msgstr "راقب"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "مل٠المستخدم الشخصي"
+msgstr "دور المستخدم"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "إداري"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "مراقب"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "قبل لحظات قليلة"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "قبل دقيقة تقريبًا"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr ""
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "قبل ساعة تقريبًا"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr ""
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "قبل يوم تقريبا"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr ""
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "قبل شهر تقريبًا"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr ""
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "قبل سنة تقريبًا"
@@ -6152,7 +6831,7 @@ msgstr "%s ليس لونًا صحيحًا!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/arz/LC_MESSAGES/statusnet.po b/locale/arz/LC_MESSAGES/statusnet.po
index aaf1d89bd..0b06f2817 100644
--- a/locale/arz/LC_MESSAGES/statusnet.po
+++ b/locale/arz/LC_MESSAGES/statusnet.po
@@ -10,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:19+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:02+0000\n"
"Language-Team: Egyptian Spoken Arabic\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: arz\n"
"X-Message-Group: out-statusnet\n"
@@ -24,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Ù†Ùاذ"
@@ -78,85 +78,91 @@ msgstr "Ù…Ùغلق"
msgid "Save access settings"
msgstr "اذ٠إعدادت الموقع"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "أرسل"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+#, fuzzy
+msgid "No such page."
msgstr "لا صÙحه كهذه"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "لا مستخدم كهذا."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s Ùˆ الصحاب, صÙحه %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s والأصدقاء"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -164,77 +170,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
+"%s لم يض٠أى إشعارات إلى Ù…Ùضلته إلى الآن. لمّ لا [تسجل حسابًا](%%%%action."
+"register%%%%) وترسل شيئًا شيقًا ليضيÙÙ‡ إلى Ù…Ùضلته. :)"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "أنت والأصدقاء"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "الـ API method مش موجوده."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "تتطلب هذه الطريقه POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "تعذّر تحديث المستخدم."
@@ -243,7 +253,7 @@ msgstr "تعذّر تحديث المستخدم."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "ليس للمستخدم مل٠شخصى."
@@ -253,9 +263,9 @@ msgid "Could not save profile."
msgstr "لم يمكن Ø­Ùظ الملÙ."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -311,47 +321,48 @@ msgstr "رساله مباشره %s"
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "لا نص ÙÙ‰ الرسالة!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "لم ÙŠÙعثر على المستخدم المستلم."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "الحاله دى موجوده Ùعلا ÙÙ‰ التÙضيلات."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "تعذّر إنشاء Ù…Ùضله."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "الحاله دى مش محطوطه ÙÙ‰ التÙضيلات."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "تعذّر حذ٠المÙضله."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "لم يمكن Ø­Ùظ الملÙ."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -366,8 +377,8 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "ما ينÙعش عدم متابعة Ù†Ùسك."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -378,115 +389,129 @@ msgstr ""
msgid "Could not find target user."
msgstr "تعذّر إيجاد المستخدم الهدÙ."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr ""
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "ليس اسمًا مستعارًا صحيحًا."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "الصÙحه الرئيسيه ليست عنونًا صالحًا."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "الاسم الكامل طويل جدا (الأقصى 255 حرÙًا)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr ""
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr ""
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
msgstr "كنيه غير صالحة: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr ""
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#, fuzzy
+msgid "Group not found."
msgstr "لم توجد المجموعة!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr ""
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "ما Ù†Ùعش يضم %1$s للجروپ %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr ""
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "ما Ù†Ùعش يتشال اليوزر %1$s من الجروپ %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "مجموعات %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "المجموعات التى %s عضو Ùيها"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "مجموعات %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "مجموعات %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ارÙع ملÙًا"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -497,17 +522,17 @@ msgid "Invalid token."
msgstr "حجم غير صالح."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -540,12 +565,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr ""
@@ -565,20 +593,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "الحساب"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "الاسم المستعار"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "كلمه السر"
@@ -594,11 +624,11 @@ msgstr "اسمح"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -615,59 +645,63 @@ msgstr "مش ناÙعه تتكرر الملاحظتك بتاعتك."
msgid "Already repeated that notice."
msgstr "الملاحظه اتكررت Ùعلا."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Ø­ÙØ°ÙÙت الحاله."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "لم يوجد"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "لم يوجد."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "نسق غير مدعوم."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr ""
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr ""
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr ""
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "مسار %s الزمنى العام"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -682,19 +716,19 @@ msgstr "كرر إلى %s"
msgid "Repeats of %s"
msgstr "تكرارات %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "الإشعارات الموسومه ب%s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr ""
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "لم يوجد."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
msgid "No such attachment."
@@ -715,8 +749,9 @@ msgstr "لا حجم."
msgid "Invalid size."
msgstr "حجم غير صالح."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ø£Ùتار"
@@ -726,10 +761,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "يوزر من-غير پروÙايل زيّه."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -747,7 +782,7 @@ msgid "Preview"
msgstr "عاين"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "احذÙ"
@@ -759,23 +794,28 @@ msgstr "ارÙع"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "لا مل٠شخصى Ù…Ùحدّد."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "رÙÙع الأÙتار."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Ùشل تحديث الأÙتار."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ø­Ùذ٠الأÙتار."
@@ -783,38 +823,55 @@ msgstr "Ø­Ùذ٠الأÙتار."
msgid "You already blocked that user."
msgstr "لقد منعت مسبقا هذا المستخدم."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "امنع المستخدم"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "لا"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "لا تمنع هذا المستخدم"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "نعم"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "امنع هذا المستخدم"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Ùشل Ø­Ùظ معلومات المنع."
@@ -827,8 +884,8 @@ msgstr "Ùشل Ø­Ùظ معلومات المنع."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "لا مجموعه كهذه."
@@ -858,9 +915,11 @@ msgstr "ألغ٠المنع"
msgid "Unblock this user"
msgstr "ألغ٠منع هذا المستخدم"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "مجموعات %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -874,33 +933,43 @@ msgstr "لم يوجد رمز التأكيد."
msgid "That confirmation code is not for you!"
msgstr "رمز التأكيد ليس لك!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
+msgid "Unrecognized address type %s."
msgstr ""
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr ""
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "تعذّر تحديث المستخدم."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "تعذّر حذ٠تأكيد البريد الإلكترونى."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "اكد العنوان"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr ""
@@ -910,7 +979,7 @@ msgid "Conversation"
msgstr "محادثة"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "الإشعارات"
@@ -931,7 +1000,7 @@ msgstr "انت مش بتملك الapplication دى."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -947,23 +1016,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "لا تحذ٠هذا الإشعار"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "احذ٠هذا الإشعار"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "لست والجًا."
@@ -986,11 +1057,13 @@ msgstr "احذ٠الإشعار"
msgid "Are you sure you want to delete this notice?"
msgstr "أمتأكد من أنك تريد حذ٠هذا الإشعار؟"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "لا تحذ٠هذا الإشعار"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "احذ٠هذا الإشعار"
@@ -1012,125 +1085,146 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "احذ٠هذا المستخدم"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "التصميم"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "مسار شعار غير صالح."
-#: actions/designadminpanel.php:279
-#, php-format
-msgid "Theme not available: %s"
+#: actions/designadminpanel.php:322
+#, fuzzy, php-format
+msgid "Theme not available: %s."
msgstr "السمه غير متوÙرة: %s"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "غيّر الشعار"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "شعار الموقع"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "غيّر السمة"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "سمه الموقع"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "سمه الموقع."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "سمه الموقع"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "تغيير صوره الخلÙية"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "الخلÙية"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr ""
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "مكّن"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "عطّل"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "مكّن صوره الخلÙيه أو عطّلها."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "تغيير الألوان"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "المحتوى"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "الشريط الجانبي"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "النص"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "وصلات"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "استخدم المبدئيات"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "استعد التصميمات المبدئية"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "ارجع إلى المبدئي"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "أرسل"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "احÙظ التصميم"
@@ -1236,11 +1330,17 @@ msgstr "استخدم هذا النموذج لتعديل المجموعه."
msgid "description is too long (max %d chars)."
msgstr ""
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "كنيه غير صالحة: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "تعذر تحديث المجموعه."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "تعذّر إنشاء الكنى."
@@ -1248,178 +1348,238 @@ msgstr "تعذّر إنشاء الكنى."
msgid "Options saved."
msgstr "Ø­ÙÙظت الخيارات."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "تظبيطات الايميل"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "أدر كي٠تستلم البريد الإلكترونى من %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "العنوان"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "عنوان الايميل"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "عنوان البريد الإلكترونى المÙؤكد الحالى."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "أزل"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "ألغÙ"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "عنوان الايميل"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "عنوان البريد الإلكترونى، مثل \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "أضÙ"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "البريد الإلكترونى الوارد"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "أرسل بريدًا إلكترونيًا إلى هذا العنوان لترسل إشعارات جديده."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "أنشئ عنوان بريد إلكترونى لترسل إليه؛ ألغ٠القديم."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "جديد"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "التÙضيلات"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "أرسل لى إشعارات بالاشتراكات الجديده عبر البريد الإلكترونى."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "أرسل لى بريدًا إلكرتونيًا عندما يضي٠أحدهم إشعارى Ù…Ùضله."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "أرسل لى بريدًا إلكترونيًا عندما يرسل لى أحدهم \"@-رد\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "أريد أن أرسل الملاحظات عبر البريد الإلكترونى."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Ø­ÙÙÙظت التÙضيلات."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "لا عنوان بريد إلكترونى."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "ليس عنوان بريد صالح."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "هذا هو عنوان بريدك الإكترونى سابقًا."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "هذا البريد الإلكترونى ملك مستخدم آخر بالÙعل."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "تعذّر إدراج رمز التأكيد."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "هذا عنوان محادثه Ùوريه خاطئ."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Ø£Ùلغى التأكيد."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "هذا ليس عنوان بريدك الإلكترونى."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "أزيل هذا العنوان."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1532,8 +1692,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "خطأ أثناء تحديث المل٠الشخصى البعيد"
#: actions/getfile.php:79
@@ -1565,13 +1726,13 @@ msgstr "المستخدم مسكت من قبل."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "لا مل٠شخصى Ù…Ùحدّد."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "لا مل٠شخصى بهذه الهويه."
@@ -1592,11 +1753,11 @@ msgstr ""
msgid "User is not a member of group."
msgstr "المستخدم ليس عضوًا ÙÙ‰ المجموعه."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "امنع المستخدم من المجموعة"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1604,15 +1765,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "لا تمنع هذا المستخدم من هذه المجموعة"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "امنع هذا المستخدم من هذه المجموعة"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "خطأ ÙÙ‰ قاعده البيانات أثناء منع المستخدم من المجموعه."
@@ -1653,10 +1816,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "يوزر من-غير پروÙايل زيّه."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1687,34 +1846,38 @@ msgstr "قائمه بمستخدمى هذه المجموعه."
msgid "Admin"
msgstr "إداري"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "امنع"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "اجعل هذا المستخدم إداريًا"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "مسار %s الزمني"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr ""
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "مجموعات"
@@ -1734,7 +1897,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "أنشئ مجموعه جديدة"
@@ -1780,90 +1943,148 @@ msgstr "المستخدم ليس ممنوعًا من المجموعه."
msgid "Error removing the block."
msgstr "خطأ أثناء منع الحجب."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "تظبيطات بعت الرسايل الÙوريه"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "المراسله الÙوريه غير متوÙره."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "عنوان الرساله الÙوريه"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "عنوان الرساله الÙوريه"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "التÙضيلات"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Ø­ÙÙÙظت التÙضيلات."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "لا هويه جابر."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr ""
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "ليست هويه جابر صالحة"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr ""
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr ""
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "هذا عنوان محادثه Ùوريه خاطئ."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "تعذّر حذ٠تأكيد البريد الإلكترونى."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Ø£Ùلغى التأكيد."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "هذه ليست هويتك ÙÙ‰ جابر."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "أزيل هذا العنوان."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1883,9 +2104,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "يجب أن تلج لتÙعدّل المجموعات."
#: actions/invite.php:72
#, php-format
@@ -1904,7 +2125,9 @@ msgstr "دعوه مستخدمين جدد"
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1952,12 +2175,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "أرسل"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -1997,7 +2222,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "لا اسم مستعار."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s دخل جروپ %2$s"
@@ -2006,58 +2233,64 @@ msgstr "%1$s دخل جروپ %2$s"
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "لست عضوا ÙÙ‰ تلك المجموعه."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ساب جروپ %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "والج بالÙعل."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "اسم المستخدم أو كلمه السر غير صحيحان."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "خطأ أثناء ضبط المستخدم. لست Ù…Ùصرحًا على الأرجح."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Ù„Ùج"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Ù„Ùج إلى الموقع"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "تذكّرني"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "أنسيت كلمه السر؟"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "اسم المستخدم أو كلمه السر غير صحيحان."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
#: actions/makeadmin.php:92
@@ -2080,7 +2313,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "%1$s مش ناÙع يبقى ادارى لجروپ %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "لا حاله حالية"
#: actions/newapplication.php:52
@@ -2116,12 +2350,12 @@ msgstr "استخدم هذا النموذج لإنشاء مجموعه جديده.
msgid "New message"
msgstr "رساله جديدة"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "لا محتوى!"
@@ -2129,7 +2363,7 @@ msgstr "لا محتوى!"
msgid "No recipient specified."
msgstr "لا مستلم Ø­Ùدّد."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2143,7 +2377,7 @@ msgstr "Ø£Ùرسلت الرسالة"
msgid "Direct message to %s sent."
msgstr "رساله مباشره اتبعتت لـ%s."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "خطأ أجاكس"
@@ -2151,7 +2385,7 @@ msgstr "خطأ أجاكس"
msgid "New notice"
msgstr "إشعار جديد"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Ø£Ùرسل الإشعار"
@@ -2197,7 +2431,7 @@ msgstr ""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2238,11 +2472,11 @@ msgid "You are not a user of that application."
msgstr "انت مش يوزر للapplication دى."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2250,25 +2484,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
+msgstr "ليس للمستخدم مل٠شخصى."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr ""
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "نوع المحتوى "
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr " مش نظام بيانات مدعوم."
@@ -2371,7 +2611,7 @@ msgid "6 or more characters"
msgstr ""
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "أكّد"
@@ -2383,11 +2623,11 @@ msgstr "Ù†Ùس كلمه السر أعلاه"
msgid "Change"
msgstr "غيّر"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "يجب أن تكون كلمه السر 6 حرو٠أو أكثر."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "كلمتا السر غير متطابقتين."
@@ -2399,7 +2639,7 @@ msgstr "كلمه السر القديمه غير صحيحة"
msgid "Error saving user; invalid."
msgstr "خطأ أثناء Ø­Ùظ المستخدم؛ غير صالح."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "تعذّر Ø­Ùظ كلمه السر الجديده."
@@ -2408,7 +2648,7 @@ msgid "Password saved."
msgstr "Ø­ÙÙظت كلمه السر."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "المسارات"
@@ -2417,23 +2657,23 @@ msgid "Path and server settings for this StatusNet site."
msgstr ""
#: actions/pathsadminpanel.php:157
-#, php-format
-msgid "Theme directory not readable: %s"
+#, fuzzy, php-format
+msgid "Theme directory not readable: %s."
msgstr "لا يمكن قراءه دليل السمات: %s"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
msgstr "لا يمكن الكتابه ÙÙ‰ دليل الأÙتارات: %s"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
msgstr "لا يمكن الكتابه ÙÙ‰ دليل الخلÙيات: %s"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
msgstr "لا يمكن قراءه دليل المحليات: %s"
#: actions/pathsadminpanel.php:183
@@ -2571,18 +2811,19 @@ msgstr ""
msgid "People search"
msgstr "بحث ÙÙ‰ الأشخاص"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "ليس وسم أشخاص صالح: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr ""
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "محتوى إشعار غير صالح"
#: actions/postnotice.php:101
@@ -2607,42 +2848,43 @@ msgstr "معلومات المل٠الشخصي"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "الاسم الكامل"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "الصÙحه الرئيسية"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr ""
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "صÙÙ Ù†Ùسك واهتماماتك"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "السيرة"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "الموقع"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr ""
@@ -2652,7 +2894,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "الوسوم"
@@ -2682,7 +2924,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr ""
@@ -2722,8 +2964,8 @@ msgid "Settings saved."
msgstr "Ø­ÙÙظت الإعدادات."
#: actions/public.php:83
-#, php-format
-msgid "Beyond the page limit (%s)"
+#, fuzzy, php-format
+msgid "Beyond the page limit (%s)."
msgstr "وراء حد الصÙحه (%s)"
#: actions/public.php:92
@@ -2882,7 +3124,7 @@ msgstr "أعد ضبط كلمه السر"
msgid "Recover password"
msgstr "استعد كلمه السر"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Ø·Ùلبت استعاده كلمه السر"
@@ -2902,122 +3144,138 @@ msgstr "أعد الضبط"
msgid "Enter a nickname or email address."
msgstr "أدخل اسمًا مستعارًا أو عنوان بريد إلكترونى."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr ""
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "خطأ أثناء Ø­Ùظ تأكيد العنوان."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "يجب أن تكون كلمه السر 6 محار٠أو أكثر."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr ""
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "خطأ أثناء ضبط المستخدم."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "عذرًا، الأشخاص المدعوون وحدهم يستطيعون التسجيل."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "عذرا، رمز دعوه غير صالح."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "نجح التسجيل"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "سجّل"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "لا ÙŠÙسمح بالتسجيل."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "عنوان البريد الإلكترونى موجود مسبقًا."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "اسم مستخدم أو كلمه سر غير صالحه."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 حرو٠أو أكثر. مطلوب."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Ù†Ùس كلمه السر أعلاه. مطلوب."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "البريد الإلكتروني"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "نصوصى وملÙاتى متاحه تحت رخصه "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "المشاع المبدع نسبه المنص٠إلى مؤلÙÙ‡ 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3036,7 +3294,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3075,7 +3333,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "اشترك"
@@ -3111,7 +3369,7 @@ msgstr "ما ينÙعش تكرر الملاحظه بتاعتك."
msgid "You already repeated that notice."
msgstr "انت عيدت الملاحظه دى Ùعلا."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "مكرر"
@@ -3149,7 +3407,7 @@ msgstr ""
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3162,8 +3420,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3181,7 +3439,7 @@ msgstr "لا يمكنك إسكات المستخدمين على هذا الموق
msgid "User doesn't have this role."
msgstr "يوزر من-غير پروÙايل زيّه."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3195,7 +3453,7 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "الجلسات"
@@ -3233,26 +3491,30 @@ msgstr "لازم تكون مسجل دخولك علشان تشو٠اى applicati
msgid "Application profile"
msgstr ""
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "الاسم"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "المنظمه"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "الوصÙ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "إحصاءات"
@@ -3335,20 +3597,20 @@ msgid ""
msgstr ""
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s لم يض٠أى إشعارات إلى Ù…Ùضلته إلى الآن. أرسل شيئًا شيقًا ليضيÙÙ‡ إلى "
"Ù…Ùضلته. :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s لم يض٠أى إشعارات إلى Ù…Ùضلته إلى الآن. لمّ لا [تسجل حسابًا](%%%%action."
"register%%%%) وترسل شيئًا شيقًا ليضيÙÙ‡ إلى Ù…Ùضلته. :)"
@@ -3367,67 +3629,67 @@ msgstr "مجموعه %s"
msgid "%1$s group, page %2$d"
msgstr "%1$s أعضاء المجموعة, الصÙحه %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "مل٠المجموعه الشخصي"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "مسار"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "ملاحظة"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "الكنى"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr ""
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "الأعضاء"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(لا شيء)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "جميع الأعضاء"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "أنشئ"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3437,7 +3699,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3446,7 +3708,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "الإداريون"
@@ -3521,8 +3783,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3574,11 +3836,12 @@ msgid "Unknown language \"%s\"."
msgstr "لغه مش معروÙÙ‡ \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+#, fuzzy
+msgid "Minimum text limit is 0 (unlimited)."
msgstr "حد النص الأدنى هو 140 حرÙًا."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3670,7 +3933,7 @@ msgid "Unable to save site notice."
msgstr "مشكله أثناء Ø­Ùظ الإشعار."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3687,101 +3950,162 @@ msgstr ""
msgid "Save site notice"
msgstr "إشعار الموقع"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "تظبيطات الـSMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "لا يمكنك استلام رسائل قصيره عبر البريد الإلكرتونى من %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "الرسائل القصيره غير متوÙره."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "عنوان الرساله الÙوريه"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "رمز التأكيد"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "أكّد"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "نمرة تليÙون الـSMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "التÙضيلات"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Ø­ÙÙÙظت التÙضيلات."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "لا رقم هاتÙ."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Ø£Ùلغى التأكيد."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "هذا ليس رقم هاتÙÙƒ."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "نمرة تليÙون الـSMS"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3803,7 +4127,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3843,8 +4167,8 @@ msgstr "اذ٠إعدادت الموقع"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "تعذّر Ø­Ùظ الاشتراك."
@@ -3936,11 +4260,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr ""
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "جابر"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "رسائل قصيرة"
@@ -3973,12 +4297,12 @@ msgstr "لا مدخل هويه."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "مل٠المستخدم الشخصي"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "صورة"
@@ -4009,10 +4333,6 @@ msgstr ""
msgid "No such tag."
msgstr "لا وسم كهذا."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "لم تمنع هذا المستخدم."
@@ -4026,8 +4346,9 @@ msgid "User is not silenced."
msgstr "المستخدم ليس Ù…Ùسكتًا."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+#, fuzzy
+msgid "No profile ID in request."
+msgstr "ما Ùيش طلب تسجيل دخول مطلوب."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4063,7 +4384,8 @@ msgstr "رساله ترحيب غير صالحه. أقصى طول هو 255 حرÙ
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "المل٠الشخصي"
@@ -4119,7 +4441,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "الرخصة"
@@ -4215,48 +4537,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "استمتع بالنقانق!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "%1$s أعضاء المجموعة, الصÙحه %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr ""
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4264,7 +4592,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4272,328 +4600,446 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "النسخه"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "المؤلÙ/ين"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "حجم غير صالح."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "دخول الجروپ Ùشل."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "مش جزء من الجروپ."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "الخروج من الجروپ Ùشل."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "تعذر تحديث المجموعه."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "ما Ù†Ùعش يتعمل امارة تسجيل دخول لـ %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "أنت ممنوع من إرسال رسائل مباشره."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "تعذّر إدراج الرساله."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "خطأ قاعده البيانات أثناء إدخال المستخدم OAuth app"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "مشكله ÙÙ‰ Ø­Ùظ الإشعار. طويل جدًا."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "مشكله ÙÙ‰ Ø­Ùظ الإشعار. مستخدم غير معروÙ."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "مشكله أثناء Ø­Ùظ الإشعار."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "مشكله أثناء Ø­Ùظ الإشعار."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "آر تى @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ليس للمستخدم مل٠شخصى."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "مشكله أثناء Ø­Ùظ الإشعار."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Ù…Ùشترك أصلا!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "لقد منعك المستخدم."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "غير مشترك!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "ما Ù†Ùعش يمسح الاشتراك الشخصى."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "تعذّر حذ٠الاشتراك."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "تعذّر حذ٠الاشتراك."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "أهلا بكم ÙÙ‰ %1$s يا @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "تعذّر إنشاء المجموعه."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "تعذّر ضبط عضويه المجموعه."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "تعذّر ضبط عضويه المجموعه."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "تعذّر Ø­Ùظ الاشتراك."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "غيّر إعدادات ملÙÙƒ الشخصي"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "ارÙع Ø£Ùتارًا"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "غير كلمه سرّك"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "غير أسلوب التعامل مع البريد الإلكتروني"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "صمّم ملÙÙƒ الشخصي"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "أخرى"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "خيارات أخرى"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "أخرى"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "صÙحه غير Ù…Ùعنونة"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "المل٠الشخصى ومسار الأصدقاء الزمني"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "شخصية"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "غير كلمه سرّك"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "كونيكشونات (Connections)"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "اتصل"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "غيّر ضبط الموقع"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "إداري"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr ""
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "ادعÙ"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "اخرج من الموقع"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "اخرج"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "أنشئ حسابًا"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "سجّل"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Ù„Ùج إلى الموقع"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Ù„Ùج"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "ساعدني!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "مساعدة"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "ابحث عن أشخاص أو نص"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4601,73 +5047,87 @@ msgstr "ابحث"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "إشعار الموقع"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "المشاهدات المحلية"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "إشعار الصÙحة"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "مساعدة"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "عن"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "الأسئله المكررة"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "الشروط"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "خصوصية"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "المصدر"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "اتصل"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** خدمه تدوين مصغر يقدمها لك [%%site.broughtby%%](%%site."
"broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr ""
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4678,67 +5138,81 @@ msgstr ""
"المتوÙر تحت [رخصه غنو Ø£Ùيرو العمومية](http://www.fsf.org/licensing/licenses/"
"agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "رخصه محتوى الموقع"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:853
-msgid "license."
-msgstr "الرخصه."
-
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "بعد"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "قبل"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "التغييرات مش مسموحه للـ لوحه دى."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4748,158 +5222,197 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "تعذّر حذ٠إعدادات التصميم."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "ضبط الموقع الأساسي"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "الموقع"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "ضبط التصميم"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "التصميم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "ضبط المسارات"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "المستخدم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "ضبط التصميم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "ضبط المسارات"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "ضبط التصميم"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "إشعار الموقع"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "ضبط المسارات"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr ""
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "اوص٠الapplication بتاعتك"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Source URL"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr ""
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Source URL"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr ""
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "ألغÙ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "بطّل"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "مرÙقات"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "المؤلÙ"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "المزود"
@@ -4911,45 +5424,64 @@ msgstr ""
msgid "Tags for this attachment"
msgstr "وسوم هذا المرÙÙ‚"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "تغيير الپاسوورد Ùشل"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "تغيير الپاسوورد مش مسموح"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "نتائج الأمر"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "اكتمل الأمر"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Ùشل الأمر"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "الملاحظه بالـID ده مالهاش وجود"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "ليس للمستخدم إشعار أخير"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "ما Ù†Ùعش يلاقى يوزر بإسم %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "ما Ù†Ùعش يلاقى يوزر بإسم %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Nudge اتبعتت لـ %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -4960,170 +5492,173 @@ msgstr ""
"المشتركون: %2$s\n"
"الإشعارات: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "الملاحظه بالـID ده مالهاش وجود"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "ليس للمستخدم إشعار أخير"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "انت اصلا عضو ÙÙ‰ الجروپ ده"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "ما Ù†Ùعش يدخل اليوزر %s لجروپ %s"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s انضم إلى مجموعه %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "ما Ù†Ùعش يشيل اليوزر %s لجروپ %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "ما Ù†Ùعش يضم %1$s للجروپ %2$s."
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s ساب الجروپ %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "ما Ù†Ùعش يتشال اليوزر %1$s من الجروپ %2$s."
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "الاسم الكامل: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "الموقع: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "الصÙحه الرئيسية: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "عن: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "رساله مباشره اتبعتت لـ %s"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "الملاحظه بتاعتك مش ناÙعه تتكرر"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "كرر بالÙعل هذا الإشعار"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "الإشعار من %s مكرر"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "خطأ تكرار الإشعار."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "رÙد على رساله %s"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "خطأ أثناء Ø­Ùظ الإشعار."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "لا مستخدم كهذا."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Ù…Ùشترك ب%s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "ألغ٠الاشتراك"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "لست Ù…Ùشتركًا بأى أحد."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "لست مشتركًا بأحد."
@@ -5133,11 +5668,11 @@ msgstr[3] "أنت مشترك بهؤلاء الأشخاص:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "لا أحد مشترك بك."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "لا أحد مشترك بك."
@@ -5147,11 +5682,11 @@ msgstr[3] "هؤلاء الأشخاص مشتركون بك:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "لست عضوًا ÙÙ‰ أى مجموعه."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "لست عضوًا ÙÙ‰ أى مجموعه."
@@ -5161,7 +5696,7 @@ msgstr[3] "أنت عضو ÙÙ‰ هذه المجموعات:"
msgstr[4] ""
msgstr[5] ""
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5203,19 +5738,19 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr ""
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "اذهب إلى المÙثبّت."
@@ -5385,53 +5920,54 @@ msgstr "المجموعات الأكثر مرسلات"
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "هذا المل٠كبير جدًا. إن أقصى حجم للملÙات هو %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
-
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
+msgid "Not an image or corrupt file."
msgstr ""
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr ""
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "نوع مل٠غير معروÙ"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "ميجابايت"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "كيلوبايت"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "مصدر الـinbox مش معرو٠%d."
@@ -5452,11 +5988,13 @@ msgstr ""
msgid "Sign up for a new account"
msgstr ""
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "تأكيد عنوان البريد الإلكتروني"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5473,12 +6011,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr ""
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5493,17 +6040,20 @@ msgid ""
"Change your email address or notification options at %8$s\n"
msgstr ""
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "عن Ù†Ùسك: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5516,21 +6066,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "حاله %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5546,12 +6106,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "رساله خاصه جديده من %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5570,12 +6132,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr ""
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5596,12 +6160,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5614,6 +6188,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5626,7 +6212,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "من"
@@ -5681,24 +6267,24 @@ msgstr "Ùشل ÙÙ‰ كتابه المل٠إلى القرص."
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "مش ناÙع يتحدد نوع الـMIME بتاع الÙايل."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5752,48 +6338,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "Ø´"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "ج"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "ر"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "غ"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "ÙÙŠ"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "ÙÙ‰ السياق"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "متكرر من"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "رÙد على هذا الإشعار"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "رÙد"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "الإشعار مكرر"
@@ -5817,6 +6407,10 @@ msgstr "خطأ أثناء إدراج المل٠الشخصى الجديد"
msgid "Error inserting avatar"
msgstr "خطأ ÙÙ‰ إدراج الأÙتار"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "خطأ أثناء تحديث المل٠الشخصى البعيد"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "خطأ أثناء إدراج المل٠الشخصى البعيد"
@@ -5862,11 +6456,11 @@ msgstr "رسائلك المÙرسلة"
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "مش معروÙ"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "الاشتراكات"
@@ -5874,31 +6468,32 @@ msgstr "الاشتراكات"
msgid "All subscriptions"
msgstr "جميع الاشتراكات"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "المشتركون"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "جميع المشتركين"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "هويه المستخدم"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "عضو منذ"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "كل المجموعات"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "لا مدخلات رجوع إلى."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -5922,11 +6517,19 @@ msgstr "Ù…Ùختارون"
msgid "Popular"
msgstr "مشهورة"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "لا مدخلات رجوع إلى."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "كرر هذا الإشعار؟"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "نعم"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "كرر هذا الإشعار"
@@ -5935,7 +6538,7 @@ msgstr "كرر هذا الإشعار"
msgid "Revoke the \"%s\" role from this user"
msgstr "امنع هذا المستخدم من هذه المجموعة"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6033,6 +6636,50 @@ msgstr ""
msgid "None"
msgstr "لا شيء"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Ùشل تحديث الأÙتار."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "خطأ أثناء تحديث المل٠الشخصى البعيد"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "أعلى المرسلين"
@@ -6061,91 +6708,110 @@ msgstr "ألغ٠الاشتراك مع هذا المستخدم"
msgid "Unsubscribe"
msgstr "ألغ٠الاشتراك"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "ليس للمستخدم مل٠شخصى."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "عدّل الأÙتار"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "تصرÙات المستخدم"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "عدّل إعدادات المل٠الشخصي"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "عدّل"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "أرسل رساله مباشره إلى هذا المستخدم"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "رسالة"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "مل٠المستخدم الشخصي"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "الإداريون"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "قبل لحظات قليلة"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "قبل دقيقه تقريبًا"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr ""
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "قبل ساعه تقريبًا"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr ""
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "قبل يوم تقريبا"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr ""
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "قبل شهر تقريبًا"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr ""
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "قبل سنه تقريبًا"
@@ -6159,7 +6825,7 @@ msgstr "%s ليس لونًا صحيحًا!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/bg/LC_MESSAGES/statusnet.po b/locale/bg/LC_MESSAGES/statusnet.po
index 3a6b5b047..3b78847b5 100644
--- a/locale/bg/LC_MESSAGES/statusnet.po
+++ b/locale/bg/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:22+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:08+0000\n"
"Language-Team: Bulgarian\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: bg\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +22,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "ДоÑтъп"
@@ -73,85 +73,89 @@ msgstr "Затворен"
msgid "Save access settings"
msgstr "Запазване наÑтройките за доÑтъп"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Запазване"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "ÐÑма такака Ñтраница."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "ÐÑма такъв потребител"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s и приÑтели, Ñтраница %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s и приÑтели"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð¿Ñ€Ð¸Ñтелите на %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð¿Ñ€Ð¸Ñтелите на %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð¿Ñ€Ð¸Ñтелите на %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -159,77 +163,79 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Вие и приÑтелите"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Бележки от %1$s и приÑтели в %2$s."
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Ðе е открит методът в API."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Този метод изиÑква заÑвка POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Грешка при обновÑване на потребителÑ."
@@ -238,7 +244,7 @@ msgstr "Грешка при обновÑване на потребителÑ."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "ПотребителÑÑ‚ нÑма профил."
@@ -248,9 +254,9 @@ msgid "Could not save profile."
msgstr "Грешка при запазване на профила."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -308,50 +314,49 @@ msgstr "Преки ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð¾ %s"
msgid "All the direct messages sent to %s"
msgstr "Ð’Ñички преки ÑъобщениÑ, изпратени до %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "ЛипÑва текÑÑ‚ на Ñъобщението"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Твърде дълго. Може да е най-много %d знака."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "ПолучателÑÑ‚ не е открит"
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Ðе може да изпращате преки ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð¾ хора, които не Ñа в ÑпиÑъка ви Ñ "
"приÑтели."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Ðе е открита бележка Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор."
-#: actions/apifavoritecreate.php:119
-#, fuzzy
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
-msgstr "Тази бележка вече е отбелÑзана като любима!"
+msgstr "Тази бележка вече е отбелÑзана като любима."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Грешка при отбелÑзване като любима."
-#: actions/apifavoritedestroy.php:122
-#, fuzzy
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
-msgstr "Тази бележка не е отбелÑзана като любима!"
+msgstr "Тази бележка не е отбелÑзана като любима."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Грешка при изтриване на любима бележка."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Грешка при проÑледÑване — потребителÑÑ‚ не е намерен."
#: actions/apifriendshipscreate.php:118
@@ -364,12 +369,12 @@ msgid "Could not unfollow user: User not found."
msgstr "Грешка при Ñпиране на проÑледÑването — потребителÑÑ‚ не е намерен."
#: actions/apifriendshipsdestroy.php:120
-#, fuzzy
msgid "You cannot unfollow yourself."
-msgstr "Ðе можете да Ñпрете да Ñледите Ñебе Ñи!"
+msgstr "Ðе можете да Ñпрете да Ñледите Ñебе Ñи."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "ТрÑбва да Ñе дадат два идентификатора или имена на потребители."
#: actions/apifriendshipsshow.php:134
@@ -381,117 +386,130 @@ msgstr "Грешка при изтеглÑне на Ð¾Ð±Ñ‰Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ðº"
msgid "Could not find target user."
msgstr "ЦелевиÑÑ‚ потребител не беше открит."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"ПÑевдонимът може да Ñъдържа Ñамо малки букви, чиÑла и никакво разÑтоÑние "
"между Ñ‚ÑÑ…."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Опитайте друг пÑевдоним, този вече е зает."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ðеправилен пÑевдоним."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "ÐдреÑÑŠÑ‚ на личната Ñтраница не е правилен URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Пълното име е твърде дълго (макÑ. 255 знака)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "ОпиÑанието е твърде дълго (до %d Ñимвола)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Името на меÑтоположението е твърде дълго (макÑ. 255 знака)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "Ðеправилен пÑевдоним: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "ПÑевдонимът \"%s\" вече е зает. Опитайте друг."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
msgstr "Групата не е открита."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Вече членувате в тази група."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Грешка при проÑледÑване — потребителÑÑ‚ не е намерен."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Ðе членувате в тази група."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Грешка при проÑледÑване — потребителÑÑ‚ не е намерен."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Групи на %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Групи, в които учаÑтва %s"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Групи на %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "групи в %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Качване на файл"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -502,17 +520,17 @@ msgid "Invalid token."
msgstr "Ðеправилен размер."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -520,9 +538,8 @@ msgid "There was a problem with your session token. Try again, please."
msgstr "Имаше проблем ÑÑŠÑ ÑеÑиÑта ви в Ñайта. МолÑ, опитайте отново!"
#: actions/apioauthauthorize.php:135
-#, fuzzy
msgid "Invalid nickname / password!"
-msgstr "Ðеправилно име или парола."
+msgstr "Ðеправилно име или парола!"
#: actions/apioauthauthorize.php:159
#, fuzzy
@@ -546,12 +563,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Ðеочаквано изпращане на форма."
@@ -561,7 +581,7 @@ msgstr ""
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "Разрешение или забрана на доÑтъпа"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -571,41 +591,42 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Сметка"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "ПÑевдоним"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Парола"
#: actions/apioauthauthorize.php:328
msgid "Deny"
-msgstr ""
+msgstr "Забрана"
#: actions/apioauthauthorize.php:334
-#, fuzzy
msgid "Allow"
-msgstr "Ð’Ñички"
+msgstr "Разрешение"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Този метод изиÑква заÑвка POST или DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Ðе може да изтривате бележки на друг потребител."
@@ -622,59 +643,63 @@ msgstr "Ðе можете да повтарÑте ÑобÑтвени бележÐ
msgid "Already repeated that notice."
msgstr "Вече Ñте повторили тази бележка."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Бележката е изтрита."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ðе е открита бележка Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Твърде дълга бележка. ТрÑбва да е най-много 140 знака."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
msgstr "Ðе е открито."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Ðеподдържан формат."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / ОтбелÑзани като любими от %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s бележки отбелÑзани като любими от %s / %s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Реплики на %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s реплики на ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ñ‚ %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Общ поток на %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -689,19 +714,19 @@ msgstr "Повторено за %s"
msgid "Repeats of %s"
msgstr "ÐŸÐ¾Ð²Ñ‚Ð¾Ñ€ÐµÐ½Ð¸Ñ Ð½Ð° %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Бележки Ñ ÐµÑ‚Ð¸ÐºÐµÑ‚ %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Бележки от %1$s в %2$s."
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ðе е открито."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Методът в API вÑе още Ñе разработва."
#: actions/attachment.php:73
#, fuzzy
@@ -723,8 +748,9 @@ msgstr "ÐÑма размер."
msgid "Invalid size."
msgstr "Ðеправилен размер."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ðватар"
@@ -735,9 +761,10 @@ msgstr ""
"Можете да качите личен аватар тук. МакÑималната големина на файла е %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "Потребител без ÑъответÑтващ профил"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -756,7 +783,7 @@ msgid "Preview"
msgstr "Преглед"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Изтриване"
@@ -768,23 +795,27 @@ msgstr "Качване"
msgid "Crop"
msgstr "ИзрÑзване"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "ÐÑма качен файл."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Изберете квадратна облаÑÑ‚ от изображението за аватар"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Ðватарът е обновен."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "ÐеуÑпешно обновÑване на аватара."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ðватарът е изтрит."
@@ -792,38 +823,53 @@ msgstr "Ðватарът е изтрит."
msgid "You already blocked that user."
msgstr "Вече Ñте блокирали този потребител."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Блокиране на потребителÑ"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Ðе"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Да не Ñе блокира този потребител"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Да"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Блокиране на потребителÑ"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Грешка при запиÑване данните за блокирането."
@@ -836,8 +882,8 @@ msgstr "Грешка при запиÑване данните за блокирÐ
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "ÐÑма такава група"
@@ -868,9 +914,10 @@ msgstr "Разблокиране"
msgid "Unblock this user"
msgstr "Разблокиране на този потребител"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "Снимка"
#: actions/confirmaddress.php:75
@@ -885,33 +932,43 @@ msgstr "Кодът за потвърждение не е открит."
msgid "That confirmation code is not for you!"
msgstr "Този код за потвърждение не е за ваÑ!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Ðеразпознат вид Ð°Ð´Ñ€ÐµÑ %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Този Ð°Ð´Ñ€ÐµÑ Ðµ вече потвърден."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Грешка при обновÑване на потребителÑ."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Грешка при изтриване потвърждението по е-поща."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Потвърждаване на адреÑ"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "ÐдреÑÑŠÑ‚ \"%s\" е потвърден за Ñметката ви."
@@ -921,36 +978,32 @@ msgid "Conversation"
msgstr "Разговор"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Бележки"
#: actions/deleteapplication.php:63
-#, fuzzy
msgid "You must be logged in to delete an application."
-msgstr "За да редактирате група, Ñ‚Ñ€Ñбва да Ñте влезли."
+msgstr "За да изтриете приложение, Ñ‚Ñ€Ñбва да Ñте влезли."
#: actions/deleteapplication.php:71
-#, fuzzy
msgid "Application not found."
-msgstr "Бележката нÑма профил"
+msgstr "Приложението не е открито."
#: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94
-#, fuzzy
msgid "You are not the owner of this application."
-msgstr "Ðе членувате в тази група."
+msgstr "Ðе Ñте ÑобÑтвеник на това приложение."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Имаше проблем ÑÑŠÑ ÑеÑиÑта ви в Ñайта."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "ÐÑма такава бележка."
+msgstr "Изтриване на приложението"
#: actions/deleteapplication.php:149
msgid ""
@@ -959,23 +1012,23 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
-msgstr "Да не Ñе изтрива бележката"
+msgstr "Да не Ñе изтрива приложението"
-#: actions/deleteapplication.php:160
-#, fuzzy
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
-msgstr "Изтриване на бележката"
+msgstr "Изтриване на това приложение"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ðе Ñте влезли в ÑиÑтемата."
@@ -998,11 +1051,13 @@ msgstr "Изтриване на бележката"
msgid "Are you sure you want to delete this notice?"
msgstr "ÐаиÑтина ли иÑкате да изтриете тази бележка?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Да не Ñе изтрива бележката"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Изтриване на бележката"
@@ -1024,130 +1079,151 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Изтриване на този потребител"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Ðеправилен размер."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "СмÑна на логото"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Лого на Ñайта"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "ПромÑна"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Ðова бележка"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
#, fuzzy
msgid "Theme for the site."
msgstr "Излизане от Ñайта"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Ðова бележка"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "СмÑна на изображението за фон"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Фон"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Може да качите лого за групата ви."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Вкл."
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Изкл."
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "СмÑна на цветовете"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Съдържание"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Страничен панел"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "ТекÑÑ‚"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "СпиÑък"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Запазване"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1165,20 +1241,17 @@ msgid "No such document \"%s\""
msgstr "ÐÑма такъв документ."
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "Други наÑтройки"
+msgstr "Редактиране на приложението"
#: actions/editapplication.php:66
-#, fuzzy
msgid "You must be logged in to edit an application."
-msgstr "За да редактирате група, Ñ‚Ñ€Ñбва да Ñте влезли."
+msgstr "За да редактирате приложение, Ñ‚Ñ€Ñбва да Ñте влезли."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87
-#, fuzzy
msgid "No such application."
-msgstr "ÐÑма такава бележка."
+msgstr "ÐÑма такова приложение."
#: actions/editapplication.php:161
#, fuzzy
@@ -1186,9 +1259,8 @@ msgid "Use this form to edit your application."
msgstr "Използвайте тази бланка за Ñъздаване на нова група."
#: actions/editapplication.php:177 actions/newapplication.php:159
-#, fuzzy
msgid "Name is required."
-msgstr "Същото като паролата по-горе. Задължително поле."
+msgstr "Името е задължително."
#: actions/editapplication.php:180 actions/newapplication.php:165
#, fuzzy
@@ -1201,9 +1273,8 @@ msgid "Name already in use. Try another one."
msgstr "Опитайте друг пÑевдоним, този вече е зает."
#: actions/editapplication.php:186 actions/newapplication.php:168
-#, fuzzy
msgid "Description is required."
-msgstr "ОпиÑание"
+msgstr "ОпиÑанието е задължително."
#: actions/editapplication.php:194
msgid "Source URL is too long."
@@ -1219,9 +1290,8 @@ msgid "Organization is required."
msgstr ""
#: actions/editapplication.php:206 actions/newapplication.php:191
-#, fuzzy
msgid "Organization is too long (max 255 chars)."
-msgstr "Името на меÑтоположението е твърде дълго (макÑ. 255 знака)."
+msgstr "Името на организациÑта е твърде дълго (макÑ. 255 знака)."
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
@@ -1264,11 +1334,17 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "ОпиÑанието е твърде дълго (до %d Ñимвола)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ðеправилен пÑевдоним: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Грешка при обновÑване на групата."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Грешка при отбелÑзване като любима."
@@ -1277,31 +1353,42 @@ msgstr "Грешка при отбелÑзване като любима."
msgid "Options saved."
msgstr "ÐаÑтройките Ñа запазени."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "ÐаÑтройки на е-поща"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Управление на пощата, идваща от %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ÐдреÑ"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° е-поща"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Текущ потвърден Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Премахване"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1309,107 +1396,138 @@ msgstr ""
"Очаква Ñе потвърждение за този адреÑ. Проверете кутиÑта Ñи (или папката за "
"Ñпам) за Ñъобщение Ñ ÑƒÐºÐ°Ð·Ð°Ð½Ð¸Ñ."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Отказ"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° е-поща"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° е-поща, като \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "ДобавÑне"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "ВходÑща поща"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Изпратете пиÑмо до този Ð°Ð´Ñ€ÐµÑ Ð·Ð° публикуване като бележка."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Задаване на нова е-поща, от коÑто да Ñе публикува. ÐžÑ‚Ð¼ÐµÐ½Ñ Ð¿Ñ€ÐµÐ´Ð¸ÑˆÐ½Ð°Ñ‚Ð°."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Ðово"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "ÐаÑтройки"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "ÐаÑтройки на е-поща"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Изпращане на ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ð·Ð° нови абонаменти по пощата."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Изпращане на пиÑмо при отбелÑзване на Ð¼Ð¾Ñ Ð±ÐµÐ»ÐµÐ¶ÐºÐ° като любима."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Изпращане на пиÑмо при ново лично Ñъобщение."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Изпращане на пиÑмо при ново лично Ñъобщение."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "ИÑкам да изпращам бележки по пощата."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Публикуване на MicroID за адреÑа на е-пощата."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "ÐаÑтройките Ñа запазени."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "ÐаÑтройките на е-поща Ñа запазени."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ðе е въведена е-поща."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Грешка при нормализиране адреÑа на е-пощата"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ðеправилен Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Това и Ñега е адреÑÑŠÑ‚ на е-пощата ви."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Тази е-поща вече Ñе използва от друг потребител."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Ðе може да Ñе вмъкне код за потвърждение."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1418,43 +1536,56 @@ msgstr ""
"Проверете кутиÑта (или папката за Ñпам) за кода и указаниÑта за използването "
"му."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "ÐÑма потвърждениÑ, очакващи да бъдат отказани."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Грешен IM адреÑ."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Потвърждаването е прекъÑнато."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Това не е вашиÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "ÐдреÑÑŠÑ‚ е премахнат."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "ÐÑма входÑщ Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Грешка при обновÑване запиÑа на потребител."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "ВходÑщиÑÑ‚ Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща е премахнат."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Добавен е нов входÑщ Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
@@ -1573,8 +1704,9 @@ msgstr "Грешка при преобразуване на tokens за одоб
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Ðепозната верÑÐ¸Ñ Ð½Ð° протокола OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Грешка при обновÑване на отдалечен профил"
#: actions/getfile.php:79
@@ -1606,13 +1738,13 @@ msgstr "ПотребителÑÑ‚ вече е заглушен."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ðе е указан профил."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ðе е открит профил Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор."
@@ -1633,12 +1765,12 @@ msgstr "ПотребителÑÑ‚ вече е блокиран за групатÐ
msgid "User is not a member of group."
msgstr "ПотребителÑÑ‚ не членува в групата."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Блокиране на потребителÑ"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1646,17 +1778,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "СпиÑък Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ð¸Ñ‚Ðµ в тази група."
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "СпиÑък Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ð¸Ñ‚Ðµ в тази група."
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1700,11 +1834,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "Може да качите лого за групата ви."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Потребител без ÑъответÑтващ профил"
-
#: actions/grouplogo.php:365
#, fuzzy
msgid "Pick a square area of the image to be the logo."
@@ -1736,35 +1865,39 @@ msgstr "СпиÑък Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ð¸Ñ‚Ðµ в тази група."
msgid "Admin"
msgstr "ÐаÑтройки"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Блокиране"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
#, fuzzy
msgid "Make user an admin of the group"
msgstr "За да редактирате групата, Ñ‚Ñ€Ñбва да Ñте й админиÑтратор."
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Поток на %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Бележки от %1$s в %2$s."
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Групи"
@@ -1784,7 +1917,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Създаване на нова група"
@@ -1834,12 +1967,16 @@ msgstr "ПотребителÑÑ‚ ви е блокирал."
msgid "Error removing the block."
msgstr "Грешка при запазване на потребител."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "IM наÑтройки"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1848,16 +1985,26 @@ msgstr ""
"Можете да получавате ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾ Jabber/GTalk [instant messages](%%doc.im%"
"%). Въведете адреÑа Ñи в наÑтройките по-долу."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "IM адреÑ"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Текущ потвърден Jabber/GTalk адреÑ."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1866,12 +2013,9 @@ msgstr ""
"Oчаква Ñе потвърждение на този адреÑ. Проверете акаунта Ñи в Jabber/GTalk за "
"Ñъобщение Ñ Ð¸Ð½Ñтрукции. (Добавихте ли %s в ÑпиÑъка Ñи там?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM адреÑ"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1880,43 +2024,65 @@ msgstr ""
"Jabber или GTalk адреÑ, като \"UserName@example.org\". Първо Ñе уверете, че "
"Ñте добавили %s в ÑпиÑъка Ñи Ñ Ð¿Ñ€Ð¸Ñтели в IM или GTalk клиента Ñи."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "ÐаÑтройки"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Изпращане на бележките по Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Публикуване промÑната на ÑÑŠÑтоÑнието ми в Jabber/GTalk."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr "Изпращане по Jabber/GTalk на отговори от хора, "
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Публикуване на MicroID за адреÑа в Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "ÐаÑтройките Ñа запазени."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "ÐÑма Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Грешка при Ð½Ð¾Ñ€Ð¼Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ñ Ð½Ð° този Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ðеправилен Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Това вече е вашиÑÑ‚ Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Този Jabber ID принадлежи на друг потребител."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1925,10 +2091,35 @@ msgstr ""
"Ðа меÑинджъра ви е изпратен код за потвърждение. За да получавате ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ "
"от %s, Ñ‚Ñ€Ñбва да го одобрите."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Грешен IM адреÑ."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Грешка при изтриване потвърждението по е-поща."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Потвърждаването е прекъÑнато."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Това не е вашиÑÑ‚ Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "ÐдреÑÑŠÑ‚ е премахнат."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1948,8 +2139,8 @@ msgid "Invites have been disabled."
msgstr "Поканите Ñа изключени."
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "За да каните хора в %s, Ñ‚Ñ€Ñбва да Ñте влезли."
#: actions/invite.php:72
@@ -1969,7 +2160,9 @@ msgstr "Покани за нови потребители"
msgid "You are already subscribed to these users:"
msgstr "Вече Ñте абонирани за Ñледните потребители:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2021,12 +2214,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Прати"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s ви кани да ползвате заедно %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2092,7 +2287,9 @@ msgstr "За да Ñе приÑъедините към група, Ñ‚Ñ€Ñбва
msgid "No nickname or ID."
msgstr "ÐÑма пÑевдоним."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s Ñе приÑъедини към групата %s"
@@ -2101,49 +2298,51 @@ msgstr "%s Ñе приÑъедини към групата %s"
msgid "You must be logged in to leave a group."
msgstr "За напуÑнете група, Ñ‚Ñ€Ñбва да Ñте влезли."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Ðе членувате в тази група."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s напуÑна групата %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Вече Ñте влезли."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Грешно име или парола."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Забранено."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Вход"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Вход в Ñайта"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Запомни ме"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Ðвтоматично влизане занапред. Да не Ñе ползва на общи компютри!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Загубена или забравена парола"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2151,11 +2350,15 @@ msgstr ""
"За по-голÑма ÑигурноÑÑ‚, Ð¼Ð¾Ð»Ñ Ð²ÑŠÐ²ÐµÐ´ÐµÑ‚Ðµ отново потребителÑкото Ñи име и парола "
"при промÑна на наÑтройките."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Вход Ñ Ð¸Ð¼Ðµ и парола"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Влезте Ñ Ð¸Ð¼Ðµ и парола. ÐÑмате такива? [РегиÑтрирайте](%%action.register%%) "
"нова Ñметка или опитайте Ñ [OpenID](%%action.openidlogin%%). "
@@ -2180,13 +2383,13 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "За да редактирате групата, Ñ‚Ñ€Ñбва да Ñте й админиÑтратор."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "ÐÑма резултати."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "ÐÑма такава бележка."
+msgstr "Ðово приложение"
#: actions/newapplication.php:64
#, fuzzy
@@ -2219,12 +2422,12 @@ msgstr "Използвайте тази бланка за Ñъздаване нÐ
msgid "New message"
msgstr "Ðово Ñъобщение"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Ðе може да изпращате ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð¾ този потребител."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "ÐÑма Ñъдържание!"
@@ -2232,7 +2435,7 @@ msgstr "ÐÑма Ñъдържание!"
msgid "No recipient specified."
msgstr "Ðе е указан получател."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2248,7 +2451,7 @@ msgstr "Съобщението е изпратено"
msgid "Direct message to %s sent."
msgstr "ПрÑкото Ñъобщение до %s е изпратено."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Грешка в Ajax"
@@ -2256,7 +2459,7 @@ msgstr "Грешка в Ajax"
msgid "New notice"
msgstr "Ðова бележка"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Бележката е публикувана"
@@ -2304,7 +2507,7 @@ msgstr "Бележки, Ñъдържащи Ñ‚ÑŠÑ€Ñеното \"%1$s\" в %2$s!"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2348,11 +2551,11 @@ msgid "You are not a user of that application."
msgstr "Ðе членувате в тази група."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2360,25 +2563,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Бележката нÑма профил"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Бележка на %1$s от %2$s"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "вид Ñъдържание "
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Само "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Ðеподдържан формат на данните"
@@ -2400,7 +2609,7 @@ msgstr "Управление на различни други наÑтройки
#: actions/othersettings.php:108
msgid " (free service)"
-msgstr ""
+msgstr " (безплатна уÑлуга)"
#: actions/othersettings.php:116
msgid "Shorten URLs with"
@@ -2488,7 +2697,7 @@ msgid "6 or more characters"
msgstr "6 или повече знака"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Потвърждаване"
@@ -2500,11 +2709,11 @@ msgstr "Също като паролата по-горе"
msgid "Change"
msgstr "ПромÑна"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Паролата Ñ‚Ñ€Ñбва да е 6 или повече знака."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Паролите не Ñъвпадат."
@@ -2516,7 +2725,7 @@ msgstr "Грешна Ñтара парола"
msgid "Error saving user; invalid."
msgstr "Грешка при запазване на потребител — невалидноÑÑ‚."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Грешка при запазване на новата парола."
@@ -2525,7 +2734,7 @@ msgid "Password saved."
msgstr "Паролата е запиÑана."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Пътища"
@@ -2535,23 +2744,23 @@ msgstr "Пътища и Ñървърни наÑтройки за тази инÑ
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð½Ð° фона"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2690,18 +2899,19 @@ msgstr ""
msgid "People search"
msgstr "ТърÑене на хора"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "Това не е правилен Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Бележки Ñ ÐµÑ‚Ð¸ÐºÐµÑ‚ %s, Ñтраница %d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Ðевалидно Ñъдържание на бележка"
#: actions/postnotice.php:101
@@ -2726,42 +2936,43 @@ msgstr "Данни на профила"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "От 1 до 64 малки букви или цифри, без Ð¿ÑƒÐ½ÐºÑ‚Ð¾Ð°Ñ†Ð¸Ñ Ð¸ интервали"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Пълно име"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Лична Ñтраница"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° личната ви Ñтраница, блог или профил в друг Ñайт"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Опишете Ñебе Ñи и интереÑите Ñи в до %d букви"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Опишете Ñебе Ñи и интереÑите Ñи"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "За мен"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "МеÑтоположение"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Къде Ñе намирате (град, община, държава и Ñ‚.н.)"
@@ -2771,7 +2982,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Етикети"
@@ -2803,7 +3014,7 @@ msgstr ""
"Ðвтоматично абониране за вÑеки, който Ñе абонира за мен (подходÑщо за "
"ботове)."
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "БиографиÑта е твърде дълга (до %d Ñимвола)."
@@ -2845,7 +3056,7 @@ msgstr "ÐаÑтройките Ñа запазени."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2999,7 +3210,7 @@ msgstr "Ðова парола"
msgid "Recover password"
msgstr "ВъзÑтановÑване на паролата"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "ПоиÑкано е възÑтановÑване на парола"
@@ -3019,19 +3230,19 @@ msgstr "ОбновÑване"
msgid "Enter a nickname or email address."
msgstr "Въведете пÑевдоним или е-поща."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "ÐÑма потребител Ñ Ñ‚Ð°ÐºÐ°Ð²Ð° е-поща или потребителÑко име."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "ÐÑма указана е-поща за този потребител."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Грешка при запазване на потвърждение за адреÑ"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3039,108 +3250,123 @@ msgstr ""
"Ðа е-пощата, Ñ ÐºÐ¾Ñто Ñте региÑтрирани Ñа изпратени инÑтрукции за "
"възÑтановÑване на паролата."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Ðеочаквано подновÑване на паролата."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Паролата Ñ‚Ñ€Ñбва да е от поне 6 знака."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Паролата и потвърждението й не Ñъвпадат."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Грешка в наÑтройките на потребителÑ."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Ðовата парола е запазена. ВлÑзохте уÑпешно."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Грешка в кода за потвърждение."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "ЗапиÑването е уÑпешно."
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "РегиÑтриране"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "ЗапиÑването не е позволено."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Ðе можете да Ñе региÑтрате, ако не Ñте ÑъглаÑни Ñ Ð»Ð¸Ñ†ÐµÐ½Ð·Ð°."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "ÐдреÑÑŠÑ‚ на е-поща вече Ñе използва."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ðеправилно име или парола."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"От 1 до 64 малки букви или цифри, без Ð¿ÑƒÐ½ÐºÑ‚Ð¾Ð°Ñ†Ð¸Ñ Ð¸ интервали. Задължително "
"поле."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 или повече знака. Задължително поле."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Същото като паролата по-горе. Задължително поле."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Е-поща"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Използва Ñе Ñамо за промени, обÑви или възÑтановÑване на паролата"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "По-дълго име, за предпочитане \"иÑтинÑкото\" ви име."
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "ТекÑтовете и файловите ми Ñа доÑтъпни под "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Криейтив ÐšÐ¾Ð¼ÑŠÐ½Ñ ÐŸÑ€Ð¸Ð·Ð½Ð°Ð½Ð¸Ðµ 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr " оÑвен тези лични данни: парола, е-поща, меÑинджър, телефон."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3173,7 +3399,7 @@ msgstr ""
"Благодарим, че Ñе включихте в Ñайта и дано ползването на уÑлугата ви ноÑи "
"Ñамо приÑтни мигове!"
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3218,7 +3444,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° профила ви в друга, ÑъвмеÑтима уÑлуга за микроблогване"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Ðбониране"
@@ -3256,7 +3482,7 @@ msgstr "Ðе можете да повтарÑте ÑобÑтвена бележÐ
msgid "You already repeated that notice."
msgstr "Вече Ñте повторили тази бележка."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Повторено"
@@ -3294,7 +3520,7 @@ msgstr "ЕмиÑÐ¸Ñ Ñ Ð¾Ñ‚Ð³Ð¾Ð²Ð¾Ñ€Ð¸ на %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3307,8 +3533,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3326,7 +3552,7 @@ msgstr "Ðе можете да заглушавате потребители нÐ
msgid "User doesn't have this role."
msgstr "Потребител без ÑъответÑтващ профил"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3342,7 +3568,7 @@ msgstr "ПотребителÑÑ‚ ви е блокирал."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "СеÑии"
@@ -3373,35 +3599,37 @@ msgid "Save site settings"
msgstr "Запазване наÑтройките на Ñайта"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "За напуÑнете група, Ñ‚Ñ€Ñбва да Ñте влезли."
+msgstr "За прегледате приложение, Ñ‚Ñ€Ñбва да Ñте влезли."
#: actions/showapplication.php:157
-#, fuzzy
msgid "Application profile"
-msgstr "Бележката нÑма профил"
+msgstr "Профил на приложението"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Икона"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Име"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "ОрганизациÑ"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "ОпиÑание"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "СтатиÑтики"
@@ -3420,7 +3648,7 @@ msgstr ""
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Данни за приложението"
#: actions/showapplication.php:263
msgid "Consumer key"
@@ -3487,16 +3715,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3513,67 +3741,67 @@ msgstr "Група %s"
msgid "%1$s group, page %2$d"
msgstr "Членове на групата %s, Ñтраница %d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Профил на групата"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Бележка"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "ПÑевдоними"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð±ÐµÐ»ÐµÐ¶ÐºÐ¸ на %s"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð±ÐµÐ»ÐµÐ¶ÐºÐ¸ на %s"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "ЕмиÑÐ¸Ñ Ñ Ð±ÐµÐ»ÐµÐ¶ÐºÐ¸ на %s"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "ИзходÑща ÐºÑƒÑ‚Ð¸Ñ Ð·Ð° %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Членове"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
-msgstr ""
+msgstr "(Без)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Ð’Ñички членове"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Създадена на"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3583,7 +3811,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3592,7 +3820,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "ÐдминиÑтратори"
@@ -3667,8 +3895,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3721,11 +3949,12 @@ msgid "Unknown language \"%s\"."
msgstr "Ðепознат език \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+#, fuzzy
+msgid "Minimum text limit is 0 (unlimited)."
msgstr "Минималното ограничение на текÑта е 140 знака."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3774,9 +4003,8 @@ msgid "Default timezone for the site; usually UTC."
msgstr "ЧаÑови поÑÑ Ð¿Ð¾ подразбиране за Ñайта (обикновено UTC)."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Език по подразбиране за Ñайта"
+msgstr "Език по подразбиране"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
@@ -3818,7 +4046,7 @@ msgid "Unable to save site notice."
msgstr "Грешка при запиÑване наÑтройките за Twitter"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3835,45 +4063,75 @@ msgstr ""
msgid "Save site notice"
msgstr "Ðова бележка"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "ÐаÑтройки за SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Може да получавате на е-пощата Ñи SMS-ÑÑŠÐ¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¾Ñ‚ %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IM адреÑ"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Текущ потвърден телефонен номер за SMS-и."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Очаква Ñе потвърждение за този телефонен номер."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Код за потвърждение"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Въведете кода, който получихте по телефона."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Потвърждаване"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Телефонен номер за SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Телефонен номер — Ñ ÐºÐ¾Ð´, без Ð¿ÑƒÐ½ÐºÑ‚Ð¾Ð°Ñ†Ð¸Ñ Ð¸ без интервали."
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "ÐаÑтройки"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3881,23 +4139,34 @@ msgstr ""
"Получаване на бележки в SMS. Имайте предвид, че може да има допълнителни "
"такÑи от оператора."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "ÐаÑтройките Ñа запазени."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ðе е въведен телефонен номер."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Ðе е избран оператор."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Това и Ñега е номерът на телефона ви."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Този телефонен номер вече Ñе използва от друг потребител."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -3907,23 +4176,42 @@ msgstr ""
"Проверете ÑъобщениÑта (или папката за Ñпам) за кода и указаниÑта за "
"използването му."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Този код за потвърждение е грешен."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Потвърждаването е прекъÑнато."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Това не е вашиÑÑ‚ телефонен номер."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "Телефонен номер за SMS"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Мобилен оператор"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Изберете оператор"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3932,13 +4220,14 @@ msgstr ""
"Мобилен оператор за SMS. Ðко знаете оператор, поддържащ SMS от е-поща, който "
"не фигурира тук, пишете ни на Ð°Ð´Ñ€ÐµÑ %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Ðе е въведен код."
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3960,7 +4249,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4000,8 +4289,8 @@ msgstr "Запазване наÑтройките на Ñайта"
msgid "You are not subscribed to that profile."
msgstr "Ðе Ñте абонирани за този профил"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "Грешка при Ñъздаване на нов абонамент."
@@ -4011,9 +4300,8 @@ msgid "This action only accepts POST requests."
msgstr ""
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "ÐÑма такъв файл."
+msgstr "ÐÑма такъв профил."
#: actions/subscribe.php:117
#, fuzzy
@@ -4031,9 +4319,9 @@ msgid "%s subscribers"
msgstr "%s абоната"
#: actions/subscribers.php:52
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscribers, page %2$d"
-msgstr "Ðбонаменти на %s, Ñтраница %d"
+msgstr "Ðбонати на %1$s, Ñтраница %2$d"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
@@ -4068,9 +4356,9 @@ msgid "%s subscriptions"
msgstr "Ðбонаменти на %s"
#: actions/subscriptions.php:54
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscriptions, page %2$d"
-msgstr "Ðбонаменти на %s, Ñтраница %d"
+msgstr "Ðбонаменти на %1$s, Ñтраница %2$d"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
@@ -4096,11 +4384,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s не получава ничии бележки."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4134,12 +4422,12 @@ msgstr "ÐÑма такъв документ."
msgid "Tag %s"
msgstr "Етикети"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "ПотребителÑки профил"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Снимка"
@@ -4171,10 +4459,6 @@ msgstr ""
msgid "No such tag."
msgstr "ÐÑма такъв етикет."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Методът в API вÑе още Ñе разработва."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Ðе Ñте блокирали този потребител."
@@ -4190,7 +4474,7 @@ msgstr "ПотребителÑÑ‚ не е заглушен."
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Сървърът не е върнал Ð°Ð´Ñ€ÐµÑ Ð½Ð° профила."
#: actions/unsubscribe.php:98
@@ -4206,7 +4490,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Потребител"
@@ -4228,7 +4511,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Профил"
@@ -4291,7 +4575,7 @@ msgstr ""
"Проверете тези детайли и Ñе уверете, че иÑкате да Ñе абонирате за бележките "
"на този потребител. Ðко не иÑкате абонамента, натиÑнете \"Cancel\" (Отказ)."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Лиценз"
@@ -4395,48 +4679,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Членове на групата %s, Ñтраница %d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "ТърÑене на още групи"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s не членува в Ð½Ð¸ÐºÐ¾Ñ Ð³Ñ€ÑƒÐ¿Ð°."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Бележки от %1$s в %2$s."
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4444,7 +4734,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4452,102 +4742,152 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "ПриÑтавки"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "ВерÑиÑ"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Ðвтор(и)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Ðеправилен размер."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Профил на групата"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Грешка при обновÑване на групата."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Профил на групата"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Грешка при обновÑване на групата."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Грешка при отбелÑзване като любима."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Грешка при изпращане на прÑкото Ñъобщение"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Грешка при вмъкване на Ñъобщението."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Грешка при обновÑване на бележката Ñ Ð½Ð¾Ð² URL-адреÑ."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Грешка в базата от данни — отговор при вмъкването: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Проблем при запиÑване на бележката."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Грешка при запиÑване на бележката. Ðепознат потребител."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Твърде много бележки за кратко време. Спрете, поемете дъх и публикувайте "
"отново Ñлед нÑколко минути."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
#, fuzzy
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
@@ -4556,315 +4896,383 @@ msgstr ""
"Твърде много бележки за кратко време. Спрете, поемете дъх и публикувайте "
"отново Ñлед нÑколко минути."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Забранено ви е да публикувате бележки в този Ñайт."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Проблем при запиÑване на бележката."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Проблем при запиÑване на бележката."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ПотребителÑÑ‚ нÑма профил."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Грешка при запиÑване наÑтройките за Twitter"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "ПотребителÑÑ‚ е забранил да Ñе абонирате за него."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "ПотребителÑÑ‚ ви е блокирал."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Ðе Ñте абонирани!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Грешка при изтриване на абонамента."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Грешка при изтриване на абонамента."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Грешка при изтриване на абонамента."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Добре дошли в %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Грешка при Ñъздаване на групата."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Грешка при Ñъздаване на нов абонамент."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "Грешка при Ñъздаване на нов абонамент."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Грешка при Ñъздаване на нов абонамент."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "ПромÑна наÑтройките на профила"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Качване на аватар"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "СмÑна на паролата"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "ПромÑна обработката на пиÑмата"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "ПотребителÑки профил"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Друго"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Други наÑтройки"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Друго"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Ðеозаглавена Ñтраница"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Лично"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "ПромÑна на поща, аватар, парола, профил"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Свързване към уÑлуги"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Свързване"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "ПромÑна наÑтройките на Ñайта"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "ÐаÑтройки"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Поканете приÑтели и колеги да Ñе приÑъединÑÑ‚ към Ð²Ð°Ñ Ð² %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Покани"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Излизане от Ñайта"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Изход"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Създаване на нова Ñметка"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "РегиÑтриране"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Влизане в Ñайта"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Вход"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Помощ"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Помощ"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "ТърÑене за хора или бележки"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "ТърÑене"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "Ðова бележка"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "Ðова бележка"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "Ðбонаменти"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Помощ"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "ОтноÑно"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "ВъпроÑи"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "УÑловиÑ"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "ПоверителноÑÑ‚"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Изходен код"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Контакт"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Табелка"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Лиценз на програмата StatusNet"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** е уÑлуга за микроблогване, предоÑтавена ви от [%%site."
"broughtby%%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** е уÑлуга за микроблогване. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** е уÑлуга за микроблогване."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4875,68 +5283,82 @@ msgstr ""
"доÑтъпна под [GNU Affero General Public License](http://www.fsf.org/"
"licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Лиценз на Ñъдържанието"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Ð’Ñички "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "лиценз."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Страниране"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "След"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Преди"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Ðе можете да променÑте този Ñайт."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "ЗапиÑването не е позволено."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -4948,164 +5370,201 @@ msgstr "Командата вÑе още не Ñе поддържа."
msgid "saveSettings() not implemented."
msgstr "Командата вÑе още не Ñе поддържа."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "Грешка при запиÑване наÑтройките за Twitter"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "ОÑновна наÑтройка на Ñайта"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Сайт"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "ÐаÑтройка на оформлението"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "ВерÑиÑ"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "ÐаÑтройка на пътищата"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Потребител"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "ÐаÑтройка на оформлението"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "ÐаÑтройка на пътищата"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "ÐаÑтройка на оформлението"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Ðова бележка"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "ÐаÑтройка на пътищата"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Опишете групата или темата в до %d букви"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Опишете групата или темата"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Изходен код"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° Ñтраница, блог или профил в друг Ñайт на групата"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Изходен код"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "ÐÐ´Ñ€ÐµÑ Ð½Ð° Ñтраница, блог или профил в друг Ñайт на групата"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Отказ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Премахване"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Ðвтор"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "ДоÑтавчик"
@@ -5117,47 +5576,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Паролата е запиÑана."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Паролата е запиÑана."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Резултат от командата"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Командата е изпълнена"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Грешка при изпълнение на командата"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "За Ñъжаление тази команда вÑе още не Ñе поддържа."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Ðе е открита бележка Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор."
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "ПотребителÑÑ‚ нÑма поÑледна бележка"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Грешка при обновÑване на потребител Ñ Ð¿Ð¾Ñ‚Ð²ÑŠÑ€Ð´ÐµÐ½ email адреÑ."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Грешка при обновÑване на потребител Ñ Ð¿Ð¾Ñ‚Ð²ÑŠÑ€Ð´ÐµÐ½ email адреÑ."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "За Ñъжаление тази команда вÑе още не Ñе поддържа."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Изпратено е побутване на %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5168,198 +5647,203 @@ msgstr ""
"Ðбонати: %2$s\n"
"Бележки: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Ðе е открита бележка Ñ Ñ‚Ð°ÐºÑŠÐ² идентификатор."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "ПотребителÑÑ‚ нÑма поÑледна бележка"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Бележката е отбелÑзана като любима."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Вече членувате в тази група."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Грешка при проÑледÑване — потребителÑÑ‚ не е намерен."
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s Ñе приÑъедини към групата %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Грешка при проÑледÑване — потребителÑÑ‚ не е намерен."
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s напуÑна групата %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Пълно име: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "МеÑтоположение: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Домашна Ñтраница: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "ОтноÑно: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-"Съобщението е твърде дълго. Ðай-много може да е 140 знака, а Ñте въвели %d."
+"Съобщението е твърде дълго. Ðай-много може да е %1$d знака, а Ñте въвели %2"
+"$d."
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "ПрÑкото Ñъобщение до %s е изпратено."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Грешка при изпращане на прÑкото Ñъобщение"
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Ðе можете да повтарÑте ÑобÑтвена бележка"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Вече Ñте повторили тази бележка."
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Бележката от %s е повторена"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Грешка при повтарÑне на бележката."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
"Съобщението е твърде дълго. Ðай-много може да е 140 знака, а Ñте въвели %d."
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Отговорът до %s е изпратен"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Грешка при запиÑване на бележката."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Уточнете името на потребителÑ, за когото Ñе абонирате."
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "ÐÑма такъв потребител"
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Ðе Ñте абонирани за този профил"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Ðбонирани Ñте за %s."
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Уточнете името на потребителÑ, от когото Ñе отпиÑвате."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "ОтпиÑани Ñте от %s."
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Командата вÑе още не Ñе поддържа."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Уведомлението е изключено."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Грешка при изключване на уведомлението."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Уведомлението е включено."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Грешка при включване на уведомлението."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "ОтпиÑани Ñте от %s."
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Ðе Ñте абонирани за никого."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Вече Ñте абонирани за Ñледните потребители:"
msgstr[1] "Вече Ñте абонирани за Ñледните потребители:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ðикой не е абониран за ваÑ."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Грешка при абониране на друг потребител за ваÑ."
msgstr[1] "Грешка при абониране на друг потребител за ваÑ."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Ðе членувате в нито една група."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Ðе членувате в тази група."
msgstr[1] "Ðе членувате в тази група."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5401,19 +5885,19 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Ðе е открит файл Ñ Ð½Ð°Ñтройки. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "Влизане в Ñайта"
@@ -5589,54 +6073,55 @@ msgstr "Групи Ñ Ð½Ð°Ð¹-много бележки"
msgid "Tags in %s group's notices"
msgstr "Етикети в бележките към групата %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Страницата не е доÑтъпна във вида медиÑ, който приемате"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Форматът на файла Ñ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÑ‚Ð¾ не Ñе поддържа."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Може да качите лого за групата ви."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "ЧаÑтично качване на файла."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "СиÑтемна грешка при качване на файл."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Файлът не е изображение или е повреден."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Форматът на файла Ñ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÑ‚Ð¾ не Ñе поддържа."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "ÐÑма такава бележка."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Ðеподдържан вид файл"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
-msgstr ""
+msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, fuzzy, php-format
msgid "Unknown inbox source %d."
msgstr "Ðепознат език \"%s\""
@@ -5657,11 +6142,13 @@ msgstr "Вход Ñ Ð¸Ð¼Ðµ и парола"
msgid "Sign up for a new account"
msgstr "Създаване на нова Ñметка"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Потвърждаване адреÑа на е-поща"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5678,12 +6165,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s вече получава бележките ви в %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5708,17 +6204,20 @@ msgstr ""
"----\n"
"Може да Ñмените адреÑа и наÑтройките за уведомÑване по е-поща на %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "БиографиÑ: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ðов Ð°Ð´Ñ€ÐµÑ Ð½Ð° е-поща за публикщуване в %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5731,21 +6230,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "СъÑтоÑние на %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Потвърждение за SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Очаква Ñе потвърждение за този телефонен номер."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Побутнати Ñте от %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5761,12 +6270,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ðово лично Ñъобщение от %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5785,12 +6296,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) отбелÑза бележката ви като любима"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5811,12 +6324,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5829,6 +6352,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5841,7 +6376,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "от"
@@ -5896,25 +6431,25 @@ msgstr "Грешка при запиÑване файла на диÑка."
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Грешка при изтеглÑне на Ð¾Ð±Ñ‰Ð¸Ñ Ð¿Ð¾Ñ‚Ð¾Ðº"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5955,14 +6490,12 @@ msgid "Attach a file"
msgstr "ПрикрепÑне на файл"
#: lib/noticeform.php:212
-#, fuzzy
msgid "Share my location"
-msgstr "Грешка при запазване етикетите."
+msgstr "СподелÑне на меÑтоположението ми"
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "Грешка при запазване етикетите."
+msgstr "Без ÑподелÑне на меÑтоположението ми"
#: lib/noticeform.php:216
msgid ""
@@ -5970,48 +6503,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "С"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "Ю"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "И"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "З"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "в контекÑÑ‚"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Повторено от"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "ОтговарÑне на тази бележка"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Отговор"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Бележката е повторена."
@@ -6035,6 +6572,10 @@ msgstr "Грешка при вмъкване на нов профил"
msgid "Error inserting avatar"
msgstr "Грешка при вмъкване на аватар"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Грешка при обновÑване на отдалечен профил"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Грешка при вмъкване на отдалечен профил"
@@ -6081,12 +6622,11 @@ msgstr "Изпратените от Ð²Ð°Ñ ÑъобщениÑ"
msgid "Tags in %s's notices"
msgstr "Етикети в бележките на %s"
-#: lib/plugin.php:114
-#, fuzzy
+#: lib/plugin.php:115
msgid "Unknown"
-msgstr "Ðепознато дейÑтвие"
+msgstr "Ðепознато"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Ðбонаменти"
@@ -6094,32 +6634,33 @@ msgstr "Ðбонаменти"
msgid "All subscriptions"
msgstr "Ð’Ñички абонаменти"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Ðбонати"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Ð’Ñички абонати"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "Потребител"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "УчаÑтник от"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Ð’Ñички групи"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "ЛипÑват аргументи return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6143,10 +6684,17 @@ msgstr "Избрано"
msgid "Popular"
msgstr "ПопулÑрно"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "ЛипÑват аргументи return-to."
+
#: lib/repeatform.php:107
-#, fuzzy
msgid "Repeat this notice?"
-msgstr "ПовтарÑне на тази бележка"
+msgstr "Да Ñе повтори ли тази бележка?"
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Да"
#: lib/repeatform.php:132
msgid "Repeat this notice"
@@ -6157,7 +6705,7 @@ msgstr "ПовтарÑне на тази бележка"
msgid "Revoke the \"%s\" role from this user"
msgstr "СпиÑък Ñ Ð¿Ð¾Ñ‚Ñ€ÐµÐ±Ð¸Ñ‚ÐµÐ»Ð¸Ñ‚Ðµ в тази група."
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6172,9 +6720,8 @@ msgid "Sandbox this user"
msgstr "Разблокиране на този потребител"
#: lib/searchaction.php:120
-#, fuzzy
msgid "Search site"
-msgstr "ТърÑене"
+msgstr "ТърÑене в Ñайта"
#: lib/searchaction.php:126
msgid "Keyword(s)"
@@ -6185,9 +6732,8 @@ msgid "Search"
msgstr "ТърÑене"
#: lib/searchaction.php:162
-#, fuzzy
msgid "Search help"
-msgstr "ТърÑене"
+msgstr "Помощ за Ñ‚ÑŠÑ€Ñенето"
#: lib/searchgroupnav.php:80
msgid "People"
@@ -6211,7 +6757,7 @@ msgstr "Ðеозаглавен раздел"
#: lib/section.php:106
msgid "More..."
-msgstr ""
+msgstr "Още…"
#: lib/silenceform.php:67
msgid "Silence"
@@ -6259,6 +6805,50 @@ msgstr ""
msgid "None"
msgstr "Без"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "ÐеуÑпешно обновÑване на аватара."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Грешка при обновÑване на отдалечен профил"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Ðай-чеÑто пишещи"
@@ -6289,91 +6879,108 @@ msgstr "ОтпиÑване от този потребител"
msgid "Unsubscribe"
msgstr "ОтпиÑване"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "ПотребителÑÑ‚ нÑма профил."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Редактиране на аватара"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "ПотребителÑки дейÑтвиÑ"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Редактиране на профила"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Редактиране"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Изпращате на прÑко Ñъобщение до този потребител."
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Съобщение"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "ПотребителÑки профил"
+msgstr "ПотребителÑка ролÑ"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "ÐдминиÑтратори"
+msgstr "ÐдминиÑтратор"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "Модератор"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "преди нÑколко Ñекунди"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "преди около минута"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "преди около %d минути"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "преди около чаÑ"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "преди около %d чаÑа"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "преди около ден"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "преди около %d дни"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "преди около меÑец"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "преди около %d меÑеца"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "преди около година"
@@ -6387,8 +6994,9 @@ msgstr "%s не е допуÑтим цвÑÑ‚!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s не е допуÑтим цвÑÑ‚! Използвайте 3 или 6 шеÑтнадеÑетични знака."
-#: lib/xmppmanager.php:402
-#, fuzzy, php-format
+#: lib/xmppmanager.php:403
+#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
-"Съобщението е твърде дълго. Ðай-много може да е 140 знака, а Ñте въвели %d."
+"Съобщението е твърде дълго. Ðай-много може да е %1$d знака, а Ñте въвели %2"
+"$d."
diff --git a/locale/br/LC_MESSAGES/statusnet.po b/locale/br/LC_MESSAGES/statusnet.po
index 2197b9e74..2b12d7f56 100644
--- a/locale/br/LC_MESSAGES/statusnet.po
+++ b/locale/br/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:25+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:10+0000\n"
"Language-Team: Dutch\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: br\n"
"X-Message-Group: out-statusnet\n"
@@ -22,14 +22,14 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Moned"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
msgid "Site access settings"
-msgstr ""
+msgstr "Arventennoù moned d'al lec'hienn"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
@@ -39,7 +39,7 @@ msgstr "Enskrivadur"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
-msgstr ""
+msgstr "Nac'h ouzh an implijerien dizanv (nann-luget) da welet al lec'hienn ?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
@@ -72,84 +72,89 @@ msgstr "Serr"
msgid "Save access settings"
msgstr "Enrollañ an arventennoù moned"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Enrollañ"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "N'eus ket eus ar bajenn-se"
+msgid "No such page."
+msgstr "N'eus ket eus ar bajenn-se."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "N'eus ket eus an implijer-se."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s hag e vignoned, pajenn %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s hag e vignoned"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Gwazh evit mignoned %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Gwazh evit mignoned %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Gwazh evit mignoned %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -157,77 +162,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
+"Perak ne [groufec'h ket ur gont](%%action.register%%) ha bezañ an hini "
+"gentañ da embann un dra !"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "C'hwi hag o mignoned"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Hizivadennoù %1$s ha mignoned e %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "N'eo ket bet kavet an hentenn API !"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Ezhomm en deus an argerzh-mañ eus ur POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Diposubl eo hizivaat an implijer."
@@ -236,7 +245,7 @@ msgstr "Diposubl eo hizivaat an implijer."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "An implijer-mañ n'eus profil ebet dezhañ."
@@ -246,9 +255,9 @@ msgid "Could not save profile."
msgstr "Diposubl eo enrollañ ar profil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -265,7 +274,7 @@ msgstr ""
#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
msgid "Unable to save your design settings."
-msgstr ""
+msgstr "Dibosupl eo enrollañ an arventennoù empentiñ."
#: actions/apiaccountupdateprofilebackgroundimage.php:187
#: actions/apiaccountupdateprofilecolors.php:142
@@ -274,15 +283,15 @@ msgstr "Diposubl eo hizivat ho design."
#: actions/apiblockcreate.php:105
msgid "You cannot block yourself!"
-msgstr "Ne c'helloc'h ket ho stankañ ho unan !"
+msgstr "N'hallit ket en em stankañ hoc'h-unan !"
#: actions/apiblockcreate.php:126
msgid "Block user failed."
-msgstr "N'eo ket bet stanke an implijer."
+msgstr "N'eus ket bet tu da stankañ an implijer."
#: actions/apiblockdestroy.php:114
msgid "Unblock user failed."
-msgstr "N'eus ket bet tu distankañ an implijer."
+msgstr "N'eus ket bet tu da zistankañ an implijer."
#: actions/apidirectmessage.php:89
#, php-format
@@ -304,49 +313,49 @@ msgstr "Kemennadennoù war-eeun kaset da %s"
msgid "All the direct messages sent to %s"
msgstr "An holl gemennadennoù war-eeun kaset da %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Kemenadenn hep testenn !"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Re hir eo ! Ment hirañ ar gemenadenn a zo a %d arouezenn."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "N'eo ket bet kavet ar resever."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Ne c'helloc'h ket kas kemennadennoù personel d'an implijerien n'int ket ho "
"mignoned."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "N'eo bet kavet statud ebet gant an ID-mañ."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Ur pennroll eo dija an ali-mañ."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Diposupl eo krouiñ ar pennroll-mañ."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "N'eo ket ar statud-mañ ur pennroll."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Diposupl eo dilemel ar pennroll-mañ."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Diposupl eo heuliañ an implijer : N'eo ket bet kavet an implijer."
+msgid "Could not follow user: profile not found."
+msgstr "Dibosupl eo heuliañ an implijer : n'eo ket bet kavet ar profil."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -362,9 +371,10 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Ne c'hallit ket chom hep ho heuliañ hoc'h-unan."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr ""
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Rankout a reoc'h reiñ daou id pe lesanv."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -374,115 +384,127 @@ msgstr "Diposubl eo termeniñ an implijer mammenn."
msgid "Could not find target user."
msgstr "Diposubl eo kavout an implijer pal."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Implijet eo dija al lesanv-se. Klaskit unan all."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "N'eo ket ul lesanv mat."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "N'eo ket chomlec'h al lec'hienn personel un URL reizh."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Re hir eo an anv klok (255 arouezenn d'ar muiañ)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Re hir eo an deskrivadur (%d arouezenn d'ar muiañ)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Re hir eo al lec'hiadur (255 arouezenn d'ar muiañ)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Re a aliasoù ! %d d'ar muiañ."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Alias fall : \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Alias fall : \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Implijet e vez an alias \"%s\" dija. Klaskit gant unan all."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Ne c'hell ket an alias bezañ ar memes hini eget al lesanv."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "N'eo ket bet kavet ar strollad"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "N'eo ket bet kavet ar strollad."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Un ezel eus ar strollad-mañ eo dija."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Stanket oc'h bet eus ar strollad-mañ gant ur merour."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Diposubl eo stagañ an implijer %1$s d'ar strollad %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "N'oc'h ket ezel eus ar strollad-mañ."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Diposubl eo dilemel an implijer %1$s deus ar strollad %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Strollad %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Strolladoù %1s m'eo ezel %2s."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Strolladoù %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "strolladoù war %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Enporzhiadenn c'hwitet."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Arventenn oauth_token nann-roet."
@@ -492,22 +514,22 @@ msgid "Invalid token."
msgstr "Fichenn direizh."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
msgid "There was a problem with your session token. Try again, please."
-msgstr ""
+msgstr "Ur gudenn 'zo bet gant ho jedaouer dalc'h. Mar plij adklaskit."
#: actions/apioauthauthorize.php:135
msgid "Invalid nickname / password!"
@@ -533,18 +555,21 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
-msgstr ""
+msgstr "Kinnig ar furmskrid dic'hortoz."
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "C'hoant 'zo gant ur poellad kevreañ gant ho kont"
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
@@ -558,20 +583,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Kont"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Lesanv"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Ger-tremen"
@@ -587,11 +614,11 @@ msgstr "Aotreañ"
msgid "Allow or deny access to your account information."
msgstr "Aotreañ pe nac'hañ ar moned da ditouroù ho kont."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Ezhomm en deus an argerzh-mañ ur POST pe un DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Ne c'helloc'h ket dilemel statud un implijer all."
@@ -608,59 +635,63 @@ msgstr "Ne c'helloc'h ket adlavar ho alioù."
msgid "Already repeated that notice."
msgstr "Adlavaret o peus dija an ali-mañ."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Statud diverket."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "N'eo ket bet kavet a statud evit an ID-mañ"
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Re hir eo ! Ment hirañ an ali a zo a %d arouezenn."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "N'eo ket bet kavet"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "N'eo ket bet kavet."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Diembreget eo ar furmad-se."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Pennroll %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s statud pennroll da %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Hizivadennoù a veneg %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Oberezhioù publik %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s statud an holl !"
@@ -675,19 +706,19 @@ msgstr "Adkemeret evit %s"
msgid "Repeats of %s"
msgstr "Adkemeret eus %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Alioù merket gant %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
-msgstr ""
+msgstr "Hizivadennoù merket gant %1$s e %2$s !"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "N'eo ket bet kavet."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Hentenn API war sevel."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -708,8 +739,9 @@ msgstr "Ment ebet."
msgid "Invalid size."
msgstr "Ment direizh."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -719,10 +751,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Implijer hep profil klotaus"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Implijer hep profil klotus."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -740,7 +772,7 @@ msgid "Preview"
msgstr "Rakwelet"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Diverkañ"
@@ -752,23 +784,27 @@ msgstr "Enporzhiañ"
msgid "Crop"
msgstr "Adframmañ"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "N'eus bet enporzhiet restr ebet."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
-msgstr ""
+msgstr "Diuzit ur zonenn gant ur stumm karrez evit tremeniñ ho avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Kollet eo bet roadennoù."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Hizivaet eo bet an avatar."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Ur gudenn 'zo bet e-pad hizivadenn an avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Dilammet eo bet an Avatar."
@@ -776,38 +812,53 @@ msgstr "Dilammet eo bet an Avatar."
msgid "You already blocked that user."
msgstr "Stanket o peus dija an implijer-mañ."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Stankañ an implijer-mañ"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
-msgstr "Ket"
+msgstr "Nann"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Arabat stankañ an implijer-mañ"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ya"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Stankañ an implijer-mañ"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Diposubl eo enrollañ an titouroù stankañ."
@@ -820,8 +871,8 @@ msgstr "Diposubl eo enrollañ an titouroù stankañ."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "N'eus ket eus ar strollad-se."
@@ -850,11 +901,13 @@ msgstr "Distankañ"
#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
msgid "Unblock this user"
-msgstr "Distankañ an implijer-se"
+msgstr "Distankañ an implijer-mañ"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Postañ war "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Postañ war %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -868,33 +921,43 @@ msgstr "N'eo ket bet kavet ar c'hod kadarnaat."
msgid "That confirmation code is not for you!"
msgstr "N'eo ket ar c'hod-se evidoc'h !"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "N'eo ket bet anavezet seurt ar chomlec'h %s"
+msgid "Unrecognized address type %s."
+msgstr "Doare chomlec'h dianav %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Kadarnaet eo bet dija ar chomlec'h-mañ."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Diposubl eo hizivaat an implijer."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Diposubl eo dilemel ar postel kadarnadur."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Chomlec'h kadarnaet"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Kadarnaet eo bet ar chomlec'h \"%s\" evit ho kont."
@@ -904,7 +967,7 @@ msgid "Conversation"
msgstr "Kaozeadenn"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Ali"
@@ -923,9 +986,9 @@ msgstr "N'oc'h ket perc'henn ar poellad-se."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
-msgstr ""
+msgstr "Ur gudenn 'zo bet gant ho jedaouer dalc'h."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
msgid "Delete application"
@@ -938,21 +1001,23 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Arabat eo dilemel ar poellad-mañ"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Dilemel ar poelad-se"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Nann-luget."
@@ -975,17 +1040,19 @@ msgstr "Dilemel un ali"
msgid "Are you sure you want to delete this notice?"
msgstr "Ha sur oc'h ho peus c'hoant dilemel an ali-mañ ?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Arabat dilemel an ali-mañ"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Dilemel an ali-mañ"
#: actions/deleteuser.php:67
msgid "You cannot delete users."
-msgstr "Ne c'helloc'h ket diverkañ implijerien"
+msgstr "N'hallit ket diverkañ implijerien."
#: actions/deleteuser.php:74
msgid "You can only delete local users."
@@ -1001,125 +1068,145 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
-msgstr "Diverkañ an implijer-se"
+msgstr "Diverkañ an implijer-mañ"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Design"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Arventennoù design evit al lec'hienn StatusNet-mañ."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL fall evit al logo."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "N'eus ket tu kaout an dodenn : %s"
+msgid "Theme not available: %s."
+msgstr "N'eus ket eus ar gaoz-se : %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Cheñch al logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo al lec'hienn"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Lakaat un dodenn all"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Dodenn al lec'hienn"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Dodenn evit al lec'hienn."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Dodenn personelaet"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Kemmañ ar skeudenn foñs"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Background"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr ""
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Gweredekaet"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Diweredekaet"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Gweredekaat pe diweredekaat ar skeudenn foñs."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
-msgstr ""
+msgstr "Adober gant ar skeudenn drekleur"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Kemmañ al livioù"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Endalc'h"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barenn kostez"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Testenn"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Liammoù"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Araokaet"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personelaet"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Implijout an talvoudoù dre ziouer"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Adlakaat an neuz dre ziouer."
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Adlakaat an arventennoù dre ziouer"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Enrollañ"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Enrollañ an design"
@@ -1224,11 +1311,17 @@ msgstr "Leunit ar furmskrid-mañ evit kemmañ dibarzhioù ar strollad."
msgid "description is too long (max %d chars)."
msgstr "re hir eo an deskrivadur (%d arouezenn d'ar muiañ)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Alias fall : \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Diposubl eo hizivaat ar strollad."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Diposubl eo krouiñ an aliasoù."
@@ -1236,178 +1329,229 @@ msgstr "Diposubl eo krouiñ an aliasoù."
msgid "Options saved."
msgstr "Enrollet eo bet ho dibarzhioù."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Arventennoù ar postel"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Merañ ar posteloù a fell deoc'h resevout a-berzh %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Chomlec'h"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Chomlec'h postel"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Chomlec'h postel gwiriekaet er mare-mañ."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Dilemel"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Nullañ"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Chomlec'h postel"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Chomlec'h postel, evel \"AnvImplijer@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Ouzhpennañ"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Postel o tont"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nevez"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Penndibaboù"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Penndibaboù ar posteloù"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Kas din ur postel pa lak unan bennak unan eus va alioù evel pennroll."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Kas din ur postel pa gas unan bennak ur gemennadenn bersonel din."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Kas din ur postel pa gas unan bennak ur \"@-respont\" din."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "C'hoant am eus kas va alioù dre bostel."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Embann ur MicroID evit ma chomlec'h postel."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Penndibaboù enrollet"
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Enrollet eo bet an arventennoù postel."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
-msgstr "N'eus chomlec'h postel ebet."
+msgstr "Chomlec'h postel ebet."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "N'eo ket ur chomlec'h postel reizh."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Ho postel eo dija."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
-msgstr ""
+msgstr "Dibosupl eo ensoc'hañ ar c'hod gwiriekaat."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
msgstr "N'eo ket mat ar chomlec'h postelerezh prim."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Nullet eo bet ar gadarnadenn."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Nullet eo bet kadarnadenn ar postel."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "N'eo ket ho postel."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Dilamet eo bet ar chomlec'h."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Dilamet eo bet ar chomlec'h postel."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
-msgstr ""
+msgstr "Chomlec'h postel ebet o tont."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
-msgstr ""
+msgstr "Dibosupl eo hizivaat doser an implijer."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1417,7 +1561,7 @@ msgstr "Ouzhpennet eo bet an ali-mañ d'ho pennrolloù dija !"
#: actions/favor.php:92 lib/disfavorform.php:140
msgid "Disfavor favorite"
-msgstr ""
+msgstr "Tennañ ar pennroll"
#: actions/favorited.php:65 lib/popularnoticesection.php:91
#: lib/publicgroupnav.php:93
@@ -1520,9 +1664,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr ""
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Fazi en ur hizivaat ar profil a-bell."
#: actions/getfile.php:79
msgid "No such file."
@@ -1550,13 +1694,13 @@ msgstr "An implijer-mañ en deus dija ar roll-mañ."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "N'eo bet resisaet profil ebet"
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "N'eus profil ebet gant an ID-mañ."
@@ -1577,11 +1721,11 @@ msgstr "An implijer-mañ a zo stanket dija eus ar strollad."
msgid "User is not a member of group."
msgstr "N'eo ket an implijer-mañ ezel eus ur strollad."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Stankañ an implijer-mañ eus ar strollad"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1589,15 +1733,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Arabat stankañ an implijer-mañ eus ar strollad."
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Stankañ an implijer-mañ eus ar strollad-se"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1638,10 +1784,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr ""
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1672,34 +1814,38 @@ msgstr "Roll an implijerien enrollet er strollad-mañ."
msgid "Admin"
msgstr "Merañ"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Stankañ"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Lakaat an implijer da vezañ ur merour eus ar strollad"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Lakaat ur merour"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Lakaat an implijer-mañ da verour"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Oberezhioù %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Hizivadenn izili %1$s e %2$s !"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Strolladoù"
@@ -1719,7 +1865,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Krouiñ ur strollad nevez"
@@ -1767,90 +1913,146 @@ msgstr "N'eo ket stanket an implijer-mañ eus ar strollad."
msgid "Error removing the block."
msgstr "Ur fazi a zo bet e-pad nulladenn ar stankadenn."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Arventennoù ar bostelerezh prim"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Dizimplijadus eo ar bostelerezh prim"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Chomlec'h postelerezh prim"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Chomlec'h Jabber/GTalk kadarnaet er mare-mañ."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Chomlec'h postelerezh prim"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Penndibaboù ar bostelerezh prim"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Kas din an alioù dre Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Embann ur MicroID evit ma chomlec'h Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Penndibaboù enrollet"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "ID Jabber ebet."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Diposubl eo implijout an ID Jabber-mañ"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "N'eo ket un ID Jabber reizh."
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Ho ID Jabber eo dija"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Implijet eo an Jabber ID-mañ gant un implijer all."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "N'eo ket mat ar chomlec'h postelerezh prim."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Diposubl eo dilemel ar postel kadarnadur."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Nullet eo bet kadarnadenn ar bostelerezh prim."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "N'eo ket ho ID Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Dilamet eo bet ar chomlec'h."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1871,8 +2073,8 @@ msgstr "Diweredekaat eo bet ar bedadennoù."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Rankout a reoc'h bezañ luget evit pediñ implijerien all e %s."
#: actions/invite.php:72
#, php-format
@@ -1881,7 +2083,7 @@ msgstr "Fall eo ar postel : %s"
#: actions/invite.php:110
msgid "Invitation(s) sent"
-msgstr "Kaset eo bet ar bedadenn(où)"
+msgstr "Pedadenn(où) kaset"
#: actions/invite.php:112
msgid "Invite new users"
@@ -1891,7 +2093,9 @@ msgstr "Pediñ implijerien nevez"
msgid "You are already subscribed to these users:"
msgstr "Koumanantet oc'h dija d'an implijerien-mañ :"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1928,11 +2132,11 @@ msgstr "Chomlec'hioù an implijerien da bediñ (unan dre linenn)"
#: actions/invite.php:192
msgid "Personal message"
-msgstr "Kemenadenn bersonel"
+msgstr "Kemennadenn bersonel"
#: actions/invite.php:194
msgid "Optionally add a personal message to the invitation."
-msgstr ""
+msgstr "Ouzhpennañ ur gemennadenn bersonel d'ar bedadenn (diret)."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
@@ -1940,12 +2144,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Kas"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s a bed ac'hanoc'h d'en em enskrivañ war %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -1984,7 +2190,9 @@ msgstr "Rankout a reoc'h bezañ luget evit mont en ur strollad."
msgid "No nickname or ID."
msgstr "Lesanv pe ID ebet."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s a zo bet er strollad %2$s"
@@ -1993,52 +2201,54 @@ msgstr "%1$s a zo bet er strollad %2$s"
msgid "You must be logged in to leave a group."
msgstr "Ret eo deoc'h bezañ kevreet evit kuitaat ur strollad"
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "N'oc'h ket un ezel eus ar strollad-mañ."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s en deus kuitaet ar strollad %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Kevreet oc'h dija."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Anv implijer pe ger-tremen direizh."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Ur fazi 'zo bet e-pad hizivadenn an implijer. Moarvat n'oc'h ket aotreet "
"evit en ober."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Kevreañ"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Kevreañ d'al lec'hienn"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Kaout soñj"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Digeriñ va dalc'h war-eeun ar wechoù o tont ; arabat en ober war "
"urzhiataeroù rannet pe publik !"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Ha kollet o peus ho ker-tremen ?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2046,14 +2256,17 @@ msgstr ""
"Evit abegoù a surentezh, mar plij adlakait hoc'h anv implijer hag ho ker-"
"tremen a-benn enrollañ ho penndibaboù."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Kevreit gant ho anv implijer hag ho ker-tremen."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Kevreit gant ho anv implijer hag ho ker tremen. N'o peus ket a anv implijer "
-"evit c'hoazh ? [Krouit](%%action.register%%) ur gont nevez."
+"N'o peus ket a anv implijer evit c'hoazh ? [Krouit](%%action.register%%) ur "
+"gont nevez."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2075,8 +2288,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Diposubl eo lakaat %1$s da merour ar strollad %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Statud ebet er mare-mañ"
+msgid "No current status."
+msgstr "Statud ebet er mare-mañ."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2110,12 +2323,12 @@ msgstr "Implijit ar furmskrid-mañ a-benn krouiñ ur strollad nevez."
msgid "New message"
msgstr "Kemennadenn nevez"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Ne c'helloc'h ket kas kemennadennoù d'an implijer-mañ."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Goullo eo !"
@@ -2123,7 +2336,7 @@ msgstr "Goullo eo !"
msgid "No recipient specified."
msgstr "N'o peus ket lakaet a resever."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2132,14 +2345,14 @@ msgstr ""
#: actions/newmessage.php:181
msgid "Message sent"
-msgstr "Kaset eo bet ar gemenadenn"
+msgstr "Kemennadenn kaset"
#: actions/newmessage.php:185
#, php-format
msgid "Direct message to %s sent."
msgstr "Kaset eo bet da %s ar gemennadenn war-eeun."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Fazi Ajax"
@@ -2147,7 +2360,7 @@ msgstr "Fazi Ajax"
msgid "New notice"
msgstr "Ali nevez"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Ali embannet"
@@ -2160,7 +2373,7 @@ msgstr ""
#: actions/noticesearch.php:78
msgid "Text search"
-msgstr "Klask un destenn"
+msgstr "Klask testennoù"
#: actions/noticesearch.php:91
#, php-format
@@ -2193,7 +2406,7 @@ msgstr ""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2234,11 +2447,11 @@ msgid "You are not a user of that application."
msgstr "N'oc'h ket un implijer eus ar poellad-mañ."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, fuzzy, php-format
+msgid "Unable to revoke access for app: %s."
msgstr "Dibosupl eo nullañ moned ar poellad : "
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2246,25 +2459,30 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "N'en deus ket an ali a profil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "N'en deus ket an ali a profil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Statud %1$s war %2$s"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "seurt an danvez "
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Hepken "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2302,7 +2520,7 @@ msgstr ""
#: actions/othersettings.php:123
msgid "Show or hide profile designs."
-msgstr ""
+msgstr "Diskouez pe kuzhat designoù ar profil."
#: actions/othersettings.php:153
msgid "URL shortening service is too long (max 50 chars)."
@@ -2348,11 +2566,11 @@ msgstr "Cheñch ger-tremen"
#: actions/passwordsettings.php:69
msgid "Change your password."
-msgstr "Kemmañ ho ger tremen."
+msgstr "Cheñch ger-tremen."
#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
msgid "Password change"
-msgstr "Kemmañ ar ger-tremen"
+msgstr "Kemmañ ger-tremen"
#: actions/passwordsettings.php:104
msgid "Old password"
@@ -2367,7 +2585,7 @@ msgid "6 or more characters"
msgstr "6 arouezenn pe muioc'h"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Kadarnaat"
@@ -2379,23 +2597,23 @@ msgstr "Memestra eget ar ger tremen a-us"
msgid "Change"
msgstr "Kemmañ"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Rankout a ra ar ger-tremen bezañ gant 6 arouezenn d'an nebeutañ."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Ne glot ket ar gerioù-tremen."
#: actions/passwordsettings.php:165
msgid "Incorrect old password"
-msgstr "ger-termen kozh amreizh"
+msgstr "Ger-termen kozh direizh"
#: actions/passwordsettings.php:181
msgid "Error saving user; invalid."
msgstr "Ur fazi 'zo bet e-pad enolladenn an implijer ; diwiriek."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Dibosupl eo enrollañ ar ger-tremen nevez."
@@ -2404,7 +2622,7 @@ msgid "Password saved."
msgstr "Ger-tremen enrollet."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Hentoù"
@@ -2413,23 +2631,23 @@ msgid "Path and server settings for this StatusNet site."
msgstr ""
#: actions/pathsadminpanel.php:157
-#, php-format
-msgid "Theme directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Theme directory not readable: %s."
+msgstr "N'eus ket tu kaout an dodenn : %s"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Restroù an avataroù"
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
+msgid "Background directory not writable: %s."
msgstr ""
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
+msgid "Locales directory not readable: %s."
msgstr ""
#: actions/pathsadminpanel.php:183
@@ -2438,7 +2656,7 @@ msgstr ""
#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
msgid "Site"
-msgstr "Lec'hien"
+msgstr "Lec'hienn"
#: actions/pathsadminpanel.php:238
msgid "Server"
@@ -2446,7 +2664,7 @@ msgstr "Servijer"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
-msgstr ""
+msgstr "Anv ostiz servijer al lec'hienn."
#: actions/pathsadminpanel.php:242
msgid "Path"
@@ -2454,7 +2672,7 @@ msgstr "Hent"
#: actions/pathsadminpanel.php:242
msgid "Site path"
-msgstr "Hent al lec'hien"
+msgstr "Hent al lec'hienn"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
@@ -2498,11 +2716,11 @@ msgstr "Servijer avatar"
#: actions/pathsadminpanel.php:288
msgid "Avatar path"
-msgstr ""
+msgstr "Hent an avataroù"
#: actions/pathsadminpanel.php:292
msgid "Avatar directory"
-msgstr ""
+msgstr "Restroù an avataroù"
#: actions/pathsadminpanel.php:301
msgid "Backgrounds"
@@ -2538,11 +2756,11 @@ msgstr "Atav"
#: actions/pathsadminpanel.php:329
msgid "Use SSL"
-msgstr "Implij SSl"
+msgstr "Implijout SSL"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
-msgstr ""
+msgstr "Peur implijout SSL"
#: actions/pathsadminpanel.php:335
msgid "SSL server"
@@ -2562,29 +2780,34 @@ msgid ""
"Search for people on %%site.name%% by their name, location, or interests. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
+"Klask tud e %%site.name%% dre o anv, o lec'hiadur pe o diduadennoù. "
+"Dispartiañ termenoù ar c'hlask gant esaouennoù. Ret eo e vefe da nebeutañ 3 "
+"arouezenn."
#: actions/peoplesearch.php:58
msgid "People search"
msgstr "Klask tud"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "N'eo ket reizh ar merk-se : %s"
+msgid "Not a valid people tag: %s."
+msgstr "N'eo ket reizh ar merk-se : %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
-msgstr ""
+msgstr "Implijerien bet merket drezo o unan gant %1$s - pajenn %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr ""
+msgid "Invalid notice content."
+msgstr "Danvez direizh an ali."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
+"Aotre-implijout ar menegoù \"%1$s\" ne ya ket gant aotre-implijout al "
+"lec'hienn \"%2$s\"."
#: actions/profilesettings.php:60
msgid "Profile settings"
@@ -2594,6 +2817,8 @@ msgstr "Arventennoù ar profil"
msgid ""
"You can update your personal profile info here so people know more about you."
msgstr ""
+"Gellout a reoc'h hizivaat titouroù ho profil evit ma ouifemp muioc'h a draoù "
+"diwar ho penn."
#: actions/profilesettings.php:99
msgid "Profile information"
@@ -2601,54 +2826,55 @@ msgstr "Titouroù ar profil"
#: actions/profilesettings.php:108 lib/groupeditform.php:154
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
-msgstr ""
+msgstr "1 da 64 lizherenn vihan pe sifr, hep poentaouiñ nag esaouenn"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Anv klok"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Pajenn degemer"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
-msgstr ""
+msgstr "URL ho pajenn degemer, ho blog, pe ho profil en ul lec'hienn all"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
-msgstr ""
+msgstr "Deskrivit ac'hanoc'h hag ho interestoù, gant %d arouezenn"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
-msgstr ""
+msgstr "Deskrivit hoc'h-unan hag ar pezh a zedenn ac'hanoc'h"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Buhezskrid"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Lec'hiadur"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
-msgstr ""
+msgstr "El lec'h m'emaoc'h, da skouer \"Kêr, Stad (pe Rannvro), Bro\""
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
-msgstr ""
+msgstr "Rannañ va lec'hiadur pa bostan un ali."
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Balizennoù"
@@ -2656,6 +2882,8 @@ msgstr "Balizennoù"
msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
msgstr ""
+"Merkoù evidoc'h oc'h unan (lizherennoù, sifroù, -, ., ha _), dispartiet gant "
+"virgulennoù pe esaouennoù"
#: actions/profilesettings.php:151
msgid "Language"
@@ -2671,14 +2899,16 @@ msgstr "Takad eur"
#: actions/profilesettings.php:162
msgid "What timezone are you normally in?"
-msgstr ""
+msgstr "Pehini eo gwerzhid-eur boaz ?"
#: actions/profilesettings.php:167
msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
+"En em enskrivañ ez emgefre d'an holl re hag en em goumanant din (erbedet "
+"evit an implijerien nann-denel)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Re hir eo ar bio (%d arouezenn d'ar muiañ)."
@@ -2698,11 +2928,11 @@ msgstr "Balizenn direizh : \"%s\""
#: actions/profilesettings.php:306
msgid "Couldn't update user for autosubscribe."
-msgstr ""
+msgstr "Dibosupl eo hizivaat ar c'houmanant ez emgefre."
#: actions/profilesettings.php:363
msgid "Couldn't save location prefs."
-msgstr ""
+msgstr "Dibosupl eo enrollañ an dibaboù lec'hiadur."
#: actions/profilesettings.php:375
msgid "Couldn't save profile."
@@ -2719,33 +2949,33 @@ msgstr "Enrollet eo bet an arventennoù."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr ""
+msgid "Beyond the page limit (%s)."
+msgstr "Dreist da bevennoù ar bajenn (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
-msgstr ""
+msgstr "Dibosupl eo adtapout al lanv foran."
#: actions/public.php:130
#, php-format
msgid "Public timeline, page %d"
-msgstr ""
+msgstr "Lanv foran - pajenn %d"
#: actions/public.php:132 lib/publicgroupnav.php:79
msgid "Public timeline"
-msgstr ""
+msgstr "Lanv foran"
#: actions/public.php:160
msgid "Public Stream Feed (RSS 1.0)"
-msgstr ""
+msgstr "Neudenn gwazh foran (RSS 1.0)"
#: actions/public.php:164
msgid "Public Stream Feed (RSS 2.0)"
-msgstr ""
+msgstr "Neudenn gwazh foran (RSS 2.0)"
#: actions/public.php:168
msgid "Public Stream Feed (Atom)"
-msgstr ""
+msgstr "Neudenn gwazh foran (Atom)"
#: actions/public.php:188
#, php-format
@@ -2753,6 +2983,7 @@ msgid ""
"This is the public timeline for %%site.name%% but no one has posted anything "
"yet."
msgstr ""
+"Kronologiezh foran %%site.name%% eo, met den n'en deus skrivet tra ebet."
#: actions/public.php:191
msgid "Be the first to post!"
@@ -2763,6 +2994,8 @@ msgstr "Bezit an hini gentañ da bostañ !"
msgid ""
"Why not [register an account](%%action.register%%) and be the first to post!"
msgstr ""
+"Perak ne [groufec'h ket ur gont](%%action.register%%) ha bezañ an hini "
+"gentañ da embann un dra !"
#: actions/public.php:242
#, php-format
@@ -2780,15 +3013,17 @@ msgid ""
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
+"%%site.name%% a zo ur servij [micro-blogging](http://br.wikipedia.org/wiki/"
+"Microblog) diazezet war ar meziant frank [StatusNet](http://status.net/)."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
-msgstr ""
+msgstr "Koumoulenn a merkoù foran"
#: actions/publictagcloud.php:63
#, php-format
msgid "These are most popular recent tags on %s "
-msgstr ""
+msgstr "Ar merkoù ziwezhañ evit ar re vrudetañ war %s "
#: actions/publictagcloud.php:69
#, php-format
@@ -2797,7 +3032,7 @@ msgstr ""
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
-msgstr ""
+msgstr "Bezit an hini gentañ oc'h embann unan !"
#: actions/publictagcloud.php:75
#, php-format
@@ -2805,10 +3040,12 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to post "
"one!"
msgstr ""
+"Perak ne [groufec'h ket ur gont](%%action.register%%) ha bezañ an hini "
+"gentañ da embann un dra !"
#: actions/publictagcloud.php:134
msgid "Tag cloud"
-msgstr ""
+msgstr "Koumoulenn merkoù"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
@@ -2824,29 +3061,31 @@ msgstr "N'eo ket ur c'hod adtapout an dra-mañ."
#: actions/recoverpassword.php:73
msgid "Recovery code for unknown user."
-msgstr ""
+msgstr "Kod adtapout evit un implijer dizanv."
#: actions/recoverpassword.php:86
msgid "Error with confirmation code."
-msgstr ""
+msgstr "Ur fazi 'zo bet gant ar c'hod kadarnaat."
#: actions/recoverpassword.php:97
msgid "This confirmation code is too old. Please start again."
-msgstr ""
+msgstr "Re gozh eo ar c'hod gwiriañ. Adkrogit mar plij."
#: actions/recoverpassword.php:111
msgid "Could not update user with confirmed email address."
-msgstr ""
+msgstr "Dibosupl eo hizivaat an implijer gant ar chomlec'h postel gwiriekaet."
#: actions/recoverpassword.php:152
msgid ""
"If you have forgotten or lost your password, you can get a new one sent to "
"the email address you have stored in your account."
msgstr ""
+"M'o peus disoñjet pe kollet ho ger-tremen, e c'helloc'h kaout unan nevez hag "
+"a vo kaset deoc'h d'ar chomlec'h postel termenet en ho kont."
#: actions/recoverpassword.php:158
msgid "You have been identified. Enter a new password below. "
-msgstr ""
+msgstr "Diskleriet oc'h bet. Lakait ur ger-tremen nevez amañ da heul. "
#: actions/recoverpassword.php:188
msgid "Password recovery"
@@ -2854,11 +3093,11 @@ msgstr "Adtapout ar ger-tremen"
#: actions/recoverpassword.php:191
msgid "Nickname or email address"
-msgstr ""
+msgstr "Lesanv pe chomlec'h postel"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
-msgstr ""
+msgstr "Ho lesanv war ar servijer-mañ, pe ar chomlec'h postel o peus enrollet."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
msgid "Recover"
@@ -2872,7 +3111,7 @@ msgstr "Adderaouekaat ar ger-tremen"
msgid "Recover password"
msgstr "Adtapout ar ger-tremen"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Goulennet eo an adtapout gerioù-tremen"
@@ -2892,122 +3131,146 @@ msgstr "Adderaouekaat"
msgid "Enter a nickname or email address."
msgstr "Lakait ul lesanv pe ur chomlec'h postel."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
-msgstr ""
+msgstr "N'eus bet kavet implijer ebet gant ar postel-se pe an anv-se."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
-msgstr ""
+msgstr "Chomlec'h postel enrollet ebet evit an implijer-mañ."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
-msgstr ""
+msgstr "Ur fazi 'zo bet pa voe enrollet kod kadarnaat ar postel."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
+"Kaset eo bet deoc'h, d'ar chomlec'h postel termenet en ho kont, an titouroù "
+"ret evit gouzout penaos adtapout o ger-tremen."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
-msgstr ""
+msgstr "Adderaouekadur dic'hortoz ar ger-tremen."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
-msgstr ""
+msgstr "Rankout a ra ar ger-tremen bezañ 6 arouezenn d'an nebeutañ."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
-msgstr ""
+msgstr "Ne glot ket ar ger-tremen gant ar c'hadarnadur."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
-msgstr ""
+msgstr "Ur fazi 'zo bet e-pad kefluniadur an implijer."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
-msgstr ""
+msgstr "Krouet eo bet ar ger-tremen nevez. Kevreet oc'h bremañ."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
+"Digarezit, met n'eus nemet an implijerien bet pedet hag a c'hell en em "
+"enskrivañ."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Digarezit, kod pedadenn direizh."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
-msgstr ""
+msgstr "Krouet eo bet ar gont."
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Krouiñ ur gont"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
-msgstr ""
+msgstr "N'eo ket aotreet krouiñ kontoù."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
+"Rankout a reoc'h bezañ a-du gant termenoù an aotre-implijout evit krouiñ ur "
+"gont."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Implijet eo dija ar chomlec'h postel-se."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
-msgstr ""
+msgstr "Anv implijer pe ger-tremen direizh."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 arouezenn pe muioc'h. Rekis."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Memestra hag ar ger-tremen a-us. Rekis."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Postel"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
+"Implijet hepken evit an hizivadennoù, ar c'hemennoù, pe adtapout gerioù-"
+"tremen"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
-msgstr ""
+msgstr "Anv hiroc'h, ho anv \"gwir\" a zo gwelloc'h"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr ""
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "Kompren a ran ez eo prevez danvez ha roadennoù %1$s."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr ""
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Ma zestenn ha ma restroù a zo gwarezet dre copyright gant %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Ma zestenn ha ma restroù a chom dindan ma gwirioù oberour."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Holl gwrioù miret strizh."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3026,11 +3289,13 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
msgstr ""
+"(Resevout a reoc'h a-benn nebeut ur postel gant an titouroù evit kadarnaat "
+"ho chomlec'h.)"
#: actions/remotesubscribe.php:98
#, php-format
@@ -3042,36 +3307,36 @@ msgstr ""
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
-msgstr ""
+msgstr "Koumanant eus a-bell"
#: actions/remotesubscribe.php:124
msgid "Subscribe to a remote user"
-msgstr ""
+msgstr "Koumanantiñ d'un implijer pell"
#: actions/remotesubscribe.php:129
msgid "User nickname"
-msgstr ""
+msgstr "Lesanv an implijer"
#: actions/remotesubscribe.php:130
msgid "Nickname of the user you want to follow"
-msgstr ""
+msgstr "Lesanv an implijer o peus c'hoant heuliañ"
#: actions/remotesubscribe.php:133
msgid "Profile URL"
-msgstr ""
+msgstr "URL ar profil"
#: actions/remotesubscribe.php:134
msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "En em enskrivañ"
#: actions/remotesubscribe.php:159
msgid "Invalid profile URL (bad format)"
-msgstr ""
+msgstr "URL direizh evit ar profil (furmad fall)"
#: actions/remotesubscribe.php:168
msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
@@ -3079,15 +3344,15 @@ msgstr ""
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "Lec'hel eo ar profil-mañ ! Kevreit evit koumananti."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
-msgstr ""
+msgstr "Dibosupl eo kaout ur jedaouer reked."
#: actions/repeat.php:57
msgid "Only logged-in users can repeat notices."
-msgstr ""
+msgstr "N'eus nemet an implijerien kevreet hag a c'hell adkemer alioù."
#: actions/repeat.php:64 actions/repeat.php:71
msgid "No notice specified."
@@ -3101,7 +3366,7 @@ msgstr "Ne c'helloc'h ket adkemer ho ali deoc'h."
msgid "You already repeated that notice."
msgstr "Adkemeret o peus dija an ali-mañ."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Adlavaret"
@@ -3123,23 +3388,23 @@ msgstr "Respontoù da %1$s, pajenn %2$d"
#: actions/replies.php:145
#, php-format
msgid "Replies feed for %s (RSS 1.0)"
-msgstr ""
+msgstr "Gwazh respontoù evit %s (RSS 1.0)"
#: actions/replies.php:152
#, php-format
msgid "Replies feed for %s (RSS 2.0)"
-msgstr ""
+msgstr "Gwazh respontoù evit %s (RSS 2.0)"
#: actions/replies.php:159
#, php-format
msgid "Replies feed for %s (Atom)"
-msgstr ""
+msgstr "Gwazh respontoù evit %s (Atom)"
#: actions/replies.php:199
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3152,14 +3417,14 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
#, php-format
msgid "Replies to %1$s on %2$s!"
-msgstr ""
+msgstr "Respontoù da %1$s war %2$s !"
#: actions/revokerole.php:75
#, fuzzy
@@ -3168,9 +3433,9 @@ msgstr "Ne c'helloc'h ket kas kemennadennoù d'an implijer-mañ."
#: actions/revokerole.php:82
msgid "User doesn't have this role."
-msgstr ""
+msgstr "n'en deus ket an implijer-mañ ar rol-se."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3180,17 +3445,17 @@ msgstr ""
#: actions/sandbox.php:72
msgid "User is already sandboxed."
-msgstr ""
+msgstr "Er poull-traezh emañ dija an implijer."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Dalc'hoù"
#: actions/sessionsadminpanel.php:65
msgid "Session settings for this StatusNet site."
-msgstr ""
+msgstr "Arventennoù evit al lec'hienn StatusNet-mañ."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3198,11 +3463,11 @@ msgstr "Merañ an dalc'hoù"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
-msgstr ""
+msgstr "Ma rankomp merañ an dalc'hoù hon unan."
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
-msgstr ""
+msgstr "Dizreinadenn an dalc'h"
#: actions/sessionsadminpanel.php:183
msgid "Turn on debugging output for sessions."
@@ -3211,75 +3476,79 @@ msgstr ""
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
#: actions/useradminpanel.php:294
msgid "Save site settings"
-msgstr ""
+msgstr "Enrollañ arventennoù al lec'hienn"
#: actions/showapplication.php:82
msgid "You must be logged in to view an application."
-msgstr ""
+msgstr "Rankout a reoc'h bezañ kevreet evit gwelet ur poellad."
#: actions/showapplication.php:157
msgid "Application profile"
-msgstr ""
+msgstr "Profil ar poellad"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
-msgstr ""
+msgstr "Arlun"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Anv"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
-msgstr ""
+msgstr "Aozadur"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
-msgstr ""
+msgstr "Deskrivadur"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Stadegoù"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "Krouet gant %1$s - moned %2$s dre ziouer - %3$d implijer"
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "Obererezhioù ar poellad"
#: actions/showapplication.php:236
msgid "Reset key & secret"
-msgstr ""
+msgstr "Adderaouekaat an alc'hwez hag ar sekred"
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Titouroù ar poelad"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Alc'hwez an implijer"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Sekred an implijer"
#: actions/showapplication.php:273
msgid "Request token URL"
-msgstr ""
+msgstr "URL ar jedouer reked"
#: actions/showapplication.php:278
msgid "Access token URL"
-msgstr ""
+msgstr "URL ar jedouer moned"
#: actions/showapplication.php:283
msgid "Authorize URL"
-msgstr ""
+msgstr "aotren an URL"
#: actions/showapplication.php:288
msgid ""
@@ -3290,11 +3559,12 @@ msgstr ""
#: actions/showapplication.php:309
msgid "Are you sure you want to reset your consumer key and secret?"
msgstr ""
+"Ha sur oc'h o peus c'hoant adderaouekaat ho alc'hwez bevezer ha sekred ?"
#: actions/showfavorites.php:79
#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr ""
+msgstr "Alioù karetañ %1$s, pajenn %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3303,17 +3573,17 @@ msgstr ""
#: actions/showfavorites.php:171
#, php-format
msgid "Feed for favorites of %s (RSS 1.0)"
-msgstr ""
+msgstr "Gwazh evit mignoned %s (RSS 1.0)"
#: actions/showfavorites.php:178
#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr ""
+msgstr "Gwazh evit mignoned %s (RSS 2.0)"
#: actions/showfavorites.php:185
#, php-format
msgid "Feed for favorites of %s (Atom)"
-msgstr ""
+msgstr "Gwazh evit mignoned %s (Atom)"
#: actions/showfavorites.php:206
msgid ""
@@ -3324,21 +3594,21 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
-msgstr ""
+msgstr "Un doare eo evit kevranañ ar pezh a blij deoc'h."
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
@@ -3348,69 +3618,69 @@ msgstr "strollad %s"
#: actions/showgroup.php:84
#, php-format
msgid "%1$s group, page %2$d"
-msgstr ""
+msgstr "Strollad %1$s, pajenn %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Profil ar strollad"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Notenn"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliasoù"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
-msgstr "Oberoù ar strollad"
+msgstr "Obererezh ar strollad"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr ""
+msgstr "Neudenn alioù ar strollad %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr ""
+msgstr "Neudenn alioù ar strollad %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr ""
+msgstr "Neudenn alioù ar strollad %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
-msgstr ""
+msgstr "Mignon ur mignon evit ar strollad %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Izili"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
-msgstr "(hini ebet)"
+msgstr "(Hini ebet)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "An holl izili"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Krouet"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3420,7 +3690,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3429,7 +3699,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Merourien"
@@ -3440,20 +3710,22 @@ msgstr "N'eus ket eus ar gemennadenn-se."
#: actions/showmessage.php:98
msgid "Only the sender and recipient may read this message."
msgstr ""
+"Ne c'hell bezañ lennet ar gemenadenn-mañ nemet gant ar c'haser hag ar "
+"resever."
#: actions/showmessage.php:108
#, php-format
msgid "Message to %1$s on %2$s"
-msgstr ""
+msgstr "Kemanadenn kaset da %1$s d'an %2$s"
#: actions/showmessage.php:113
#, php-format
msgid "Message from %1$s on %2$s"
-msgstr ""
+msgstr "Kemenadenn resevet eus %1$s d'an %2$s"
#: actions/shownotice.php:90
msgid "Notice deleted."
-msgstr ""
+msgstr "Ali dilammet."
#: actions/showstream.php:73
#, php-format
@@ -3463,32 +3735,32 @@ msgstr " merket %s"
#: actions/showstream.php:79
#, php-format
msgid "%1$s, page %2$d"
-msgstr ""
+msgstr "%1$s, pajenn %2$d"
#: actions/showstream.php:122
#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr ""
+msgstr "Neudenn an alioù evit %1$s merket %2$s (RSS 1.0)"
#: actions/showstream.php:129
#, php-format
msgid "Notice feed for %s (RSS 1.0)"
-msgstr ""
+msgstr "Neudenn an alioù evit %s (RSS 1.0)"
#: actions/showstream.php:136
#, php-format
msgid "Notice feed for %s (RSS 2.0)"
-msgstr ""
+msgstr "Neudenn an alioù evit %s (RSS 2.0)"
#: actions/showstream.php:143
#, php-format
msgid "Notice feed for %s (Atom)"
-msgstr ""
+msgstr "Gwazh alioù %s (Atom)"
#: actions/showstream.php:148
#, php-format
msgid "FOAF for %s"
-msgstr ""
+msgstr "mignon ur mignon evit %s"
#: actions/showstream.php:200
#, php-format
@@ -3504,8 +3776,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3528,7 +3800,7 @@ msgstr ""
#: actions/showstream.php:305
#, php-format
msgid "Repeat of %s"
-msgstr ""
+msgstr "Adkemeret eus %s"
#: actions/silence.php:65 actions/unsilence.php:65
msgid "You cannot silence users on this site."
@@ -3536,16 +3808,15 @@ msgstr ""
#: actions/silence.php:72
msgid "User is already silenced."
-msgstr ""
+msgstr "Lakaet eo bet da mut an implijer-mañ dija."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Arventennoù design evit al lec'hienn StatusNet-mañ."
+msgstr "Arventennoù diazez evit al lec'hienn StatusNet-mañ."
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
-msgstr ""
+msgstr "Ne c'hell ket bezañ goullo anv al lec'hienn."
#: actions/siteadminpanel.php:141
msgid "You must have a valid contact email address."
@@ -3554,14 +3825,14 @@ msgstr ""
#: actions/siteadminpanel.php:159
#, php-format
msgid "Unknown language \"%s\"."
-msgstr ""
+msgstr "Yezh \"%s\" dizanv."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr ""
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Ar vevenn izelañ evit an destenn a zo 0 arouezenn (anvevenn)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3574,7 +3845,7 @@ msgstr "Anv al lec'hienn"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr ""
+msgstr "Anv ho lec'hienn, evel \"Microblog ho embregerezh\""
#: actions/siteadminpanel.php:229
msgid "Brought by"
@@ -3586,7 +3857,7 @@ msgstr ""
#: actions/siteadminpanel.php:234
msgid "Brought by URL"
-msgstr ""
+msgstr "Degaset dre URL"
#: actions/siteadminpanel.php:235
msgid "URL used for credits link in footer of each page"
@@ -3594,7 +3865,7 @@ msgstr ""
#: actions/siteadminpanel.php:239
msgid "Contact email address for your site"
-msgstr ""
+msgstr "Chomlec'h postel daremprediñ ho lec'hienn"
#: actions/siteadminpanel.php:245
msgid "Local"
@@ -3609,9 +3880,8 @@ msgid "Default timezone for the site; usually UTC."
msgstr ""
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Yezh d'ober ganti da gentañ"
+msgstr "Yezh dre ziouer"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
@@ -3623,150 +3893,204 @@ msgstr "Bevennoù"
#: actions/siteadminpanel.php:274
msgid "Text limit"
-msgstr ""
+msgstr "Bevenn testenn"
#: actions/siteadminpanel.php:274
msgid "Maximum number of characters for notices."
-msgstr ""
+msgstr "Niver brasañ a arouezennoù evit an alioù."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
-msgstr ""
+msgstr "Bevenn a doublennoù"
#: actions/siteadminpanel.php:278
msgid "How long users must wait (in seconds) to post the same thing again."
msgstr ""
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Ali"
+msgstr "Ali al lec'hienn"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Kemennadenn nevez"
+msgstr "Kemmañ ur gemennadenn hag a zo diwar-benn al lec'hienn a-bezh"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Diposubl eo enrollañ an titouroù stankañ."
+msgstr "Diposubl eo enrollañ ali al lec'hienn."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Eilañ an ali"
+msgstr "Testenn ali al lec'hienn"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
+"Testenn an ali diwar-benn al lec'hienn a-bezh (255 arouezenn d'ar muiañ ; "
+"HTML gweredekaet)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Dilemel un ali"
+msgstr "Enrollañ ali ul lec'hienn"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Arventennoù SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
+"Gellout a reoc'h resevout kemmadennoù SMS dre postel o tont eus %%site.name%"
+"%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Dizimplijadus eo an SMS."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Chomlec'h SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
-msgstr ""
+msgstr "Niverenn pellgomz bet gwiriekaet evit resevout SMSoù."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
-msgstr ""
+msgstr "Niverenn pellgomz o c'hortoz bezañ kadarnaet."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Kod kadarnaat"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
-msgstr ""
+msgstr "Lakait ar c'hod o peus resevet war ho pellgomzer hezoug."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Kadarnaat"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Niverenn bellgomz evit an SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Penndibaboù an SMSoù"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Penndibaboù an SMSoù enrollet."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Niverenn bellgomz ebet."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
-msgstr ""
+msgstr "Ho niverenn pellgomz eo dija."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
-msgstr ""
+msgstr "D'un implijer all eo an niverenn-mañ dija."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
-msgstr ""
+msgstr "Direizh eo ar c'hod gwiriekaat-mañ."
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Nullet eo bet ar gadarnadenn SMS."
-#: actions/smssettings.php:405
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
-msgstr ""
+msgstr "n'eo ket ho niverenn pellgomz."
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Dilamet eo bet an niverenn bellgomz evit an SMSoù."
-#: actions/smssettings.php:465
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
-msgstr ""
+msgstr "Pourvezer pellgomzerezh hezoug"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
-msgstr ""
+msgstr "Dibab un douger"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "N'eo bet lakaet kod ebet"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
-msgstr ""
+msgstr "Prim"
#: actions/snapshotadminpanel.php:65
msgid "Manage snapshot configuration"
@@ -3785,7 +4109,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3810,7 +4134,7 @@ msgstr ""
#: actions/snapshotadminpanel.php:226
msgid "Report URL"
-msgstr ""
+msgstr "URL an danevell"
#: actions/snapshotadminpanel.php:227
msgid "Snapshots will be sent to this URL"
@@ -3825,8 +4149,8 @@ msgstr "Enrollañ an arventennoù moned"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr ""
@@ -3836,7 +4160,7 @@ msgstr ""
#: actions/subscribe.php:107
msgid "No such profile."
-msgstr ""
+msgstr "N'eus ket eus ar profil-se."
#: actions/subscribe.php:117
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
@@ -3844,17 +4168,17 @@ msgstr ""
#: actions/subscribe.php:145
msgid "Subscribed"
-msgstr ""
+msgstr "Koumanantet"
#: actions/subscribers.php:50
#, php-format
msgid "%s subscribers"
-msgstr ""
+msgstr "Koumanantet da %s"
#: actions/subscribers.php:52
#, php-format
msgid "%1$s subscribers, page %2$d"
-msgstr ""
+msgstr "Koumanantet da %1$s, pajenn %2$d"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
@@ -3875,6 +4199,7 @@ msgstr ""
#, php-format
msgid "%s has no subscribers. Want to be the first?"
msgstr ""
+"n'ez eus den ebet koumanantet da %s. Ha c'hoant o peus bezañ an hini gentañ ?"
#: actions/subscribers.php:114
#, php-format
@@ -3886,21 +4211,21 @@ msgstr ""
#: actions/subscriptions.php:52
#, php-format
msgid "%s subscriptions"
-msgstr ""
+msgstr "Koumanantoù %s"
#: actions/subscriptions.php:54
#, php-format
msgid "%1$s subscriptions, page %2$d"
-msgstr ""
+msgstr "Koumanantoù %1$s, pajenn %2$d"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
-msgstr ""
+msgstr "Heuliañ a reoc'h alioù an dud-se."
#: actions/subscriptions.php:69
#, php-format
msgid "These are the people whose notices %s listens to."
-msgstr ""
+msgstr "Heuliet eo alioù an den-mañ gant %s."
#: actions/subscriptions.php:126
#, php-format
@@ -3915,63 +4240,65 @@ msgstr ""
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
-msgstr ""
+msgstr "Ne heuilh %s den ebet."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
#: actions/tag.php:69
#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr ""
+msgstr "Alioù merket gant %1$s, pajenn %2$d"
#: actions/tag.php:87
#, php-format
msgid "Notice feed for tag %s (RSS 1.0)"
-msgstr ""
+msgstr "Gwazh an alioù evit ar merk %s (RSS 1.0)"
#: actions/tag.php:93
#, php-format
msgid "Notice feed for tag %s (RSS 2.0)"
-msgstr ""
+msgstr "Gwazh an alioù evit ar merk %s (RSS 2.0)"
#: actions/tag.php:99
#, php-format
msgid "Notice feed for tag %s (Atom)"
-msgstr ""
+msgstr "Gwazh an alioù evit ar merk %s (Atom)"
#: actions/tagother.php:39
msgid "No ID argument."
-msgstr ""
+msgstr "Arguzenn ID ebet."
#: actions/tagother.php:65
#, php-format
msgid "Tag %s"
-msgstr ""
+msgstr "Merk %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
-msgstr ""
+msgstr "Profil an implijer"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Skeudenn"
#: actions/tagother.php:141
msgid "Tag user"
-msgstr ""
+msgstr "Merkañ an implijer"
#: actions/tagother.php:151
msgid ""
"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
"separated"
msgstr ""
+"Merkoù evit an implijer-mañ (lizherennoù, sifroù, -, ., ha _), dispartiet "
+"gant virgulennoù pe gant esaouennoù"
#: actions/tagother.php:193
msgid ""
@@ -3980,7 +4307,7 @@ msgstr ""
#: actions/tagother.php:200
msgid "Could not save tags."
-msgstr ""
+msgstr "Dibosupl eo enrollañ ar merkoù."
#: actions/tagother.php:236
msgid "Use this form to add tags to your subscribers or subscriptions."
@@ -3990,13 +4317,9 @@ msgstr ""
msgid "No such tag."
msgstr ""
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
-msgstr ""
+msgstr "N'o peus ket stanket an implijer-mañ."
#: actions/unsandbox.php:72
msgid "User is not sandboxed."
@@ -4007,12 +4330,12 @@ msgid "User is not silenced."
msgstr ""
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+msgid "No profile ID in request."
+msgstr "N'eus profil ID ebet er reked."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
-msgstr ""
+msgstr "Digoumanantet"
#: actions/updateprofile.php:64 actions/userauthorization.php:337
#, php-format
@@ -4024,7 +4347,7 @@ msgstr ""
#: actions/useradminpanel.php:59
msgctxt "TITLE"
msgid "User"
-msgstr ""
+msgstr "Implijer"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
@@ -4043,7 +4366,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4070,7 +4394,7 @@ msgstr ""
#: actions/useradminpanel.php:241
msgid "Default subscription"
-msgstr ""
+msgstr "Koumanantoù dre ziouer"
#: actions/useradminpanel.php:242
msgid "Automatically subscribe new users to this user."
@@ -4082,7 +4406,7 @@ msgstr "Pedadennoù"
#: actions/useradminpanel.php:256
msgid "Invitations enabled"
-msgstr ""
+msgstr "Pedadennoù gweredekaet"
#: actions/useradminpanel.php:258
msgid "Whether to allow users to invite new users."
@@ -4090,7 +4414,7 @@ msgstr ""
#: actions/userauthorization.php:105
msgid "Authorize subscription"
-msgstr ""
+msgstr "Aotreañ ar c'houmanant"
#: actions/userauthorization.php:110
msgid ""
@@ -4099,7 +4423,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Aotre implijout"
@@ -4110,7 +4434,7 @@ msgstr "Degemer"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr ""
+msgstr "En em goumanantiñ d'an implijer-mañ"
#: actions/userauthorization.php:219
msgid "Reject"
@@ -4118,15 +4442,15 @@ msgstr "Disteurel"
#: actions/userauthorization.php:220
msgid "Reject this subscription"
-msgstr ""
+msgstr "Nac'hañ ar c'houmanant"
#: actions/userauthorization.php:232
msgid "No authorization request!"
-msgstr ""
+msgstr "Reked aotreañ ebet !"
#: actions/userauthorization.php:254
msgid "Subscription authorized"
-msgstr ""
+msgstr "Koumanant aotreet"
#: actions/userauthorization.php:256
msgid ""
@@ -4137,7 +4461,7 @@ msgstr ""
#: actions/userauthorization.php:266
msgid "Subscription rejected"
-msgstr ""
+msgstr "Koumanant bet nac'het"
#: actions/userauthorization.php:268
msgid ""
@@ -4149,41 +4473,41 @@ msgstr ""
#: actions/userauthorization.php:303
#, php-format
msgid "Listener URI ‘%s’ not found here."
-msgstr ""
+msgstr "N'eo ket bet kavet amañ URI ar selaouer \"%s\"."
#: actions/userauthorization.php:308
#, php-format
msgid "Listenee URI ‘%s’ is too long."
-msgstr ""
+msgstr "Re hir eo an URI \"%s\" ez oc'h koumanantet dezhi."
#: actions/userauthorization.php:314
#, php-format
msgid "Listenee URI ‘%s’ is a local user."
-msgstr ""
+msgstr "An URI \"%s\" ez oc'h koumanantet dezhi a zo un implijer lec'hel."
#: actions/userauthorization.php:329
#, php-format
msgid "Profile URL ‘%s’ is for a local user."
-msgstr ""
+msgstr "URI ar profil \"%s\" a zo evit un implijer lec'hel."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "N'eo ket reizh URL an avatar \"%s\"."
#: actions/userauthorization.php:350
#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr ""
+msgstr "Dibosupl eo lenn URL an avatar \"%s\"."
#: actions/userauthorization.php:355
#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr ""
+msgstr "Seurt skeudenn direizh evit URL an avatar \"%s\"."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
-msgstr ""
+msgstr "Design ar profil"
#: actions/userdesignsettings.php:87 lib/designsettings.php:76
msgid ""
@@ -4193,50 +4517,56 @@ msgstr ""
#: actions/userdesignsettings.php:282
msgid "Enjoy your hotdog!"
-msgstr ""
+msgstr "Bez plijadur gant da hotdog !"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
-msgstr ""
+msgstr "Strolladoù %1$s, pajenn %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Klask muioc'h a strolladoù"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
-msgstr ""
+msgstr "N'eo ket ezel %s eus ur strollad."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Hizivadennoù eus %1$s e %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Aozerien"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4244,7 +4574,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4252,379 +4582,508 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Pluginoù"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Stumm"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Aozer(ien)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Ment direizh."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "C'hwitet eo bet an enskrivadur d'ar strollad."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "N'eo ezel eus strollad ebet."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "C'hwitet eo bet an disenskrivadur d'ar strollad."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr ""
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr ""
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Diposubl eo ensoc'hañ ur gemenadenn"
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
+msgstr "Dibosupl eo hizivaat ar gemennadenn gant un URI nevez."
+
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
-msgstr ""
+msgstr "Ur gudenn a zo bet e-pad enrolladenn ar c'hemenn. Re hir."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
-msgstr ""
+msgstr "Ur gudenn a zo bet e-pad enrolladenn ar c'hemenn. Implijer dianav."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
+msgstr "Ur gudenn 'zo bet pa veze enrollet an ali."
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
msgstr ""
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr ""
+msgstr "Ur gudenn 'zo bet pa veze enrollet boest degemer ar strollad."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
-msgid "You have been banned from subscribing."
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
msgstr ""
-#: classes/Subscription.php:70
-msgid "Already subscribed!"
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Mankout a ra ar profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Dibosupl eo enrollañ an tikedenn."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr "Nac'het ez eus bet deoc'h en em goumanantiñ."
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
+msgid "Already subscribed!"
+msgstr "Koumanantet dija !"
+
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
-msgstr ""
+msgstr "An implijer-mañ en deus stanket ac'hanoc'h."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
-msgstr ""
+msgstr "Nann-koumanantet !"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr ""
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
+msgstr "Dibosupl eo paouez gant ar c'houmanant."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Diposubl eo dilemel ar postel kadarnadur."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr ""
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr "Dibosupl eo dilemel ar c'houmanant."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
-msgstr ""
+msgstr "Deuet mat da %1$s, @%2$s !"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
-msgstr ""
+msgstr "Dibosupl eo krouiñ ar strollad."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr ""
+msgstr "Dibosupl eo termeniñ URI ar strollad."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
-msgstr ""
+msgstr "Dibosupl eo en em enskrivañ d'ar strollad."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr ""
+msgstr "Dibosupl eo enrollañ titouroù ar strollad lec'hel."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
-msgstr ""
+msgstr "Kemmañ arventennoù ho profil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
-msgstr ""
+msgstr "Enporzhiañ un avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Cheñch ar ger-tremen"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
-msgstr ""
+msgstr "Kemmañ tretadur ar posteloù"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
-msgstr ""
+msgstr "Krouit ho profil"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr "Dibarzhioù all"
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
msgid "Other"
msgstr "All"
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
-msgstr ""
-
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
-msgstr ""
+msgstr "Pajenn hep anv"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
-msgstr ""
+msgstr "Personel"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr ""
+msgstr "Kemmañ ho chomlec'h postel, hoc'h avatar, ho ger-tremen, ho profil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr ""
+msgstr "Liammañ d'ar servijoù"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Kevreañ"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr ""
+msgstr "Kemmañ arventennoù al lec'hienn"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
-msgstr ""
+msgstr "Merañ"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr ""
+msgstr "Pediñ mignoned hag kenseurted da zont ganeoc'h war %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
-msgstr ""
+msgstr "Pediñ"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
-msgstr ""
+msgstr "Digevreañ diouzh al lec'hienn"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
-msgstr ""
+msgstr "Digevreañ"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
-msgstr ""
+msgstr "Krouiñ ur gont"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
-msgstr ""
+msgstr "En em enskrivañ"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
-msgstr ""
+msgstr "Kevreañ d'al lec'hienn"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
-msgstr ""
+msgstr "Kevreañ"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
-msgstr ""
+msgstr "Sikour din !"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
-msgstr ""
+msgstr "Skoazell"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
-msgstr ""
+msgstr "Klask tud pe un tamm testenn"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
-msgstr ""
+msgstr "Klask"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr ""
+msgstr "Ali al lec'hienn"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
-msgstr ""
+msgstr "Selloù lec'hel"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
-msgstr ""
+msgstr "Ali ar bajenn"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Skoazell"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Diwar-benn"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAG"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
-msgstr ""
+msgstr "AIH"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Prevezded"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Mammenn"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Darempred"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
-msgstr ""
+msgstr "Badj"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
-msgstr ""
+msgstr "Aotre-implijout ar meziant StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr ""
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** a zo ur servij microblogging."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4632,222 +5091,274 @@ msgid ""
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
-msgstr ""
+msgstr "Aotre-implijout diwar-benn danvez al lec'hienn"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Pep tra "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "aotre implijout."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Pajennadur"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "War-lerc'h"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Kent"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
-msgstr ""
+msgstr "N'eo ket aotreet kemmañ ar panell-se"
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
-msgstr ""
+msgstr "N'eo ket bet emplementet showForm()."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
msgid "saveSettings() not implemented."
-msgstr ""
+msgstr "N'eo ket bet emplementet saveSettings()."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
-msgstr ""
+msgstr "Dibosupl eo dilemel an arventennoù krouiñ."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
-msgstr ""
+msgstr "Arventennoù diazez al lec'hienn"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
-msgstr ""
+msgstr "Lec'hienn"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
-msgstr ""
+msgstr "Kefluniadur ar c'hrouiñ"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
-msgstr ""
+msgstr "Design"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr ""
+msgstr "Kefluniadur an implijer"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Implijer"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr ""
+msgstr "Kefluniadur ar moned"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
-msgstr ""
+msgstr "Kefluniadur an hentoù"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
-msgstr ""
+msgstr "Kefluniadur an dalc'hoù"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Eilañ an ali"
+msgstr "Kemmañ ali al lec'hienn"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr ""
+msgstr "Kefluniadur ar primoù"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Kemmañ an arload"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Arlun evit ar poellad-mañ"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
-msgstr ""
+msgstr "Diskrivit ho poellad gant %d arouezenn"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr ""
+msgstr "Deskrivit ho poellad"
-#: lib/applicationeditform.php:216
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr "URL pajenn degemer ar poellad-mañ"
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
msgid "Source URL"
msgstr "Mammenn URL"
-#: lib/applicationeditform.php:218
-msgid "URL of the homepage of this application"
-msgstr ""
-
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "An aozadur e karg eus ar poellad-mañ"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr ""
+msgstr "URL pajenn degemer an aozadur-se"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "URL davet pehini e o ret adkas goude bezañ kevreet"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Merdeer"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "Burev"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "Seurt ar poellad, merdeer pe burev"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Lenn hepken"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Lenn-skrivañ"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Nullañ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lenn-skrivañ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "lenn hepken"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprouet d'an %1$s - moned \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr ""
+msgstr "Dilemel"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
-msgstr ""
+msgstr "Pezhioù stag"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Aozer"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Pourvezer"
@@ -4859,244 +5370,273 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
-msgstr ""
+msgstr "N'eo ket aet betek penn kemmañ ar ger-tremen"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
-msgstr ""
+msgstr "N'eo ket aotreet kemmañ ar ger-tremen"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
-msgstr ""
+msgstr "Disoc'hoù an urzhiad"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
-msgstr ""
+msgstr "Urzhiad bet klokaet"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
-msgstr ""
+msgstr "C'hwitet en deus an urzhiad"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "N'eus ali ebet gant an id-mañ."
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "N'eus ali nevez evit an implijer-mañ"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
-msgstr ""
+msgstr "Dibosupl eo kavout un implijer gant al lesanv %s"
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Dibosupl eo kavout un implijer lec'hel gant al lesanv %s"
-#: lib/command.php:92
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Digarezit, n'eo ket bet emplementet an urzhiad-mañ c'hoazh."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
+"N'eus tamm talvoudegezh ebet ober ur blinkadenn deoc'h c'hwi oc'h unan !"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
-msgstr ""
+msgstr "Blinkadenn kaset da %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
"Subscribers: %2$s\n"
"Notices: %3$s"
msgstr ""
+"Koumanatoù : %1$s\n"
+"Tud koumanantet : %2$s\n"
+"kemennadennoù : %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr ""
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr ""
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
-msgstr ""
+msgstr "Ali bet ouzhpennet d'ar pennroll."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
-msgstr ""
+msgstr "Ezel oc'h eus ar strollad-mañ dija."
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr ""
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s zo emezelet er strollad %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr ""
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, fuzzy, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Diposubl eo stagañ an implijer %1$s d'ar strollad %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s {{Gender:.|en|he}} deus kuitaet ar strollad %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Diposubl eo dilemel an implijer %1$s deus ar strollad %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Anv klok : %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
-msgstr ""
+msgstr "Lec'hiadur : %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
-msgstr ""
+msgstr "Lec'hienn Web : %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Diwar-benn : %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Direct message to %s sent"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
+"Re hir eo ar gemennadenn - ar ment brasañ a zo %1$d arouezenn, %2$d "
+"arouezenn o peus lakaet"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
+msgid "Direct message to %s sent"
+msgstr "Kaset eo bet ar gemennadenn war eeun da %s."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
-msgstr ""
+msgstr "Ur gudenn 'zo bet pa veze kaset ho kemennadenn."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
-msgstr ""
+msgstr "Ne c'helloc'h ket adkemer ho ali"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
-msgstr ""
+msgstr "Ali bet adkemeret dija"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr ""
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr ""
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
-msgstr ""
+msgstr "Respont kaset da %s"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr ""
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
-msgstr ""
+msgstr "Koumanantet da %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
-msgstr ""
+msgstr "Digoumanantiñ da %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
-msgstr ""
+msgstr "Kemennoù diweredekaet."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
-msgstr ""
+msgstr "Dibosupl eo diweredekaat ar c'hemennoù."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
-msgstr ""
+msgstr "Kemennoù gweredekaet"
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
-msgstr ""
+msgstr "Dibosupl eo gweredekaat ar c'hemennoù."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
-msgstr ""
+msgstr "Diweredekaet eo an urzhiad evit digeriñ un dalc'h"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
-msgstr ""
+msgstr "Implijadus eo al liamm-se ur wech hepken, hag e-pad 2 vunutenn : %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
-msgstr ""
+msgstr "Digoumanantet eus %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
-msgstr ""
+msgstr "N'hoc'h ket koumanantet da zen ebet."
-#: lib/command.php:711
+#: lib/command.php:780
#, fuzzy
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "You are subscribed to this person:"
msgstr[1] "You are subscribed to these people:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
-msgstr ""
+msgstr "Den n'eo koumanantet deoc'h."
-#: lib/command.php:733
+#: lib/command.php:802
#, fuzzy
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "This person is subscribed to you:"
msgstr[1] "These people are subscribed to you:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
-msgstr ""
+msgstr "N'oc'h ezel eus strollad ebet."
-#: lib/command.php:755
+#: lib/command.php:824
#, fuzzy
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "You are a member of this group:"
msgstr[1] "You are a member of these groups:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5138,21 +5678,21 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
-msgstr ""
+msgstr "N'eo bet kavet restr kefluniadur ebet. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
-msgstr ""
+msgstr "Mont d'ar meziant staliañ"
#: lib/connectsettingsaction.php:110
msgid "IM"
@@ -5164,11 +5704,11 @@ msgstr ""
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
-msgstr ""
+msgstr "Hizivadennoù dre SMS"
#: lib/connectsettingsaction.php:120
msgid "Connections"
-msgstr ""
+msgstr "Kevreadennoù"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
@@ -5176,11 +5716,11 @@ msgstr ""
#: lib/dberroraction.php:60
msgid "Database error"
-msgstr ""
+msgstr "Fazi bank roadennoù"
#: lib/designsettings.php:105
msgid "Upload file"
-msgstr ""
+msgstr "Enporzhiañ ar restr"
#: lib/designsettings.php:109
msgid ""
@@ -5193,15 +5733,15 @@ msgstr ""
#: lib/disfavorform.php:114 lib/disfavorform.php:140
msgid "Disfavor this notice"
-msgstr ""
+msgstr "Tennañ eus ar pennrolloù"
#: lib/favorform.php:114 lib/favorform.php:140
msgid "Favor this notice"
-msgstr ""
+msgstr "Ouzhpennañ d'ar pennrolloù"
#: lib/favorform.php:140
msgid "Favor"
-msgstr ""
+msgstr "Pennrolloù"
#: lib/feed.php:85
msgid "RSS 1.0"
@@ -5237,7 +5777,7 @@ msgstr ""
#: lib/galleryaction.php:140
msgid "Tag"
-msgstr "Merk"
+msgstr "Balizenn"
#: lib/galleryaction.php:141
msgid "Choose a tag to narrow list"
@@ -5300,7 +5840,7 @@ msgstr "Logo"
#: lib/groupnav.php:114
#, php-format
msgid "Add or edit %s logo"
-msgstr ""
+msgstr "Ouzhpennañ pe kemmañ logo %s"
#: lib/groupnav.php:120
#, php-format
@@ -5320,53 +5860,54 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr ""
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
-
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
+msgid "Not an image or corrupt file."
msgstr ""
#: lib/imagefile.php:122
msgid "Lost our file."
-msgstr ""
+msgstr "Restr bet kollet."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
-msgstr ""
+msgstr "Dizanv eo seurt ar restr"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "Mo"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "Ko"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5377,7 +5918,7 @@ msgstr "Stagañ"
#: lib/leaveform.php:114
msgid "Leave"
-msgstr "Kuitañ"
+msgstr "Kuitaat"
#: lib/logingroupnav.php:80
msgid "Login with a username and password"
@@ -5385,13 +5926,15 @@ msgstr ""
#: lib/logingroupnav.php:86
msgid "Sign up for a new account"
-msgstr ""
+msgstr "Digeriñ ur gont nevez"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
-msgstr ""
+msgstr "Kadarnadur ar chomlec'h postel"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5408,12 +5951,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr ""
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5428,17 +5980,20 @@ msgid ""
"Change your email address or notification options at %8$s\n"
msgstr ""
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr ""
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
-msgstr ""
+msgstr "Chomlec'h postel nevez evit embann e %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5451,21 +6006,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Statud %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
+msgstr "Kadarnadur SMS"
+
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5481,12 +6046,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Kemenadenn personel nevez a-berzh %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5505,12 +6072,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr ""
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5531,12 +6100,25 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
#, php-format
-msgid "%s (@%s) sent a notice to your attention"
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
msgstr ""
+"Ar gaozeadenn klok a c'hell bezañ lennet amañ :\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr "%s (@%s) en deus kaset deoc'h ur c'hemenn"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5549,6 +6131,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5561,7 +6155,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "eus"
@@ -5571,7 +6165,7 @@ msgstr ""
#: lib/mailhandler.php:42
msgid "Not a registered user."
-msgstr ""
+msgstr "N'eo ket un implijer enrollet."
#: lib/mailhandler.php:46
msgid "Sorry, that is not your incoming email address."
@@ -5606,7 +6200,7 @@ msgstr ""
#: lib/mediafile.php:159
msgid "Missing a temporary folder."
-msgstr ""
+msgstr "Mankout a ra un doser padennek."
#: lib/mediafile.php:162
msgid "Failed to write file to disk."
@@ -5616,31 +6210,31 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr ""
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
-msgstr ""
+msgstr "Klaskit implijout ur furmad %s all."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
#: lib/messageform.php:120
msgid "Send a direct notice"
-msgstr ""
+msgstr "Kas ur gemennadenn war-eeun"
#: lib/messageform.php:146
msgid "To"
@@ -5653,7 +6247,7 @@ msgstr ""
#: lib/messageform.php:178 lib/noticeform.php:236
msgctxt "Send button for sending notice"
msgid "Send"
-msgstr ""
+msgstr "Kas"
#: lib/noticeform.php:160
msgid "Send a notice"
@@ -5674,11 +6268,11 @@ msgstr "Stagañ ur restr"
#: lib/noticeform.php:212
msgid "Share my location"
-msgstr ""
+msgstr "Rannañ va lec'hiadur."
#: lib/noticeform.php:215
msgid "Do not share my location"
-msgstr ""
+msgstr "Chom hep rannañ va lec'hiadur."
#: lib/noticeform.php:216
msgid ""
@@ -5686,50 +6280,54 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "R"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "K"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "e"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
-msgstr ""
+msgstr "en amdro"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
-msgstr ""
+msgstr "Adkemeret gant"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
-msgstr ""
+msgstr "Respont d'an ali-mañ"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Respont"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
-msgstr ""
+msgstr "Ali adkemeret"
#: lib/nudgeform.php:116
msgid "Nudge this user"
@@ -5745,10 +6343,14 @@ msgstr "Kas ur blinkadenn d'an implijer-mañ"
#: lib/oauthstore.php:283
msgid "Error inserting new profile"
-msgstr ""
+msgstr "Ur fazi 'zo bet en ur ensoc'hañ ar profil nevez"
#: lib/oauthstore.php:291
msgid "Error inserting avatar"
+msgstr "Ur fazi 'zo bet en ur ensoc'hañ an avatar"
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
msgstr ""
#: lib/oauthstore.php:311
@@ -5796,43 +6398,44 @@ msgstr "Ar c'hemenadennoù kaset ganeoc'h"
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Dianav"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Koumanantoù"
#: lib/profileaction.php:126
msgid "All subscriptions"
-msgstr ""
+msgstr "An holl koumanantoù"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Ar re koumanantet"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "An holl re koumanantet"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID an implijer"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Ezel abaoe"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Keidenn pemdeziek"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "An holl strolladoù"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr ""
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -5846,7 +6449,7 @@ msgstr "Strolladoù implijerien"
#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
msgid "Recent tags"
-msgstr ""
+msgstr "Merkoù nevez"
#: lib/publicgroupnav.php:88
msgid "Featured"
@@ -5856,11 +6459,19 @@ msgstr ""
msgid "Popular"
msgstr "Poblek"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Adkregiñ gant an ali-mañ ?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ya"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Adkregiñ gant an ali-mañ"
@@ -5869,7 +6480,7 @@ msgstr "Adkregiñ gant an ali-mañ"
msgid "Revoke the \"%s\" role from this user"
msgstr "Stankañ an implijer-mañ eus ar strollad-se"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -5915,7 +6526,7 @@ msgstr "Klask strolladoù el lec'hienn-mañ"
#: lib/section.php:89
msgid "Untitled section"
-msgstr ""
+msgstr "Rann hep titl"
#: lib/section.php:106
msgid "More..."
@@ -5942,7 +6553,7 @@ msgstr ""
#: lib/subgroupnav.php:99
#, php-format
msgid "Groups %s is a member of"
-msgstr ""
+msgstr "Ezel eo %s eus ar strolladoù"
#: lib/subgroupnav.php:105
msgid "Invite"
@@ -5967,9 +6578,53 @@ msgstr ""
msgid "None"
msgstr "Hini ebet"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Ur gudenn 'zo bet e-pad hizivadenn an avatar."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Fazi en ur hizivaat ar profil a-bell."
+
#: lib/topposterssection.php:74
msgid "Top posters"
-msgstr ""
+msgstr "An implijerien an efedusañ"
#: lib/unsandboxform.php:69
msgid "Unsandbox"
@@ -5989,112 +6644,128 @@ msgstr ""
#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
msgid "Unsubscribe from this user"
-msgstr ""
+msgstr "En em zigoumanantiñ eus an implijer-mañ"
#: lib/unsubscribeform.php:137
msgid "Unsubscribe"
-msgstr ""
+msgstr "Digoumanantiñ"
+
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "An implijer-mañ n'eus profil ebet dezhañ."
-#: lib/userprofile.php:116
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Kemmañ an Avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Obererezh an implijer"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Diverkadenn an implijer o vont war-raok..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
-msgstr ""
+msgstr "Kemmañ arventennoù ar profil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Aozañ"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Kas ur gemennadenn war-eeun d'an implijer-mañ"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Kemennadenn"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Habaskaat"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Strolladoù implijerien"
+msgstr "Rol an implijer"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Merourien"
+msgstr "Merour"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Habaskaat"
+msgstr "Habasker"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "un nebeud eilennoù zo"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "1 vunutenn zo well-wazh"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "%d munutenn zo well-wazh"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "1 eurvezh zo well-wazh"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "%d eurvezh zo well-wazh"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "1 devezh zo well-wazh"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "%d devezh zo well-wazh"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "miz zo well-wazh"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "%d miz zo well-wazh"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "bloaz zo well-wazh"
#: lib/webcolor.php:82
#, php-format
msgid "%s is not a valid color!"
-msgstr ""
+msgstr "n'eo ket %s ul liv reizh !"
#: lib/webcolor.php:123
#, php-format
msgid "%s is not a valid color! Use 3 or 6 hex chars."
-msgstr ""
+msgstr "N'eo ket %s ul liv reizh ! Implijit 3 pe 6 arouezenn heksdekvedennel."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/ca/LC_MESSAGES/statusnet.po b/locale/ca/LC_MESSAGES/statusnet.po
index bd7c5cd5a..d7de3b4d6 100644
--- a/locale/ca/LC_MESSAGES/statusnet.po
+++ b/locale/ca/LC_MESSAGES/statusnet.po
@@ -2,6 +2,7 @@
#
# Author@translatewiki.net: Aleator
# Author@translatewiki.net: McDutchie
+# Author@translatewiki.net: Paucabot
# Author@translatewiki.net: Toniher
# --
# This file is distributed under the same license as the StatusNet package.
@@ -10,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:29+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:12+0000\n"
"Language-Team: Catalan\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ca\n"
"X-Message-Group: out-statusnet\n"
@@ -23,19 +24,17 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Accés"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "Desa els paràmetres del lloc"
+msgstr "Paràmetres d'accés al lloc"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
msgstr "Registre"
@@ -48,7 +47,6 @@ msgstr ""
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Privat"
@@ -75,171 +73,183 @@ msgstr "Tancat"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "Desa els paràmetres del lloc"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "Desa els paràmetres d'accés"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
-msgstr "Guardar"
+msgstr "Desa"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "No existeix la pàgina."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
-msgstr "No existeix aquest usuari."
+msgstr "No existeix l'usuari."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%s perfils blocats, pàgina %d"
+msgstr "%1$s i amics, pàgina %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s i amics"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Canal dels amics de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Canal dels amics de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Canal dels amics de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-"Aquesta és la línia temporal de %s i amics, però ningú hi ha enviat res "
+"Aquesta és la línia temporal de %s i amics, però ningú hi ha publicat res "
"encara."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
"something yourself."
msgstr ""
+"Proveu de subscriure més gent, [uniu-vos a un grup](%%action.groups%%) o "
+"publiqueu quelcom personal."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
+"Podeu provar d'[avisar %1$s](../%2$s) des del seu perfil o [publiqueu "
+"quelcom per cridar-li l'atenció](%%%%action.newnotice%%%%?status_textarea=%3"
+"$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
+"Per què no [registreu un compte](%%%%action.register%%%%) i aviseu %s o "
+"publiqueu un avís a la seva atenció."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Un mateix i amics"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Actualitzacions de %1$s i amics a %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
-#, fuzzy
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "No s'ha trobat el mètode API!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Aquest mètode requereix POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
+"Heu d'especificar un paràmetre anomenat 'device' (dispositiu) amb un valor "
+"dels següents: sms, im, none (cap)"
-#: actions/apiaccountupdatedeliverydevice.php:132
-#, fuzzy
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "No s'ha pogut actualitzar l'usuari."
@@ -248,20 +258,19 @@ msgstr "No s'ha pogut actualitzar l'usuari."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "L'usuari no té perfil."
#: actions/apiaccountupdateprofile.php:147
-#, fuzzy
msgid "Could not save profile."
-msgstr "No s'ha pogut guardar el perfil."
+msgstr "No s'ha pogut desar el perfil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -269,6 +278,8 @@ msgid ""
"The server was unable to handle that much POST data (%s bytes) due to its "
"current configuration."
msgstr ""
+"El servidor no ha pogut gestionar tantes dades POST (%s bytes) a causa de la "
+"configuració actual."
#: actions/apiaccountupdateprofilebackgroundimage.php:136
#: actions/apiaccountupdateprofilebackgroundimage.php:146
@@ -277,28 +288,25 @@ msgstr ""
#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
-#, fuzzy
msgid "Unable to save your design settings."
-msgstr "No s'ha pogut guardar la teva configuració de Twitter!"
+msgstr "No s'han pogut desar els paràmetres de disseny."
#: actions/apiaccountupdateprofilebackgroundimage.php:187
#: actions/apiaccountupdateprofilecolors.php:142
-#, fuzzy
msgid "Could not update your design."
-msgstr "No s'ha pogut actualitzar l'usuari."
+msgstr "No s'ha pogut actualitzar el vostre disseny."
#: actions/apiblockcreate.php:105
-#, fuzzy
msgid "You cannot block yourself!"
-msgstr "No podeu suprimir els usuaris."
+msgstr "No podeu bloquejar-vos a vosaltres mateixos!"
#: actions/apiblockcreate.php:126
msgid "Block user failed."
-msgstr "Ha fallat el bloqueig d'usuari."
+msgstr "Ha fallat el blocatge de l'usuari."
#: actions/apiblockdestroy.php:114
msgid "Unblock user failed."
-msgstr "Ha fallat el desbloqueig d'usuari."
+msgstr "Ha fallat el desblocatge de l'usuari."
#: actions/apidirectmessage.php:89
#, php-format
@@ -320,213 +328,221 @@ msgstr "Missatges directes a %s"
msgid "All the direct messages sent to %s"
msgstr "Tots els missatges directes enviats a %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "No hi ha text al missatge!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "És massa llarg. La mida màxima del missatge és %d caràcters."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
-msgstr "No has escrit cap usuari receptor."
+msgstr "No s'ha trobat l'usuari destinatari."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"No es pot enviar missatges directes a usuaris que no siguin els vostres "
"amics."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
-msgstr "No s'ha trobat cap estatus amb aquesta ID."
+msgstr "No s'ha trobat cap estat amb aquest ID."
-#: actions/apifavoritecreate.php:119
-#, fuzzy
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
-msgstr "Aquest estat ja és un preferit!"
+msgstr "Aquest estat ja és un preferit."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
-msgstr "No es pot crear favorit."
+msgstr "No es pot crear el preferit."
-#: actions/apifavoritedestroy.php:122
-#, fuzzy
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
-msgstr "L'estat no és un preferit!"
+msgstr "L'estat no és un preferit."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
-msgstr "No s'ha pogut suprimir el preferit."
+msgstr "No s'ha pogut eliminar el preferit."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "No pots subscriure't a aquest usuari: L'usuari no existeix."
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "No s'ha pogut seguir l'usuari: l'usuari no existeix."
#: actions/apifriendshipscreate.php:118
#, php-format
msgid "Could not follow user: %s is already on your list."
-msgstr ""
-"No pots subscriure't de nou a aquest usuari: %s ja està a la teva llista."
+msgstr "No s'ha pogut seguir l'usuari: %s ja està a la vostra llista."
#: actions/apifriendshipsdestroy.php:109
-#, fuzzy
msgid "Could not unfollow user: User not found."
-msgstr "No pots subscriure't a aquest usuari: L'usuari no existeix."
+msgstr "No es pot deixar de seguir l'usuari: no s'ha trobat l'usuari."
#: actions/apifriendshipsdestroy.php:120
-#, fuzzy
msgid "You cannot unfollow yourself."
-msgstr "No podeu suprimir els usuaris."
+msgstr "No podeu deixar de seguir-vos a un mateix."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Dos ids d'usuari o screen_names has de ser substituïts."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Cal proporcionar dos ids d'usuari o screen_names."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
msgstr "No s'ha pogut determinar l'usuari d'origen."
#: actions/apifriendshipsshow.php:142
-#, fuzzy
msgid "Could not find target user."
-msgstr "No es pot trobar cap estatus."
+msgstr "No s'ha pogut trobar l'usuari de destinació."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"El sobrenom ha de tenir només lletres minúscules i números i no pot tenir "
"espais."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Aquest sobrenom ja existeix. Prova un altre. "
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Sobrenom no vàlid."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "La pàgina personal no és un URL vàlid."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
-msgstr "El teu nom és massa llarg (màx. 255 caràcters)."
+msgstr "El vostre nom sencer és massa llarg (màx. 255 caràcters)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "La descripció és massa llarga (màx. %d caràcters)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "La ubicació és massa llarga (màx. 255 caràcters)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Hi ha massa àlies! Màxim %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "L'àlies no és vàlid «%s»"
+msgid "Invalid alias: \"%s\"."
+msgstr "L'àlies no és vàlid: «%s»."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "L'àlies «%s» ja està en ús. Proveu-ne un altre."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "L'àlies no pot ser el mateix que el sobrenom."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "No s'ha trobat el grup!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "No s'ha trobat el grup."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Ja sou membre del grup."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "L'administrador us ha blocat del grup."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
-#, fuzzy, php-format
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
msgid "Could not join user %1$s to group %2$s."
-msgstr "No s'ha pogut afegir l'usuari %s al grup %s."
+msgstr "No s'ha pogut afegir l'usuari %1$s al grup %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "No sou un membre del grup."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
-#, fuzzy, php-format
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
msgid "Could not remove user %1$s from group %2$s."
-msgstr "No s'ha pogut suprimir l'usuari %s del grup %s."
+msgstr "No s'ha pogut eliminar l'usuari %1$s del grup %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Grups de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s grups dels que %2$s és membre."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s grups"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "grups sobre %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Puja un fitxer"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
-msgstr ""
+msgstr "No s'ha proporcionat cap paràmetre oauth_token."
#: actions/apioauthauthorize.php:106
-#, fuzzy
msgid "Invalid token."
-msgstr "Mida invàlida."
+msgstr "El testimoni no és vàlid."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -536,19 +552,16 @@ msgstr ""
"us plau."
#: actions/apioauthauthorize.php:135
-#, fuzzy
msgid "Invalid nickname / password!"
-msgstr "Nom d'usuari o contrasenya invàlids."
+msgstr "Nom d'usuari / contrasenya no vàlid!"
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "Error en configurar l'usuari."
+msgstr "Error de la base de dades en esborrar l'usuari de l'aplicació OAuth."
#: actions/apioauthauthorize.php:185
-#, fuzzy
msgid "Database error inserting OAuth application user."
-msgstr "Hashtag de l'error de la base de dades:%s"
+msgstr "Error de la base de dades en inserir l'usuari de l'aplicació OAuth."
#: actions/apioauthauthorize.php:214
#, php-format
@@ -556,28 +569,33 @@ msgid ""
"The request token %s has been authorized. Please exchange it for an access "
"token."
msgstr ""
+"S'ha autoritzat el testimoni de sol·licitud %s. Si us plau, canvieu-lo per "
+"un testimoni d'accés."
#: actions/apioauthauthorize.php:227
#, php-format
msgid "The request token %s has been denied and revoked."
-msgstr ""
+msgstr "S'ha denegat i revocat el testimoni de sol·licitud %s."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Enviament de formulari inesperat."
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "Una aplicació voldria connectar-se al vostre compte"
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "Permet o denega l'accés"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -586,45 +604,48 @@ msgid ""
"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."
msgstr ""
+"L'aplicació <strong>%1$s</strong>, de <strong>%2$s</strong>, voldria obtenir "
+"l'habilitat de <strong>%3$s</strong> les dades del vostre compte %4$s. Només "
+"hauríeu de donar accés al compte %4$s a terceres parts en què confieu."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Compte"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Sobrenom"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Contrasenya"
#: actions/apioauthauthorize.php:328
-#, fuzzy
msgid "Deny"
-msgstr "Disseny"
+msgstr "Denega"
#: actions/apioauthauthorize.php:334
-#, fuzzy
msgid "Allow"
-msgstr "Tot"
+msgstr "Permet"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "Permet o denega l'accés a la informació del vostre compte."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Aquest mètode requereix POST o DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
-msgstr "No pots eliminar l'estatus d'un altre usuari."
+msgstr "No podeu eliminar l'estat d'un altre usuari."
#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
#: actions/deletenotice.php:52 actions/shownotice.php:92
@@ -632,95 +653,97 @@ msgid "No such notice."
msgstr "No existeix aquest avís."
#: actions/apistatusesretweet.php:83
-#, fuzzy
msgid "Cannot repeat your own notice."
-msgstr "No es poden posar en on les notificacions."
+msgstr "No podeu repetir els vostres propis avisos."
#: actions/apistatusesretweet.php:91
-#, fuzzy
msgid "Already repeated that notice."
-msgstr "Eliminar aquesta nota"
+msgstr "Avís duplicat."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
-msgstr "S'ha suprimit l'estat."
+msgstr "S'ha eliminat l'estat."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "No s'ha trobat cap estatus amb la ID trobada."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Massa llarg. La longitud màxima és de %d caràcters."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "No s'ha trobat"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "No s'ha trobat."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
-msgstr ""
+msgstr "La mida màxima de l'avís és %d caràcters, incloent l'URL de l'adjunt."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "El format no està implementat."
-#: actions/apitimelinefavorites.php:108
-#, fuzzy, php-format
+#: actions/apitimelinefavorites.php:110
+#, php-format
msgid "%1$s / Favorites from %2$s"
-msgstr "%s / Preferits de %s"
+msgstr "%1$s / Preferits de %2$s"
-#: actions/apitimelinefavorites.php:117
-#, fuzzy, php-format
+#: actions/apitimelinefavorites.php:119
+#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
-msgstr "%s actualitzacions favorites per %s / %s."
+msgstr "%1$s actualitzacions preferides per %2$s / %2$s."
-#: actions/apitimelinementions.php:117
-#, fuzzy, php-format
+#: actions/apitimelinementions.php:118
+#, php-format
msgid "%1$s / Updates mentioning %2$s"
-msgstr "%1$s / Notificacions contestant a %2$s"
+msgstr "%1$s / Actualitzacions que mencionen %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
-msgstr "%1$s notificacions que responen a notificacions de %2$s / %3$s."
+msgstr "%1$s actualitzacions que responen a avisos de %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s línia temporal pública"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
-msgstr "%s notificacions de tots!"
+msgstr "%s actualitzacions de tothom!"
#: actions/apitimelineretweetedtome.php:111
-#, fuzzy, php-format
+#, php-format
msgid "Repeated to %s"
-msgstr "Respostes a %s"
+msgstr "Repetit a %s"
#: actions/apitimelineretweetsofme.php:114
#, php-format
msgid "Repeats of %s"
msgstr "Repeticions de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
-msgstr "Aviso etiquetats amb %s"
+msgstr "Avisos etiquetats amb %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Actualitzacions etiquetades amb %1$s el %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "No s'ha trobat."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Mètode API en construcció."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -739,10 +762,11 @@ msgstr "Cap mida."
#: actions/avatarbynickname.php:69
msgid "Invalid size."
-msgstr "Mida invàlida."
+msgstr "La mida no és vàlida."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -753,10 +777,10 @@ msgstr ""
"Podeu pujar el vostre avatar personal. La mida màxima del fitxer és %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Usuari sense perfil coincident"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "L'usuari que no coincideix amb cap perfil"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -774,9 +798,9 @@ msgid "Preview"
msgstr "Vista prèvia"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
-msgstr "Suprimeix"
+msgstr "Elimina"
#: actions/avatarsettings.php:166 actions/grouplogo.php:236
msgid "Upload"
@@ -786,66 +810,88 @@ msgstr "Puja"
msgid "Crop"
msgstr "Retalla"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "No s'ha carregat cap fitxer."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
"Selecciona un quadrat de l'àrea de la imatge que vols que sigui el teu "
"avatar."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "S'ha perdut el nostre fitxer de dades."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar actualitzat."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Error en actualitzar avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
-msgstr "S'ha suprimit l'avatar."
+msgstr "S'ha eliminat l'avatar."
#: actions/block.php:69
msgid "You already blocked that user."
msgstr "Ja heu blocat l'usuari."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
-msgstr "Usuari bloquejat."
+msgstr "Bloca l'usuari"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+"Esteu segur que voleu blocar l'usuari? Tot seguit, se'n cancel·larà la "
+"vostra subscripció, no us podrà subscriure en el futur, i no en rebreu cap "
+"avís de respostes @."
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "No bloquis l'usuari"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Sí"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
-msgstr "Bloquejar aquest usuari"
+msgstr "Bloca aquest usuari"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
-msgstr "Error al guardar la informació del block."
+msgstr "No s'ha pogut desar la informació del bloc."
#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
@@ -856,8 +902,8 @@ msgstr "Error al guardar la informació del block."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "No s'ha trobat el grup."
@@ -867,14 +913,13 @@ msgid "%s blocked profiles"
msgstr "%s perfils blocats"
#: actions/blockedfromgroup.php:100
-#, fuzzy, php-format
+#, php-format
msgid "%1$s blocked profiles, page %2$d"
-msgstr "%s perfils blocats, pàgina %d"
+msgstr "%1$s perfils blocats, pàgina %2$d"
#: actions/blockedfromgroup.php:115
-#, fuzzy
msgid "A list of the users blocked from joining this group."
-msgstr "La llista dels usuaris d'aquest grup."
+msgstr "Una llista d'usuaris que han estat blocats d'afegir-se a aquest grup."
#: actions/blockedfromgroup.php:288
msgid "Unblock user from group"
@@ -888,9 +933,11 @@ msgstr "Desbloca"
msgid "Unblock this user"
msgstr "Desbloca l'usuari"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Envia a "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Publica a %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -902,75 +949,80 @@ msgstr "Codi de confirmació no trobat. "
#: actions/confirmaddress.php:85
msgid "That confirmation code is not for you!"
-msgstr "Aquest codi de confirmació no és per a tu!"
+msgstr "Aquest codi de confirmació no és vostre!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Tipus d'adreça %s desconeguda"
+msgid "Unrecognized address type %s."
+msgstr "Tipus d'adreça desconeguda %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Aquesta adreça ja ha estat confirmada."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "No s'ha pogut actualitzar l'usuari."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "No s'ha pogut eliminar la confirmació de correu electrònic."
-#: actions/confirmaddress.php:144
-#, fuzzy
+#: actions/confirmaddress.php:146
msgid "Confirm address"
-msgstr "Confirmar adreça"
+msgstr "Confirmeu l'adreça de correu electrònic"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
-msgstr "L'adreça \"%s\" ha estat confirmada per al teu compte."
+msgstr "L'adreça «%s» ha estat confirmada per al vostre compte."
#: actions/conversation.php:99
msgid "Conversation"
msgstr "Conversa"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Avisos"
#: actions/deleteapplication.php:63
-#, fuzzy
msgid "You must be logged in to delete an application."
-msgstr "Heu d'iniciar una sessió per editar un grup."
+msgstr "Heu d'haver iniciat una sessió per eliminar una aplicació."
#: actions/deleteapplication.php:71
-#, fuzzy
msgid "Application not found."
-msgstr "Avís sense perfil"
+msgstr "No s'ha trobat l'aplicació."
#: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94
-#, fuzzy
msgid "You are not the owner of this application."
-msgstr "No sou un membre del grup."
+msgstr "No sou el propietari d'aquesta aplicació."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
-msgstr "Ha ocorregut algun problema amb la teva sessió."
+msgstr "S'ha produït un problema amb el testimoni de la vostra sessió."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "No existeix aquest avís."
+msgstr "Elimina l'aplicació"
#: actions/deleteapplication.php:149
msgid ""
@@ -978,302 +1030,315 @@ msgid ""
"about the application from the database, including all existing user "
"connections."
msgstr ""
+"Esteu segur que voler eliminar l'aplicació? Això netejarà totes les dades de "
+"l'aplicació de la base de dades, incloent-hi totes les connexions d'usuari "
+"existents."
-#: actions/deleteapplication.php:156
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
-msgstr "No es pot esborrar la notificació."
+msgstr "No eliminis l'aplicació"
-#: actions/deleteapplication.php:160
-#, fuzzy
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
-msgstr "Eliminar aquesta nota"
+msgstr "Elimina aquesta aplicació"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "No heu iniciat una sessió."
#: actions/deletenotice.php:71
msgid "Can't delete this notice."
-msgstr "No es pot esborrar la notificació."
+msgstr "No es pot eliminar l'avís."
#: actions/deletenotice.php:103
-#, fuzzy
msgid ""
"You are about to permanently delete a notice. Once this is done, it cannot "
"be undone."
msgstr ""
-"Estàs a punt d'eliminar permanentment una notificació. Una vegada ho facis, "
-"no ho podràs desfer."
+"Esteu a punt d'eliminar permanentment un avís. Una vegada fet, no es podrà "
+"desfer."
#: actions/deletenotice.php:109 actions/deletenotice.php:141
msgid "Delete notice"
-msgstr "Eliminar nota."
+msgstr "Elimina l'avís"
#: actions/deletenotice.php:144
msgid "Are you sure you want to delete this notice?"
-msgstr "N'estàs segur que vols eliminar aquesta notificació?"
+msgstr "Esteu segur que voleu eliminar aquest avís?"
-#: actions/deletenotice.php:145
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
-msgstr "No es pot esborrar la notificació."
+msgstr "No eliminis aquest avís"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
-msgstr "Eliminar aquesta nota"
+msgstr "Elimina aquest avís"
#: actions/deleteuser.php:67
msgid "You cannot delete users."
-msgstr "No podeu suprimir els usuaris."
+msgstr "No podeu eliminar els usuaris."
#: actions/deleteuser.php:74
-#, fuzzy
msgid "You can only delete local users."
-msgstr "No pots eliminar l'estatus d'un altre usuari."
+msgstr "Només podeu eliminar usuaris locals."
#: actions/deleteuser.php:110 actions/deleteuser.php:133
msgid "Delete user"
-msgstr "Suprimeix l'usuari"
+msgstr "Elimina l'usuari"
#: actions/deleteuser.php:136
msgid ""
"Are you sure you want to delete this user? This will clear all data about "
"the user from the database, without a backup."
msgstr ""
+"Esteu segur que voleu eliminar l'usuari? S'esborraran totes les dades de "
+"l'usuari de la base de dades, sense cap còpia de seguretat."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
-msgstr "Suprimeix l'usuari"
+msgstr "Elimina l'usuari"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Disseny"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Paràmetres de disseny d'aquest lloc StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "L'URL del logotip no és vàlid."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "El tema no és disponible: %s"
+msgid "Theme not available: %s."
+msgstr "Tema no disponible: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Canvia el logotip"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logotip del lloc"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Canvia el tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Tema del lloc"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema del lloc."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Tema personalitzat"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Podeu pujar un tema personalitzat de l'StatusNet amb un arxiu ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Canvia la imatge de fons"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Fons"
-#: actions/designadminpanel.php:427
-#, fuzzy, php-format
+#: actions/designadminpanel.php:496
+#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
-msgstr "Pots pujar una imatge de logo per al grup."
+msgstr ""
+"Podeu pujar una imatge de fons per al lloc. La mida màxima de fitxer és %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Activada"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Desactivada"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Activa o desactiva la imatge de fons."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Posa en mosaic la imatge de fons"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Canvia els colors"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Contingut"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra lateral"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Text"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Enllaços"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avançat"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalitzat"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
-msgstr ""
+msgstr "Utilitza els paràmetres per defecte"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
-msgstr ""
+msgstr "Restaura els dissenys per defecte"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
-msgstr ""
+msgstr "Torna a restaurar al valor per defecte"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
-msgstr "Guardar"
+msgstr "Desa"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Desa el disseny"
#: actions/disfavor.php:81
msgid "This notice is not a favorite!"
-msgstr "Aquesta notificació no és un favorit!"
+msgstr "Aquesta avís no és un preferit!"
#: actions/disfavor.php:94
msgid "Add to favorites"
msgstr "Afegeix als preferits"
#: actions/doc.php:158
-#, fuzzy, php-format
+#, php-format
msgid "No such document \"%s\""
-msgstr "No existeix aquest document."
+msgstr "No existeix el document «%s»"
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "Altres opcions"
+msgstr "Editeu l'aplicació"
#: actions/editapplication.php:66
-#, fuzzy
msgid "You must be logged in to edit an application."
-msgstr "Heu d'iniciar una sessió per editar un grup."
+msgstr "Heu d'iniciar una sessió per editar una aplicació."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87
-#, fuzzy
msgid "No such application."
-msgstr "No existeix aquest avís."
+msgstr "No hi ha tal aplicació."
#: actions/editapplication.php:161
-#, fuzzy
msgid "Use this form to edit your application."
-msgstr "Utilitza aquest formulari per editar el grup."
+msgstr "Utilitza el formulari per editar la vostra aplicació."
#: actions/editapplication.php:177 actions/newapplication.php:159
-#, fuzzy
msgid "Name is required."
-msgstr "Igual a la contrasenya de dalt. Requerit."
+msgstr "Cal un nom."
#: actions/editapplication.php:180 actions/newapplication.php:165
-#, fuzzy
msgid "Name is too long (max 255 chars)."
-msgstr "El teu nom és massa llarg (màx. 255 caràcters)."
+msgstr "El nom és massa llarg (màx. 255 caràcters)."
#: actions/editapplication.php:183 actions/newapplication.php:162
-#, fuzzy
msgid "Name already in use. Try another one."
-msgstr "Aquest sobrenom ja existeix. Prova un altre. "
+msgstr "El nom ja es troba en ús. Proveu-ne un altre."
#: actions/editapplication.php:186 actions/newapplication.php:168
-#, fuzzy
msgid "Description is required."
-msgstr "Descripció"
+msgstr "Cal una descripció."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr ""
+msgstr "L'URL font és massa llarg."
#: actions/editapplication.php:200 actions/newapplication.php:185
-#, fuzzy
msgid "Source URL is not valid."
-msgstr "La pàgina personal no és un URL vàlid."
+msgstr "La URL d'origen no és vàlida."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
-msgstr ""
+msgstr "Cal una organització."
#: actions/editapplication.php:206 actions/newapplication.php:191
-#, fuzzy
msgid "Organization is too long (max 255 chars)."
-msgstr "La ubicació és massa llarga (màx. 255 caràcters)."
+msgstr "El camp organització és massa llarg (màx. 255 caràcters)."
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
-msgstr ""
+msgstr "Cal una pàgina d'inici de l'organització."
#: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long."
-msgstr ""
+msgstr "La crida de retorn és massa llarga."
#: actions/editapplication.php:225 actions/newapplication.php:215
msgid "Callback URL is not valid."
-msgstr ""
+msgstr "L'URL de la crida de retorn no és vàlid."
#: actions/editapplication.php:258
-#, fuzzy
msgid "Could not update application."
-msgstr "No s'ha pogut actualitzar el grup."
+msgstr "No s'ha pogut actualitzar l'aplicació."
#: actions/editgroup.php:56
#, php-format
msgid "Edit %s group"
-msgstr "Editar el grup %s"
+msgstr "Edita el grup %s"
#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
msgid "You must be logged in to create a group."
-msgstr "Has d'haver entrat per crear un grup."
+msgstr "Heu d'haver iniciat una sessió per crear un grup."
#: actions/editgroup.php:107 actions/editgroup.php:172
#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
-#, fuzzy
msgid "You must be an admin to edit the group."
-msgstr "Has de ser admin per editar aquest grup"
+msgstr "Heu de ser administrador per editar el grup."
#: actions/editgroup.php:158
msgid "Use this form to edit the group."
@@ -1284,11 +1349,17 @@ msgstr "Utilitza aquest formulari per editar el grup."
msgid "description is too long (max %d chars)."
msgstr "la descripció és massa llarga (màx. %d caràcters)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "L'àlies no és vàlid «%s»"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "No s'ha pogut actualitzar el grup."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "No s'han pogut crear els àlies."
@@ -1296,32 +1367,42 @@ msgstr "No s'han pogut crear els àlies."
msgid "Options saved."
msgstr "Configuració guardada."
-#: actions/emailsettings.php:60
-#, fuzzy
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
-msgstr "Configuració del correu electrònic"
+msgstr "Paràmetres del correu electrònic"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
-msgstr "Gestionar com reps correus de %%site.name%%."
+msgstr "Gestioneu com rebeu correu de %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adreça"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Adreça de correu electrònic"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Adreça electrònica confirmada actualment."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
-msgstr "Suprimeix"
+msgstr "Elimina"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1329,112 +1410,138 @@ msgstr ""
"Esperant a confirmar aquesta direcció. Revisa la teva safata d'entrada (i la "
"carpeta de spam!) per al missatge amb les instruccions."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancel·la"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Direcció de correu electrònic"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Adreça electrònica, com ara «nomusuari@example.org»"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Afegeix"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Correu electrònic entrant"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
-msgstr ""
-"Envia correu electrònic a aquesta adreça per publicar noves notificacions."
+msgstr "Envia correu electrònic a aquesta adreça per publicar nous avisos."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
-msgstr "Posar un nou correu electrònic per publicar; cancel·lar l'antic."
+msgstr "Estableix una nova adreça electrònica d'enviament; cancel·la l'antiga."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nou"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferències"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferències del correu electrònic"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
-msgstr ""
-"Envia'm notificacions quan algú nou se'm subscrigui, al meu correu "
-"electrònic."
+msgstr "Envia'm avisos per correu electrònic quan algú nou se'm subscrigui."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-"Envia'm un correu electrònic quan algú afegeixi una nota meva com a favorit."
+"Envia'm un correu electrònic quan algú afegeixi un avís meu com a preferit."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Envia'm un correu electrònic quan algú m'envii un missatge privat."
-#: actions/emailsettings.php:174
-#, fuzzy
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
-msgstr "Envia'm un correu electrònic quan algú m'envii un missatge privat."
+msgstr "Envia'm un correu electrònic quan algú m'enviï una resposta amb @."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
-msgstr "Permetre que els amics em reclamin i m'enviïn un correu electrònic."
+msgstr ""
+"Permetre que els amics em cridin l'atenció i m'enviïn un correu electrònic."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
-msgstr "Vull publicar notificacions per correu electrònic."
+msgstr "Vull publicar avisos amb el correu electrònic."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publica una MicroID per al meu correu electrònic."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "S'han desat les preferències."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "S'han desat les preferències del correu electrònic."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "No hi ha cap adreça electrònica."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "No es pot normalitzar l'adreça electrònica."
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Adreça de correu electrònic no vàlida."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Ja és la vostra adreça electrònica."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "L'adreça electrònica ja pertany a un altre usuari."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "No s'ha pogut inserir el codi de confirmació."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1443,77 +1550,91 @@ msgstr ""
"Revisa la teva safata d'entrada (i la carpeta de spam!) per veure aquest "
"codi i les instruccions per utilitzar-lo."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
-msgstr "Cap confirmació pendent per a cancel·lar."
+msgstr "Cap confirmació pendent per cancel·lar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Aquesta adreça de missatgeria instantània és incorrecta."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Aquesta l'adreça de correu electrònic incorrecta."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmació cancel·lada."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "S'ha cancel·lat la confirmació de correu electrònic."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Aquest no és el teu correu electrònic"
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "L'adreça ha estat eliminada."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "S'ha eliminat l'adreça de correu electrònic."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "No hi ha cap direcció de correu electrònic entrant."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "No s'ha pogut actualitzar el registre de l'usuari."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Eliminat el correu electrònic entrant."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nou correu electrònic entrant afegit."
#: actions/favor.php:79
msgid "This notice is already a favorite!"
-msgstr "Aquesta nota ja és favorita."
+msgstr "Aquest avís ja és un preferit."
#: actions/favor.php:92 lib/disfavorform.php:140
msgid "Disfavor favorite"
-msgstr "Desfavoritar favorit"
+msgstr "Fes que deixi de ser preferit"
#: actions/favorited.php:65 lib/popularnoticesection.php:91
#: lib/publicgroupnav.php:93
msgid "Popular notices"
-msgstr "Notificacions populars"
+msgstr "Avisos populars"
#: actions/favorited.php:67
#, php-format
msgid "Popular notices, page %d"
-msgstr "Notificacions populars, pàgina %d"
+msgstr "Avisos populars, pàgina %d"
#: actions/favorited.php:79
msgid "The most popular notices on the site right now."
-msgstr "Les notificacions més populars en aquest lloc ara mateix."
+msgstr "Els avisos més populars en aquest lloc ara mateix."
#: actions/favorited.php:150
msgid "Favorite notices appear on this page but no one has favorited one yet."
msgstr ""
+"Els avisos de preferits apareixen en aquesta pàgina però ningú n'ha preferit "
+"cap encara."
#: actions/favorited.php:153
msgid ""
"Be the first to add a notice to your favorites by clicking the fave button "
"next to any notice you like."
msgstr ""
+"Sigueu el primer en afegir un avís dels vostres preferits fent clic al botó "
+"de preferit que es troba al costat dels avisos que us poden agradar."
#: actions/favorited.php:156
#, php-format
@@ -1521,17 +1642,19 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to add a "
"notice to your favorites!"
msgstr ""
+"Per què no [registreu un compte](%%action.register%%) i sou el primer en "
+"afegir un avís als vostres preferits!"
#: actions/favoritesrss.php:111 actions/showfavorites.php:77
#: lib/personalgroupnav.php:115
#, php-format
msgid "%s's favorite notices"
-msgstr "%s's notes favorites"
+msgstr "Avisos preferits de %s"
#: actions/favoritesrss.php:115
-#, fuzzy, php-format
+#, php-format
msgid "Updates favored by %1$s on %2$s!"
-msgstr "Actualitzacions de %1$s a %2$s!"
+msgstr "Actualitzacions preferides per %1$s a %2$s!"
#: actions/featured.php:69 lib/featureduserssection.php:87
#: lib/publicgroupnav.php:89
@@ -1544,7 +1667,7 @@ msgid "Featured users, page %d"
msgstr "Usuaris destacats, pàgina %d"
#: actions/featured.php:99
-#, fuzzy, php-format
+#, php-format
msgid "A selection of some great users on %s"
msgstr "Una selecció d'alguns dels millors usuaris a %s"
@@ -1574,7 +1697,7 @@ msgstr "L'usuari que s'escolta no existeix."
#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
msgid "You can use the local subscription!"
-msgstr "Pots utilitzar la subscripció local!"
+msgstr "Podeu utilitzar la subscripció local!"
#: actions/finishremotesubscribe.php:99
msgid "That user has blocked you from subscribing."
@@ -1585,18 +1708,16 @@ msgid "You are not authorized."
msgstr "No esteu autoritzat."
#: actions/finishremotesubscribe.php:113
-#, fuzzy
msgid "Could not convert request token to access token."
-msgstr "No s'han pogut convertir els senyals de petició a senyals d'accés."
+msgstr "No s'ha pogut convertir el testimoni de sol·licitud a un d'accés."
#: actions/finishremotesubscribe.php:118
-#, fuzzy
msgid "Remote service uses unknown version of OMB protocol."
-msgstr "Versió desconeguda del protocol OMB."
+msgstr "El servei remot utilitza una versió desconeguda del protocol OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Error en actualitzar el perfil remot"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "S'ha produït un error en actualitzar el perfil remot."
#: actions/getfile.php:79
msgid "No such file."
@@ -1607,33 +1728,30 @@ msgid "Cannot read file."
msgstr "No es pot llegir el fitxer."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Mida invàlida."
+msgstr "Rol no vàlid."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Aquest rol està reservat i no pot definir-se."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "No pots enviar un missatge a aquest usuari."
+msgstr "No podeu establir rols d'usuari en aquest lloc."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "L'usuari ja està silenciat."
+msgstr "L'usuari ja té aquest rol."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
-msgstr "No s'ha especificat perfil."
+msgstr "No s'ha especificat cap perfil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "No hi ha cap perfil amb aquesta ID."
@@ -1647,44 +1765,44 @@ msgid "Only an admin can block group members."
msgstr "Només un administrador pot blocar membres del grup."
#: actions/groupblock.php:95
-#, fuzzy
msgid "User is already blocked from group."
-msgstr "Un usuari t'ha bloquejat."
+msgstr "L'usuari ja està blocat del grup."
#: actions/groupblock.php:100
msgid "User is not a member of group."
msgstr "L'usuari no és membre del grup."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Bloca l'usuari del grup"
-#: actions/groupblock.php:162
-#, fuzzy, php-format
+#: actions/groupblock.php:160
+#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
"will be removed from the group, unable to post, and unable to subscribe to "
"the group in the future."
msgstr ""
-"Esteu segur que voleu blocar l'usuari «%s» del grup «%s»? Se suprimiran del "
-"grup, i no podran enviar-hi res ni subscriure-s'hi en el futur."
+"Esteu segur que voleu blocar l'usuari «%1$s» del grup «%2$s»? S'eliminarà del "
+"grup, i no podrà enviar-hi res ni subscriure-s'hi en el futur."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "No bloquis l'usuari del grup"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Bloca l'usuari del grup"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "S'ha produït un error en la base de dades en blocar l'usuari del grup."
#: actions/groupbyid.php:74 actions/userbyid.php:70
-#, fuzzy
msgid "No ID."
-msgstr "No ID"
+msgstr "Sense ID."
#: actions/groupdesignsettings.php:68
msgid "You must be logged in to edit a group."
@@ -1716,15 +1834,12 @@ msgid "Group logo"
msgstr "Logo del grup"
#: actions/grouplogo.php:153
-#, fuzzy, php-format
+#, php-format
msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
-msgstr "Pots pujar una imatge de logo per al grup."
-
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Usuari sense perfil coincident"
+msgstr ""
+"Podeu pujar una imatge com a logotip del vostre grup. La mida màxima del "
+"fitxer és %s."
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
@@ -1744,9 +1859,9 @@ msgid "%s group members"
msgstr "%s membre/s en el grup"
#: actions/groupmembers.php:103
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group members, page %2$d"
-msgstr "%s membre/s en el grup, pàgina %d"
+msgstr "%1$s membres del grup, pàgina %2$d"
#: actions/groupmembers.php:118
msgid "A list of the users in this group."
@@ -1756,34 +1871,38 @@ msgstr "La llista dels usuaris d'aquest grup."
msgid "Admin"
msgstr "Admin"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloca"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Fes l'usuari un administrador del grup"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Fes-lo administrador"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Fes l'usuari administrador"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s línia temporal"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Actualitzacions dels membres de %1$s el %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grups"
@@ -1802,19 +1921,24 @@ msgid ""
"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
"%%%%)"
msgstr ""
+"Els grups de %%%%site.name%%%% us permeten trobar-vos i parlar amb gent "
+"d'interessos semblants. Després d'unir-vos a un grup, podeu enviar missatges "
+"a altres membres emprant la sintaxi «!groupname». No veieu cap grup que us "
+"agradi? Proveu de [cercar-ne un](%%%%action.groupsearch%%%%) o [comenceu-ne "
+"un de propi!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Crea un grup nou"
#: actions/groupsearch.php:52
-#, fuzzy, php-format
+#, php-format
msgid ""
"Search for groups on %%site.name%% by their name, location, or description. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
-"Troba gent a %%site.name%% per nom, ubicació o interessos. Separa els termes "
-"de cerca amb espais; han de ser majors a 3 caràcters."
+"Cerca grups a %%site.name%% per nom, ubicació o descripció. Separeu els "
+"termes de cerca amb espais; han de contenir com a mínim 3 caràcters."
#: actions/groupsearch.php:58
msgid "Group search"
@@ -1831,6 +1955,8 @@ msgid ""
"If you can't find the group you're looking for, you can [create it](%%action."
"newgroup%%) yourself."
msgstr ""
+"Si no podeu trobar el grup que cerqueu, podeu provar de [crear-lo](%%action."
+"newgroup%%) també."
#: actions/groupsearch.php:85
#, php-format
@@ -1838,6 +1964,8 @@ msgid ""
"Why not [register an account](%%action.register%%) and [create the group](%%"
"action.newgroup%%) yourself!"
msgstr ""
+"Per què no [registreu un compte](%%action.register%%) i proveu de [crear-hi "
+"un grup](%%action.newgroup%%)!"
#: actions/groupunblock.php:91
msgid "Only an admin can unblock group members."
@@ -1849,30 +1977,43 @@ msgstr "L'usuari no està blocat del grup."
#: actions/groupunblock.php:128 actions/unblock.php:86
msgid "Error removing the block."
-msgstr "S'ha produït un error en suprimir el bloc."
+msgstr "S'ha produït un error en eliminar el bloc."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Paràmetres de missatgeria instantània"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-"Pots enviar i rebre avisos via [missatges instantanis](%%doc.im%%) de Jabber/"
-"GTalk. Configura la teva adreça i opcions a sota."
+"Podeu enviar i rebre avisos a través de [missatges instantanis](%%doc.im%%) "
+"de Jabber/GTalk. Configureu la vostra adreça i opcions a continuació."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "La MI no és disponible."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Adreça de missatgeria instantània"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Adreça actual Jabber/Gtalk confirmada."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1882,80 +2023,121 @@ msgstr ""
"Jabber/GTalk un missatge amb més instruccions. (Has afegit a %s a la teva "
"llista d'amics?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Adreça de missatgeria instantània"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-"Adreça Jabber o GTalk, per exemple \"NomUsuari@example.org\". Primer, "
-"assegura't d'afegir a %s a la teva llista d'amics en el teu client de "
-"missatgeria instantània o a GTalk."
+"Adreça Jabber o GTalk, per exemple «NomUsuari@example.org». Primer, assegureu-"
+"vos d'afegir %s a la vostra llista d'amics en el vostre client de "
+"missatgeria instantània o al GTalk."
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferències de MI"
-#: actions/imsettings.php:143
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Envia'm avisos per Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Envia'm un avís quan el meu estat Jabber/GTalk canvii."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Envia'm respostes a través de Jabber/GTalk de la gent a la que no estic "
"subscrita."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publica una MicroID per a la meva direcció de Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "S'han desat les preferències."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Cap Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Impossible normalitzar aquest Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Jabber ID no vàlid"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Aquest ja és el teu Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Aquest Jabber ID ja està sent utilitzat per un altre usuari."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
"S'ha enviat un codi de confirmació a l'adreça de missatgeria instantània que "
-"has afegit. Has d'acceptar que %s et pugui enviar missatges."
+"heu afegit. Heu d'acceptar que %s us pugui enviar missatges."
+
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Aquesta adreça de missatgeria instantània és incorrecta."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "No s'ha pogut eliminar la confirmació de MI."
-#: actions/imsettings.php:387
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "S'ha cancel·lat la confirmació de MI."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Aquest no és el teu Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "S'ha eliminat l'adreça de MI."
+
#: actions/inbox.php:59
-#, fuzzy, php-format
+#, php-format
msgid "Inbox for %1$s - page %2$d"
-msgstr "Safata d'entrada per %s"
+msgstr "Safata d'entrada de %1$s - pàgina %2$d"
#: actions/inbox.php:62
#, php-format
msgid "Inbox for %s"
-msgstr "Safata d'entrada per %s"
+msgstr "Safata d'entrada de %s"
#: actions/inbox.php:115
msgid "This is your inbox, which lists your incoming private messages."
@@ -1969,10 +2151,9 @@ msgstr "S'han inhabilitat les invitacions."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Has d'estar dins del servei per poder convidar altres usuaris a utilitzar-lo "
-"%s"
+"Heu d'haver iniciat una sessió per convidar altres usuaris a utilitzar %s"
#: actions/invite.php:72
#, php-format
@@ -1981,17 +2162,19 @@ msgstr "Correu electrònic invàlid: %s"
#: actions/invite.php:110
msgid "Invitation(s) sent"
-msgstr "Invitació(ons) enviada(des)"
+msgstr "Invitacions envidades"
#: actions/invite.php:112
msgid "Invite new users"
-msgstr "Invitar nous usuaris"
+msgstr "Convida nous usuaris"
#: actions/invite.php:128
msgid "You are already subscribed to these users:"
msgstr "Ja estàs subscrit a aquests usuaris:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1999,8 +2182,7 @@ msgstr "%1$s (%2$s)"
#: actions/invite.php:136
msgid ""
"These people are already users and you were automatically subscribed to them:"
-msgstr ""
-"Aquestes persona ja són usuaris i tu estàs subscrit automàticament a ells:"
+msgstr "Aquestes persones ja són usuaris i se us ha subscrit automàticament:"
#: actions/invite.php:144
msgid "Invitation(s) sent to the following people:"
@@ -2011,8 +2193,8 @@ msgid ""
"You will be notified when your invitees accept the invitation and register "
"on the site. Thanks for growing the community!"
msgstr ""
-"Seràs avisat quan les teves invitacions siguin acceptades i els teus "
-"convidats es registrin al lloc. Gràcies per fer créixer la comunitat."
+"Se us notificarà quan els vostres convidats acceptin la invitació i es "
+"registrin al lloc. Gràcies per fer créixer la comunitat!"
#: actions/invite.php:162
msgid ""
@@ -2023,11 +2205,11 @@ msgstr ""
#: actions/invite.php:187
msgid "Email addresses"
-msgstr "Direcció de correu electrònic"
+msgstr "Adreces de correu electrònic"
#: actions/invite.php:189
msgid "Addresses of friends to invite (one per line)"
-msgstr "Direccions d'amic per convidar (una per línia)"
+msgstr "Adreces d'amics per convidar (una per línia)"
#: actions/invite.php:192
msgid "Personal message"
@@ -2039,17 +2221,18 @@ msgstr "Opcionalment pots afegir un missatge a la invitació."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Envia"
-#: actions/invite.php:227
-#, fuzzy, php-format
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
+#, php-format
msgid "%1$s has invited you to join them on %2$s"
-msgstr "%1$s t'ha convidat us ha convidat a unir-te al grup %2$s"
+msgstr "%1$s us ha convidat a unir-vos al grup %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2108,130 +2291,132 @@ msgstr ""
#: actions/joingroup.php:60
msgid "You must be logged in to join a group."
-msgstr "Has d'haver entrat per participar en un grup."
+msgstr "Heu d'haver iniciat una sessió per unir-vos a un grup."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Cap sobrenom."
+msgstr "Cap sobrenom o ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s s'ha unit al grup %2$s"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
-msgstr "Has d'haver entrat per a poder marxar d'un grup."
+msgstr "Heu d'haver iniciat una sessió per deixar un grup."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "No ets membre d'aquest grup."
-#: actions/leavegroup.php:137
-#, fuzzy, php-format
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
msgid "%1$s left group %2$s"
-msgstr "%s ha abandonat el grup %s"
+msgstr "%1$s ha abandonat el grup %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
-msgstr "Ja estàs connectat."
+msgstr "Ja hi heu iniciat una sessió."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nom d'usuari o contrasenya incorrectes."
-#: actions/login.php:132 actions/otp.php:120
-#, fuzzy
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
-msgstr "No autoritzat."
+msgstr ""
+"S'ha produït un error en definir l'usuari. Probablement no hi esteu "
+"autoritzat."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Inici de sessió"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Accedir al lloc"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Recorda'm"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
-"Iniciar sessió automàticament en el futur; no utilitzar en ordinadors "
+"Inicia la sessió automàticament en el futur; no ho activeu en ordinadors "
"compartits!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Contrasenya oblidada o perduda?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
-"Per raons de seguretat, si us plau torna a escriure el teu nom d'usuari i "
-"contrasenya abans de canviar la teva configuració."
+"Per raons de seguretat, torneu a escriure el vostre nom d'usuari i "
+"contrasenya abans de canviar la vostra configuració."
-#: actions/login.php:270
-#, fuzzy, php-format
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Inicieu una sessió amb nom d'usuari i contrasenya"
+
+#: actions/login.php:295
+#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Inicia una sessió amb el teu nom d'usuari i la teva contrasenya. Encara no "
-"tens un nom d'usuari? [Crea](%%action.register%%) un nou compte o prova "
-"[OpenID] (%%action.openidlogin%%)."
+"No teniu cap nom d'usuari encara? [Registreu-hi](%%action.register%%) un nou "
+"compte."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
msgstr "Només un administrador poc fer a un altre usuari administrador."
#: actions/makeadmin.php:96
-#, fuzzy, php-format
+#, php-format
msgid "%1$s is already an admin for group \"%2$s\"."
-msgstr "%s ja és un administrador del grup «%s»."
+msgstr "%1$s ja és un administrador del grup «%2$s»."
#: actions/makeadmin.php:133
-#, fuzzy, php-format
+#, php-format
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 obtenir el registre de pertinència de %1$s al grup %2$s."
#: actions/makeadmin.php:146
-#, fuzzy, php-format
+#, php-format
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 %1$s administrador del grup %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "No té cap estatus ara mateix"
+msgid "No current status."
+msgstr "No hi ha cap estat actual."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "No existeix aquest avís."
+msgstr "Nova Aplicació"
#: actions/newapplication.php:64
-#, fuzzy
msgid "You must be logged in to register an application."
-msgstr "Has d'haver entrat per crear un grup."
+msgstr "Heu d'haver iniciat una sessió per registrar-hi una aplicació."
#: actions/newapplication.php:143
-#, fuzzy
msgid "Use this form to register a new application."
-msgstr "Utilitza aquest formulari per crear un nou grup."
+msgstr "Utilitzeu aquest formulari per crear una nova aplicació."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr ""
+msgstr "URL d'origen requerida."
#: actions/newapplication.php:258 actions/newapplication.php:267
-#, fuzzy
msgid "Could not create application."
-msgstr "No s'han pogut crear els àlies."
+msgstr "No s'ha pogut crear l'aplicació."
#: actions/newgroup.php:53
msgid "New group"
@@ -2245,12 +2430,12 @@ msgstr "Utilitza aquest formulari per crear un nou grup."
msgid "New message"
msgstr "Nou missatge"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "No podeu enviar un misssatge a aquest usuari."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Cap contingut!"
@@ -2258,7 +2443,7 @@ msgstr "Cap contingut!"
msgid "No recipient specified."
msgstr "No has especificat el destinatari."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "No t'enviïs missatges a tu mateix, simplement dir-te això."
@@ -2272,7 +2457,7 @@ msgstr "S'ha enviat el missatge"
msgid "Direct message to %s sent."
msgstr "S'ha enviat un missatge directe a %s."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax Error"
@@ -2280,9 +2465,9 @@ msgstr "Ajax Error"
msgid "New notice"
msgstr "Nou avís"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
-msgstr "Notificació publicada"
+msgstr "S'ha publicat l'avís"
#: actions/noticesearch.php:68
#, php-format
@@ -2308,6 +2493,8 @@ msgid ""
"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
"status_textarea=%s)!"
msgstr ""
+"Sigueu el primer en [enviar sobre aquest tema](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
#: actions/noticesearch.php:124
#, php-format
@@ -2315,6 +2502,8 @@ msgid ""
"Why not [register an account](%%%%action.register%%%%) and be the first to "
"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
msgstr ""
+"Per què no [registreu un compte](%%%%action.register%%%%) i sou el primer "
+"[en parlar del tema](%%%%action.newnotice%%%%?status_textarea=%s)!"
#: actions/noticesearchrss.php:96
#, php-format
@@ -2328,24 +2517,24 @@ msgstr ""
"Les actualitzacions que coincideixen amb el terme de cerca «%1$s» el %2$s!"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"Aquest usuari no permet reclamacions o no ha confirmar encara cap correu "
-"electrònic."
+"Aquest usuari no permet que li cridin l'atenció o no ha confirmat encara cap "
+"correu electrònic."
#: actions/nudge.php:94
msgid "Nudge sent"
-msgstr "Reclamació enviada"
+msgstr "S'ha cridat l'atenció"
#: actions/nudge.php:97
msgid "Nudge sent!"
-msgstr "Reclamació enviada!"
+msgstr "S'ha cridat l'atenció!"
#: actions/oauthappssettings.php:59
-#, fuzzy
msgid "You must be logged in to list your applications."
-msgstr "Heu d'iniciar una sessió per editar un grup."
+msgstr "Heu d'haver iniciat una sessió per llistar les vostres aplicacions."
#: actions/oauthappssettings.php:74
msgid "OAuth applications"
@@ -2353,57 +2542,64 @@ msgstr "Aplicacions OAuth"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "Aplicacions que heu registrat"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "No teniu cap aplicació registrada encara."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "Aplicacions connectades"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "Heu permès les aplicacions següents accedir al vostre compte."
#: actions/oauthconnectionssettings.php:175
msgid "You are not a user of that application."
msgstr "No sou usuari de l'aplicació."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr ""
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "No s'ha pogut revocar l'accés de l'aplicació: %s"
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
-msgstr ""
+msgstr "No heu autoritzat cap aplicació perquè utilitzi el vostre compte."
#: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications "
msgstr ""
+"Els desenvolupadors poden editar els paràmetres de registre de llurs "
+"aplicacions "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Avís sense perfil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "L'avís no té cap perfil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "estat de %1$s a %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "tipus de contingut "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "El tipus de contingut %s no està permès."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Només "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Si us plau, només URL %s sobre HTTP pla."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Format de data no suportat."
@@ -2413,7 +2609,7 @@ msgstr "Cerca de gent"
#: actions/opensearch.php:67
msgid "Notice Search"
-msgstr "Cerca de notificacions"
+msgstr "Cerca d'avisos"
#: actions/othersettings.php:60
msgid "Other settings"
@@ -2421,7 +2617,7 @@ msgstr "Altres paràmetres"
#: actions/othersettings.php:71
msgid "Manage various other options."
-msgstr "Gestionar altres vàries opcions."
+msgstr "Gestiona altres opcions diferents."
#: actions/othersettings.php:108
msgid " (free service)"
@@ -2453,29 +2649,25 @@ msgid "No user ID specified."
msgstr "No s'ha especificat cap ID d'usuari."
#: actions/otp.php:83
-#, fuzzy
msgid "No login token specified."
-msgstr "No s'ha especificat perfil."
+msgstr "No s'ha especificat cap testimoni d'inici de sessió."
#: actions/otp.php:90
-#, fuzzy
msgid "No login token requested."
-msgstr "No id en el perfil sol·licitat."
+msgstr "No s'ha sol·licitat cap testimoni d'inici de sessió."
#: actions/otp.php:95
-#, fuzzy
msgid "Invalid login token specified."
-msgstr "El contingut de l'avís és invàlid"
+msgstr "No s'ha especificat un testimoni d'inici de sessió vàlid."
#: actions/otp.php:104
-#, fuzzy
msgid "Login token expired."
-msgstr "Accedir al lloc"
+msgstr "El testimoni d'inici de sessió ha vençut."
#: actions/outbox.php:58
-#, fuzzy, php-format
+#, php-format
msgid "Outbox for %1$s - page %2$d"
-msgstr "Safata de sortida per %s"
+msgstr "Safata de sortida de %1$s - pàgina %2$d"
#: actions/outbox.php:61
#, php-format
@@ -2490,11 +2682,11 @@ msgstr ""
#: actions/passwordsettings.php:58
msgid "Change password"
-msgstr "Canviar contrasenya"
+msgstr "Canvia la contrasenya"
#: actions/passwordsettings.php:69
msgid "Change your password."
-msgstr "Canviar contrasenya"
+msgstr "Canvieu la vostra contrasenya"
#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
msgid "Password change"
@@ -2513,9 +2705,9 @@ msgid "6 or more characters"
msgstr "6 o més caràcters"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
-msgstr "Confirmar"
+msgstr "Confirma"
#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
msgid "Same as password above"
@@ -2523,13 +2715,13 @@ msgstr "Igual a la contrasenya de dalt"
#: actions/passwordsettings.php:117
msgid "Change"
-msgstr "Canviar"
+msgstr "Canvia"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "La contrasenya hauria de ser d'entre 6 a més caràcters."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Les contrasenyes no coincideixen."
@@ -2539,48 +2731,48 @@ msgstr "Contrasenya antiga incorrecta"
#: actions/passwordsettings.php:181
msgid "Error saving user; invalid."
-msgstr "Error en guardar usuari; invàlid."
+msgstr "S'ha produït un error en desar l'usuari; no és vàlid."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
-msgstr "No es pot guardar la nova contrasenya."
+msgstr "No es pot desar la nova contrasenya."
#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
msgid "Password saved."
msgstr "Contrasenya guardada."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Camins"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
-msgstr ""
+msgstr "Camí i paràmetres del servidor d'aquest lloc StatusNet."
#: actions/pathsadminpanel.php:157
-#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Aquesta pàgina no està disponible en "
+#, php-format
+msgid "Theme directory not readable: %s."
+msgstr "No es pot llegir el directori de temes: %s"
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+msgid "Avatar directory not writable: %s."
+msgstr "No es pot escriure al directori d'avatars: %s"
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
+msgid "Background directory not writable: %s."
msgstr "No es pot escriure al directori de fons: %s"
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+msgid "Locales directory not readable: %s."
+msgstr "No es pot llegir el directori de les traduccions: %s"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
-msgstr ""
+msgstr "El servidor SSL no és vàlid. La mida màxima és de 255 caràcters."
#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
msgid "Site"
@@ -2604,19 +2796,19 @@ msgstr "Camí del lloc"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
-msgstr ""
+msgstr "El camí a les traduccions"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
-msgstr ""
+msgstr "El camí del directori a les traduccions"
#: actions/pathsadminpanel.php:250
msgid "Fancy URLs"
-msgstr ""
+msgstr "URL atractius"
#: actions/pathsadminpanel.php:252
msgid "Use fancy (more readable and memorable) URLs?"
-msgstr ""
+msgstr "Voleu fer servir URL atractius (més fàcils de llegir i de recordar)?"
#: actions/pathsadminpanel.php:259
msgid "Theme"
@@ -2688,21 +2880,19 @@ msgstr "Utilitza l'SSL"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
-msgstr ""
+msgstr "Quan utilitzar l'SSL"
#: actions/pathsadminpanel.php:335
-#, fuzzy
msgid "SSL server"
msgstr "Servidor SSL"
#: actions/pathsadminpanel.php:336
msgid "Server to direct SSL requests to"
-msgstr ""
+msgstr "Servidor on dirigir les sol·licituds SSL"
#: actions/pathsadminpanel.php:352
-#, fuzzy
msgid "Save paths"
-msgstr "Avís del lloc"
+msgstr "Desa els camins"
#: actions/peoplesearch.php:52
#, php-format
@@ -2717,24 +2907,26 @@ msgstr ""
msgid "People search"
msgstr "Cerca de gent"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Etiqueta no vàlida per a la gent: %s"
+msgid "Not a valid people tag: %s."
+msgstr "No és una etiqueta de gent vàlida: %s"
-#: actions/peopletag.php:144
-#, fuzzy, php-format
+#: actions/peopletag.php:142
+#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
-msgstr "Usuaris que s'han etiquetat %s - pàgina %d"
+msgstr "Usuaris que s'han etiquetat amb %1$s - pàgina %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "El contingut de l'avís és invàlid"
+msgid "Invalid notice content."
+msgstr "El contingut de l'avís no és vàlid."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
+"La llicència ‘%1$s’ de l'avís no és compatible amb la llicència ‘%2$s’ del "
+"lloc."
#: actions/profilesettings.php:60
msgid "Profile settings"
@@ -2744,8 +2936,8 @@ msgstr "Configuració del perfil"
msgid ""
"You can update your personal profile info here so people know more about you."
msgstr ""
-"Pots actualitzar la informació del teu perfil personal per a que la gent "
-"sàpiga més sobre tu."
+"Podeu actualitzar la informació del vostre perfil personal perquè la gent us "
+"pugui conèixer millor."
#: actions/profilesettings.php:99
msgid "Profile information"
@@ -2756,53 +2948,53 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"1-64 lletres en minúscula o números, sense signes de puntuació o espais"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nom complet"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Pàgina personal"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL del teu web, blog o perfil en un altre lloc"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Descriviu qui sou i els vostres interessos en %d caràcters"
-#: actions/profilesettings.php:125 actions/register.php:464
-#, fuzzy
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
-msgstr "Explica'ns alguna cosa sobre tu "
+msgstr "Feu una descripció personal i interessos"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografia"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Ubicació"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
-msgstr "On ets, per exemple \"Ciutat, Estat (o Regió), País\""
+msgstr "On us trobeu, per exemple «ciutat, comarca (o illa), país»"
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
-msgstr ""
+msgstr "Comparteix la meva ubicació actual en enviar avisos"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Etiquetes"
@@ -2810,49 +3002,49 @@ msgstr "Etiquetes"
msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
msgstr ""
-"Etiquetes per a tu mateix (lletres, números, -, ., i _), per comes o separat "
-"por espais"
+"Etiquetes pròpies (lletres, nombres, -, ., i _), per comes o separades amb "
+"espais"
#: actions/profilesettings.php:151
msgid "Language"
-msgstr "Idioma"
+msgstr "Llengua"
#: actions/profilesettings.php:152
msgid "Preferred language"
-msgstr "Preferència d'idioma"
+msgstr "Llengua preferida"
#: actions/profilesettings.php:161
msgid "Timezone"
-msgstr "Franja horària"
+msgstr "Fus horari"
#: actions/profilesettings.php:162
msgid "What timezone are you normally in?"
-msgstr "Quina franja horària seria normal ser?"
+msgstr "En quin fus horari us trobeu normalment?"
#: actions/profilesettings.php:167
msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-"Automàticament subscriure's a qualsevol que ho estigui a tu mateix (ideal "
-"per no-humans)"
+"Subscripció automàtica a qualsevol qui em tingui subscrit (ideal per no-"
+"humans)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "La biografia és massa llarga (màx. %d caràcters)."
#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
msgid "Timezone not selected."
-msgstr "Franja horària no seleccionada."
+msgstr "No s'ha seleccionat el fus horari."
#: actions/profilesettings.php:241
msgid "Language is too long (max 50 chars)."
-msgstr "L'idioma és massa llarg (màx 50 caràcters)."
+msgstr "La llengua és massa llarga (màx. 50 caràcters)."
#: actions/profilesettings.php:253 actions/tagother.php:178
#, php-format
msgid "Invalid tag: \"%s\""
-msgstr "Etiqueta no vàlida: \"%s\""
+msgstr "L'etiqueta no és vàlida: «%s»"
#: actions/profilesettings.php:306
msgid "Couldn't update user for autosubscribe."
@@ -2864,20 +3056,20 @@ msgstr "No s'han pogut desar les preferències d'ubicació."
#: actions/profilesettings.php:375
msgid "Couldn't save profile."
-msgstr "No s'ha pogut guardar el perfil."
+msgstr "No s'ha pogut desar el perfil."
#: actions/profilesettings.php:383
msgid "Couldn't save tags."
-msgstr "No s'han pogut guardar les etiquetes."
+msgstr "No s'han pogut desar les etiquetes."
#. TRANS: Message after successful saving of administrative settings.
#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
msgid "Settings saved."
-msgstr "Configuració guardada."
+msgstr "S'ha desat la configuració."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr "Més enllà del límit de la pàgina (%s)"
#: actions/public.php:92
@@ -2934,16 +3126,20 @@ msgid ""
"tool. [Join now](%%action.register%%) to share notices about yourself with "
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
+"Això és %%site.name%%, un servei de [micro-blogging](http://en.wikipedia.org/"
+"wiki/Micro-blogging) basat en l'eina lliure [StatusNet](http://status.net/). "
+"[Uniu-vos-hi ara](%%action.register%%) per compartir què feu amb els vostres "
+"amics, familiars, i companys! ([Més informació](%%doc.help%%))"
#: actions/public.php:247
-#, fuzzy, php-format
+#, php-format
msgid ""
"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
"Això és %%site.name%%, un servei de [microblogging](http://ca.wikipedia.org/"
-"wiki/Microblogging) "
+"wiki/Microblogging) basat en l'eina lliure [StatusNet](http://status.net/)."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
@@ -2958,6 +3154,8 @@ msgstr "Aquestes són les etiquetes recents més populars a %s "
#, php-format
msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
msgstr ""
+"Ningú ha enviat encara cap avís amb una [etiqueta de coixinet (#)](%%doc.tags"
+"%%)."
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
@@ -2969,6 +3167,8 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to post "
"one!"
msgstr ""
+"Per què no hi [registreu un compte](%%action.register%%) i sou el primer en "
+"escriure'n un!"
#: actions/publictagcloud.php:134
msgid "Tag cloud"
@@ -2976,7 +3176,7 @@ msgstr "Núvol d'etiquetes"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
-msgstr "Ja t'has connectat!"
+msgstr "Ja heu iniciat una sessió!"
#: actions/recoverpassword.php:62
msgid "No such recovery code."
@@ -3025,22 +3225,22 @@ msgstr "Sobrenom o adreça electrònica"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
msgstr ""
-"El teu nom d'usuari en aquest servidor, o la teva adreça de correu "
+"El vostre nom d'usuari en aquest servidor, o la vostra adreça de correu "
"electrònic registrada."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
msgid "Recover"
-msgstr "Recuperar"
+msgstr "Recupera"
#: actions/recoverpassword.php:208
msgid "Reset password"
-msgstr "Restablir contrasenya"
+msgstr "Reinicialitza la contrasenya"
#: actions/recoverpassword.php:209
msgid "Recover password"
-msgstr "Recuperar contrasenya"
+msgstr "Recupera la contrasenya"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Recuperació de contrasenya sol·licitada"
@@ -3054,138 +3254,155 @@ msgstr "6 o més caràcters, i no te n'oblidis!"
#: actions/recoverpassword.php:243
msgid "Reset"
-msgstr "Restablir"
+msgstr "Reinicialitza"
#: actions/recoverpassword.php:252
msgid "Enter a nickname or email address."
-msgstr "Escriu un sobrenom o una adreça de correu electrònic."
+msgstr "Escriviu un sobrenom o una adreça de correu electrònic."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "No hi ha cap usuari amb aquesta direcció o usuari."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
-msgstr "Cap adreça de correu electrònic registrada per aquest usuari."
+msgstr "No hi ha cap adreça de correu electrònic registrada d'aquest usuari."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
-msgstr "Error en guardar confirmació de l'adreça."
+msgstr "S'ha produït un error en desar la confirmació de l'adreça."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-"S'han enviat instruccions per a recuperar la teva contrasenya a l'adreça de "
+"S'han enviat instruccions per recuperar la vostra contrasenya a l'adreça de "
"correu electrònic registrada."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Restabliment de contrasenya inesperat."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "La contrasenya ha de tenir 6 o més caràcters."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "La contrasenya i la confirmació no coincideixen."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Error en configurar l'usuari."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nova contrasenya guardada correctament. Has iniciat una sessió."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Ho sentim, però només la gent convidada pot registrar-s'hi."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "El codi d'invitació no és vàlid."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registre satisfactori"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registre"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registre no permès."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "No pots registrar-te si no estàs d'acord amb la llicència."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "L'adreça de correu electrònic ja existeix."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
-msgstr "Nom d'usuari o contrasenya invàlids."
+msgstr "El nom d'usuari o la contrasenya no són vàlids."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Amb aquest formulari, podeu crear un compte nou. Podeu enviar avisos i "
"enllaçar a amics i col·legues. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 lletres en minúscula o números, sense puntuacions ni espais. Requerit."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 o més caràcters. Requerit."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Igual a la contrasenya de dalt. Requerit."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Correu electrònic"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-"Utilitzat només per a actualitzacions, anuncis i recuperació de contrasenyes"
+"Utilitzat només per a actualitzacions, anuncis i recuperació de contrasenya"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
-msgstr "Nom llarg, preferiblement el teu nom \"real\""
+msgstr "Nom llarg, preferiblement el vostre nom «real»"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "El meu text i els meus fitxers estan disponibles sota "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Entenc que el contingut i les dades de %1$s són privades i confidencials."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Atribució 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "El meu text i els meus fitxers són copyright de %1$s."
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "El meu text i els meus fitxers es troben sota el meu propi copyright."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Tots els drets reservats."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-"excepte les següents dades privades: contrasenya, adreça de correu "
-"electrònic, adreça de missatgeria instantània, número de telèfon."
+"El meu text i fitxers es troben disponibles sota %s, excepte pel que fa a "
+"les dades privades: contrasenya, adreça de correu electrònic, adreça de "
+"missatgeria instantània i número de telèfon."
-#: actions/register.php:538
-#, fuzzy, php-format
+#: actions/register.php:583
+#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
"want to...\n"
@@ -3202,20 +3419,22 @@ msgid ""
"\n"
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-"Felicitats, %s! I benvingut/da a %%%%site.name%%%%. Des d'aquí, podries...\n"
+"Enhorabona, %1$s! Us donem la benvinguda a %%%%site.name%%%%. A partir "
+"d'ara, podríeu voler...\n"
"\n"
-"* Anar al teu [teu perfil](%s) i publicar el teu primer missatge.\n"
-"* Afegir una [direcció Jabber/GTalk](%%%%action.imsettings%%%%) i així poder "
-"publicar les notificacions a través de missatgeria instantània.\n"
-"* [Buscar gent](%%%%action.peoplesearch%%%%) que puguis conèixer o que "
-"comparteixi els teus interessos. \n"
-"* Actualitzar les [preferències del teu perfil](%%%%action.profilesettings%%%"
-"%) per explicar als demés més sobre tu. * Llegir els [documents de la xarxa]"
-"(%%%%doc.help%%%%) per conèixer les característiques del nostre servei. \n"
+"* Anar al [vostre perfil](%2%s) i enviar el vostre primer missatge.\n"
+"* Afegir una [adreça de Jabber/GTalk](%%%%action.imsettings%%%%) i així "
+"poder enviar avisos a través de missatgeria instantània.\n"
+"* [Cercar gent](%%%%action.peoplesearch%%%%) que pugueu conèixer o que "
+"comparteixi els vostres interessos. \n"
+"* Actualitzar les [preferències del vostre perfil](%%%%action.profilesettings"
+"%%%%) per incloure-hi informació personal. \n"
+"* Consultar els [documents de la xarxa](%%%%doc.help%%%%) per tal de "
+"conèixer les característiques del servei. \n"
"\n"
-"Gràcies per registrar-te i esperem que gaudeixis d'aquest servei."
+"Gràcies per registrar-vos-hi i esperem que en gaudiu."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3230,10 +3449,10 @@ msgid ""
"register%%) a new account. If you already have an account on a [compatible "
"microblogging site](%%doc.openmublog%%), enter your profile URL below."
msgstr ""
-"Per a subscriure't, pots [iniciar una sessió](%%action.login%%), o "
-"[registrar](%%action.register%%) un nou compte. Si ja tens un en un [servei "
-"de microblogging compatible](%%doc.openmublog%%), escriu l'URL del teu "
-"perfil a sota."
+"Per subscriure-us, podeu [iniciar una sessió](%%action.login%%), o "
+"[registrar-hi](%%action.register%%) un nou compte. Si ja en teniu un en un "
+"[servei de microblogging compatible](%%doc.openmublog%%), escriviu l'URL del "
+"vostre perfil a continuació."
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
@@ -3260,50 +3479,45 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL del teu perfil en un altre servei de microblogging compatible"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
-msgstr "Subscriure's"
+msgstr "Subscriu-m'hi"
#: actions/remotesubscribe.php:159
msgid "Invalid profile URL (bad format)"
msgstr "L'URL del perfil és invàlid (format incorrecte)"
#: actions/remotesubscribe.php:168
-#, fuzzy
msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
-msgstr "URL de perfil no vàlid (cap document YADIS)."
+msgstr ""
+"L'URL del perfil no és vàlid (no és un document YADIS o no s'ha definit un "
+"XRDS vàlid)."
#: actions/remotesubscribe.php:176
-#, fuzzy
msgid "That’s a local profile! Login to subscribe."
-msgstr "Aquest és un perfil local! Entra per subscriure-t'hi."
+msgstr "Aquest és un perfil local! Inicieu una sessió per subscriure-us-hi."
#: actions/remotesubscribe.php:183
-#, fuzzy
msgid "Couldn’t get a request token."
-msgstr "No s'ha pogut obtenir un senyal de petició."
+msgstr "No s'ha pogut obtenir un testimoni de sol·licitud."
#: actions/repeat.php:57
-#, fuzzy
msgid "Only logged-in users can repeat notices."
-msgstr "Només l'usuari pot llegir les seves safates de correu."
+msgstr "Només els usuaris que han iniciat una sessió poden enviar avisos."
#: actions/repeat.php:64 actions/repeat.php:71
-#, fuzzy
msgid "No notice specified."
-msgstr "No s'ha especificat perfil."
+msgstr "No s'ha especificat cap avís."
#: actions/repeat.php:76
-#, fuzzy
msgid "You can't repeat your own notice."
-msgstr "No pots registrar-te si no estàs d'acord amb la llicència."
+msgstr "No podeu repetir el vostre propi avís."
#: actions/repeat.php:90
-#, fuzzy
msgid "You already repeated that notice."
-msgstr "Ja heu blocat l'usuari."
+msgstr "Ja havíeu repetit l'avís."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repetit"
@@ -3318,33 +3532,33 @@ msgid "Replies to %s"
msgstr "Respostes a %s"
#: actions/replies.php:128
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s, page %2$d"
-msgstr "Respostes a %1$s el %2$s!"
+msgstr "Respostes a %1$s, pàgina %2$d"
#: actions/replies.php:145
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 1.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal de respostes de %s (RSS 1.0)"
#: actions/replies.php:152
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 2.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal de respostes de %s (RSS 2.0)"
#: actions/replies.php:159
#, php-format
msgid "Replies feed for %s (Atom)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal de respostes de %s (Atom)"
#: actions/replies.php:199
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
-"Aquesta és la línia temporal de %s i amics, però ningú hi ha enviat res "
-"encara."
+"Aquesta és la línia temporal que mostra les respostes a %1$s, però %2$s "
+"encara no ha rebut cap avís a la seva atenció."
#: actions/replies.php:204
#, php-format
@@ -3352,13 +3566,17 @@ msgid ""
"You can engage other users in a conversation, subscribe to more people or "
"[join groups](%%action.groups%%)."
msgstr ""
+"Podeu animar altres usuaris a una conversa, subscriviu-vos a més gent o "
+"[uniu-vos a grups](%%action.groups%%)."
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
+"Podeu provar d'[avisar %1$s](../%2$s) o [enviar quelcom per cridar-li "
+"l'atenció](%%%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3366,40 +3584,34 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Respostes a %1$s el %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "No podeu silenciar els usuaris d'aquest lloc."
+msgstr "No podeu revocar els rols d'usuari en aquest lloc."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Usuari sense perfil coincident"
+msgstr "L'usuari no té aquest rol."
-#: actions/rsd.php:146 actions/version.php:157
-#, fuzzy
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
-msgstr "S'ha suprimit l'estat."
+msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65
-#, fuzzy
msgid "You cannot sandbox users on this site."
-msgstr "No pots enviar un missatge a aquest usuari."
+msgstr "No podeu posar els usuaris en un entorn de prova en aquest lloc."
#: actions/sandbox.php:72
-#, fuzzy
msgid "User is already sandboxed."
-msgstr "Un usuari t'ha bloquejat."
+msgstr "L'usuari ja es troba en un entorn de proves."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessions"
#: actions/sessionsadminpanel.php:65
-#, fuzzy
msgid "Session settings for this StatusNet site."
-msgstr "Paràmetres de disseny d'aquest lloc StatusNet."
+msgstr "Paràmetres de sessió d'aquest lloc StatusNet."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3407,7 +3619,7 @@ msgstr "Gestiona les sessions"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
-msgstr ""
+msgstr "Si cal gestionar les sessions nosaltres mateixos."
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
@@ -3423,92 +3635,94 @@ msgid "Save site settings"
msgstr "Desa els paràmetres del lloc"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "Has d'haver entrat per a poder marxar d'un grup."
+msgstr "Heu d'haver iniciat una sessió per visualitzar una aplicació."
#: actions/showapplication.php:157
-#, fuzzy
msgid "Application profile"
-msgstr "Avís sense perfil"
+msgstr "Perfil de l'aplicació"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
-msgstr ""
+msgstr "Icona"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nom"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
-#, fuzzy
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
-msgstr "Paginació"
+msgstr "Organització"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Descripció"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Estadístiques"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "Creat per %1$s - %2$s accés per defecte - %3$d usuaris"
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "Accions d'aplicació"
#: actions/showapplication.php:236
msgid "Reset key & secret"
-msgstr ""
+msgstr "Reinicialitza la clau i la secreta"
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Informació de l'aplicació"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Clau del consumidor"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Secreta del consumidor"
#: actions/showapplication.php:273
msgid "Request token URL"
-msgstr ""
+msgstr "Sol·licita l'URL del testimoni"
#: actions/showapplication.php:278
msgid "Access token URL"
-msgstr ""
+msgstr "Accedeix a l'URL del testimoni"
#: actions/showapplication.php:283
-#, fuzzy
msgid "Authorize URL"
-msgstr "Autoria"
+msgstr "Autoritza l'URL"
#: actions/showapplication.php:288
msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method."
msgstr ""
+"Nota: Les signatures HMAC-SHA1 són vàlides; però no es permet el mètode de "
+"signatures en text net."
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "N'estàs segur que vols eliminar aquesta notificació?"
+msgstr ""
+"Esteu segur que voleu reinicialitzar la clau del consumidor i la secreta?"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "%s's notes favorites"
+msgstr "Avisos preferits de %1$s, pàgina %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3517,38 +3731,45 @@ msgstr "No s'han pogut recuperar els avisos preferits."
#: actions/showfavorites.php:171
#, php-format
msgid "Feed for favorites of %s (RSS 1.0)"
-msgstr "Feed per a amics de %s"
+msgstr "Canal dels preferits de %s (RSS 1.0)"
#: actions/showfavorites.php:178
#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr "Feed per a amics de %s"
+msgstr "Canal dels preferits de %s (RSS 2.0)"
#: actions/showfavorites.php:185
#, php-format
msgid "Feed for favorites of %s (Atom)"
-msgstr "Feed per a amics de %s"
+msgstr "Canal dels preferits de %s (Atom)"
#: actions/showfavorites.php:206
msgid ""
"You haven't chosen any favorite notices yet. Click the fave button on "
"notices you like to bookmark them for later or shed a spotlight on them."
msgstr ""
+"No heu triat cap avís preferit encara. Feu clic al botó de preferit dels "
+"avisos que us agraden per arxivar-los per a més endavant i fer-los conèixer."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
+"%s no ha afegit cap avís als seus preferits encara. Envieu quelcom "
+"interessant que pugui afegir-hi."
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%s no ha afegit cap avís als seus preferits encara. Per què no [registreu un "
+"compte](%%%%action.register%%%%) i llavors envieu quelcom interessant que "
+"pugui afegir-hi."
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3560,71 +3781,71 @@ msgid "%s group"
msgstr "%s grup"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "%s membre/s en el grup, pàgina %d"
+msgstr "grup %1$s, pàgina %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Perfil del grup"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Avisos"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Àlies"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Accions del grup"
-#: actions/showgroup.php:337
-#, fuzzy, php-format
+#: actions/showgroup.php:338
+#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr "Feed d'avisos del grup %s"
+msgstr "Canal d'avisos del grup %s (RSS 1.0)"
-#: actions/showgroup.php:343
-#, fuzzy, php-format
+#: actions/showgroup.php:344
+#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr "Feed d'avisos del grup %s"
+msgstr "Canal d'avisos del grup %s (RSS 2.0)"
-#: actions/showgroup.php:349
-#, fuzzy, php-format
+#: actions/showgroup.php:350
+#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr "Feed d'avisos del grup %s"
+msgstr "Canal d'avisos del grup %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Safata de sortida per %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membres"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Cap)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Tots els membres"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "S'ha creat"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3633,9 +3854,15 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** és un grup d'usuaris a %%%%site.name%%%%, un servei de [microblogging]"
+"(http://ca.wikipedia.org/wiki/Microblogging) basat en l'eina lliure "
+"[StatusNet](http://status.net/). Els seus membres comparteixen missatges "
+"curts sobre llur vida i interessos. [Uniu-vos-hi ara](%%%%action.register%%%"
+"%) per formar part del grup i molt més! ([Més informació...](%%%%doc.help%%%"
+"%))"
-#: actions/showgroup.php:463
-#, fuzzy, php-format
+#: actions/showgroup.php:461
+#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
@@ -3643,9 +3870,11 @@ msgid ""
"their life and interests. "
msgstr ""
"**%s** és un grup d'usuaris a %%%%site.name%%%%, un servei de [microblogging]"
-"(http://ca.wikipedia.org/wiki/Microblogging)"
+"(http://ca.wikipedia.org/wiki/Microblogging) basat en l'eina lliure "
+"[StatusNet](http://status.net/). Els seus membre comparteixen missatges "
+"curts sobre llur vida i interessos. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administradors"
@@ -3668,64 +3897,66 @@ msgid "Message from %1$s on %2$s"
msgstr "Missatge de %1$s a %2$s"
#: actions/shownotice.php:90
-#, fuzzy
msgid "Notice deleted."
-msgstr "Notificació publicada"
+msgstr "S'ha eliminat l'avís."
#: actions/showstream.php:73
-#, fuzzy, php-format
+#, php-format
msgid " tagged %s"
-msgstr "Aviso etiquetats amb %s"
+msgstr " etiquetats amb %s"
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "%s perfils blocats, pàgina %d"
+msgstr "%1$s, pàgina %2$d"
#: actions/showstream.php:122
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr "Feed d'avisos del grup %s"
+msgstr "Canal d'avisos de %1$s etiquetats amb %2$s (RSS 1.0)"
#: actions/showstream.php:129
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (RSS 1.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de %s (RSS 1.0)"
#: actions/showstream.php:136
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (RSS 2.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de %s (RSS 2.0)"
#: actions/showstream.php:143
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (Atom)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de %s (Atom)"
#: actions/showstream.php:148
-#, fuzzy, php-format
+#, php-format
msgid "FOAF for %s"
-msgstr "Safata de sortida per %s"
+msgstr "FOAF de %s"
#: actions/showstream.php:200
-#, fuzzy, php-format
+#, php-format
msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
msgstr ""
-"Aquesta és la línia temporal de %s i amics, però ningú hi ha enviat res "
-"encara."
+"Aquesta és la línia temporal de %1$s, però %2$s no hi ha enviat res encara."
#: actions/showstream.php:205
msgid ""
"Seen anything interesting recently? You haven't posted any notices yet, now "
"would be a good time to start :)"
msgstr ""
+"Heu vist res interessant recentment? No heu enviat cap avís encara, ara "
+"podria ser un bon moment per començar :)"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
+"Podeu provar d'avisar %1$s o [enviar quelcom per cridar-li l'atenció](%%%%"
+"action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3735,16 +3966,23 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** té un compte a %%%%site.name%%%%, un servei de [microblogging](http://"
+"ca.wikipedia.org/wiki/Microblogging) basat en l'eina lliure [StatusNet]"
+"(http://status.net/). Els seus membres comparteixen missatges curts sobre "
+"llur vida i interessos. [Uniu-vos-hi ara](%%%%action.register%%%%) per poder "
+"seguir els avisos de **%s** i molt més! ([Més informació...](%%%%doc.help%%%"
+"%))"
#: actions/showstream.php:248
-#, fuzzy, php-format
+#, php-format
msgid ""
"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
"**%s** té un compte a %%%%site.name%%%%, un servei de [microblogging](http://"
-"ca.wikipedia.org/wiki/Microblogging) "
+"ca.wikipedia.org/wiki/Microblogging) basat en l'eina lliure [StatusNet]"
+"(http://status.net/). "
#: actions/showstream.php:305
#, php-format
@@ -3760,31 +3998,29 @@ msgid "User is already silenced."
msgstr "L'usuari ja està silenciat."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Paràmetres bàsic d'aquest lloc basat en l'StatusNet."
+msgstr "Paràmetres bàsics d'aquest lloc basat en l'StatusNet."
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
msgstr "El nom del lloc ha de tenir una longitud superior a zero."
#: actions/siteadminpanel.php:141
-#, fuzzy
msgid "You must have a valid contact email address."
-msgstr "Heu de tenir una adreça electrònica de contacte vàlida"
+msgstr "Heu de tenir una adreça electrònica de contacte vàlida."
#: actions/siteadminpanel.php:159
-#, fuzzy, php-format
+#, php-format
msgid "Unknown language \"%s\"."
-msgstr "Llengua desconeguda «%s»"
+msgstr "Llengua desconeguda «%s»."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr ""
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "El límit de text mínim és 0 (sense cap límit)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr ""
+msgid "Dupe limit must be one or more seconds."
+msgstr "El límit de duplicats ha de ser d'un o més segons."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3800,7 +4036,7 @@ msgstr "El nom del vostre lloc, com ara «El microblog de l'empresa»"
#: actions/siteadminpanel.php:229
msgid "Brought by"
-msgstr ""
+msgstr "Funciona gràcies a"
#: actions/siteadminpanel.php:230
msgid "Text used for credits link in footer of each page"
@@ -3808,11 +4044,11 @@ msgstr "El text que s'utilitza a l'enllaç dels crèdits al peu de cada pàgina"
#: actions/siteadminpanel.php:234
msgid "Brought by URL"
-msgstr ""
+msgstr "URL de «Funciona gràcies a»"
#: actions/siteadminpanel.php:235
msgid "URL used for credits link in footer of each page"
-msgstr ""
+msgstr "L'URL que s'utilitza en els enllaços de crèdits al peu de cada pàgina"
#: actions/siteadminpanel.php:239
msgid "Contact email address for your site"
@@ -3831,13 +4067,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Fus horari per defecte del lloc; normalment UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Llengua per defecte del lloc"
+msgstr "Llengua per defecte"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Llengua del lloc quan la detecció automàtica des de la configuració del "
+"navegador no està disponible"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3849,7 +4086,7 @@ msgstr "Límits del text"
#: actions/siteadminpanel.php:274
msgid "Maximum number of characters for notices."
-msgstr ""
+msgstr "Nombre màxim de caràcters dels avisos."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
@@ -3862,167 +4099,215 @@ msgstr ""
"de nou."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
msgstr "Avís del lloc"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nou missatge"
+msgstr "Edita el missatge de tot el lloc"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "No s'ha pogut guardar la teva configuració de Twitter!"
+msgstr "No s'ha pogut desar l'avís del lloc."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "La mida màxima per als avisos de tot el lloc és de 255 caràcters."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Avís del lloc"
+msgstr "Text de l'avís del lloc"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "Text d'avís de tot el lloc (màxim 255 caràcters, es permet l'HTML)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Avís del lloc"
+msgstr "Desa l'avís del lloc"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Paràmetres de l'SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-"Pots rebre missatges SMS a través del teu coreu electrònic des de %%site.name"
-"%%."
+"Podeu rebre missatges SMS a través del vostre correu electrònic des de %%"
+"site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "L'SMS no és disponible."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Adreça SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Número de telèfon actualment confirmat i activat per SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
-msgstr "Esperant confirmació per aquest número de telèfon."
+msgstr "S'està esperant la confirmació d'aquest número de telèfon."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Codi de confirmació"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Escriu el codi que has rebut en el teu telèfon mòbil."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirma"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Número de telèfon per als SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Número de telèfon, no puntuació ni espais, en l'àrea del codi"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferències de l'SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-"Enviar-me avisos a través de SMS; puc entendre que això repercutirà en una "
+"Envia'm avisos a través de l'SMS; puc entendre que això repercutirà en una "
"exorbitant càrrega del meu transport."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "S'han desat les preferències de l'SMS."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "No hi ha cap número de telèfon."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "No s'ha sel·leccionat cap transport."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
-msgstr "Aquest ja és el teu número de telèfon."
+msgstr "Aquest ja és el vostre número de telèfon."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Aquest número de telèfon pertany a un altre usuari."
-#: actions/smssettings.php:347
-#, fuzzy
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-"S'ha enviat un codi de confirmació al número de telèfon has afegit. Revisa "
-"la teva safata d'entrada (i la carpeta de spam!) per veure aquest codi i les "
-"instruccions per utilitzar-lo."
+"S'ha enviat un codi de confirmació al número de telèfon que heu afegit. "
+"Comproveu el codi i instruccions del vostre telèfon per saber com fer-lo "
+"servir."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Aquest és un número de confirmació incorrecte."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "La confirmació d'SMS s'ha cancel·lat."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Aquest no és el teu número de telèfon."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "S'ha eliminat el número de telèfon de l'SMS."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Transport mòbil"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Selecciona un transport"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-"Capacitat per al teu telèfon mòbil. Si vostè coneix una companyia que "
-"accepti SMS a través del correu electrònic, però no està a la llista, "
-"envia'ns un correu electrònic per fer-nos-ho saber %s."
+"Capacitat per al vostre telèfon mòbil. Si coneixeu una companyia que accepti "
+"SMS a través del correu electrònic, però no es troba a la llista, envieu-nos "
+"un missatge de correu per fer-nos-ho saber %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
-msgstr "No hi ha cap codi entrat"
+msgstr "No s'ha introduït cap codi"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Instantànies"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Canvia la configuració del lloc"
+msgstr "Gestiona la configuració de les instantànies"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
-msgstr ""
+msgstr "El valor d'execució d'instantànies no és vàlid."
#: actions/snapshotadminpanel.php:133
msgid "Snapshot frequency must be a number."
-msgstr ""
+msgstr "La freqüència de les instantànies ha de ser un nombre."
#: actions/snapshotadminpanel.php:144
msgid "Invalid snapshot report URL."
-msgstr ""
+msgstr "L'URL d'informe d'instantànies no és vàlid."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr ""
+msgid "Randomly during web hit"
+msgstr "A l'atzar durant les sol·licituds web"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
@@ -4034,7 +4319,7 @@ msgstr "Instantànies de dades"
#: actions/snapshotadminpanel.php:208
msgid "When to send statistical data to status.net servers"
-msgstr ""
+msgstr "Quan enviar dades estadístiques als servidors de l'status.net"
#: actions/snapshotadminpanel.php:217
msgid "Frequency"
@@ -4042,43 +4327,40 @@ msgstr "Freqüència"
#: actions/snapshotadminpanel.php:218
msgid "Snapshots will be sent once every N web hits"
-msgstr ""
+msgstr "Les instantànies s'enviaran una vegada cada N sol·licituds web"
#: actions/snapshotadminpanel.php:226
msgid "Report URL"
-msgstr ""
+msgstr "Informa de l'URL"
#: actions/snapshotadminpanel.php:227
msgid "Snapshots will be sent to this URL"
msgstr "Les instantànies s'enviaran a aquest URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Desa els paràmetres del lloc"
+msgstr "Desa els paràmetres de les instantànies"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "No estàs subscrit a aquest perfil."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "No s'ha pogut guardar la subscripció."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "Aquesta acció només accepta sol·licituds POST."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "No existeix el fitxer."
+msgstr "No existeix el perfil."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "No estàs subscrit a aquest perfil."
+msgstr "No podeu subscriure-us a un perfil remot OMB 0.1 amb aquesta acció."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4090,9 +4372,9 @@ msgid "%s subscribers"
msgstr "%s subscriptors"
#: actions/subscribers.php:52
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscribers, page %2$d"
-msgstr "%s subscriptors, pàgina %d"
+msgstr "%1$s subscriptors, pàgina %2$d"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
@@ -4153,56 +4435,61 @@ msgid ""
"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
"automatically subscribe to people you already follow there."
msgstr ""
+"No esteu escoltant els avisos de ningú ara mateix, proveu de subscriure-us a "
+"gent que coneixeu. Proveu de [cercar gent](%%action.peoplesearch%%), trobar "
+"membres de grups en què esteu interessats i en els nostres [usuaris "
+"destacats](%%action.featured%%). Si sou un [usuari del Twitter](%%action."
+"twittersettings%%), podeu subscriure-us automàticament a gent que ja seguiu "
+"allà."
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
msgstr "%s no escolta a ningú."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
#: actions/tag.php:69
-#, fuzzy, php-format
+#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr "Usuaris que s'han etiquetat %s - pàgina %d"
+msgstr "Avisos etiquetats amb %1$s, pàgina %2$d"
#: actions/tag.php:87
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (RSS 1.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de l'etiqueta %s (RSS 1.0)"
#: actions/tag.php:93
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (RSS 2.0)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de l'etiqueta %s (RSS 2.0)"
#: actions/tag.php:99
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (Atom)"
-msgstr "Feed d'avisos de %s"
+msgstr "Canal d'avisos de l'etiqueta %s (Atom)"
#: actions/tagother.php:39
-#, fuzzy
msgid "No ID argument."
-msgstr "No argument de la id."
+msgstr "No hi ha cap argument ID."
#: actions/tagother.php:65
#, php-format
msgid "Tag %s"
msgstr "Etiqueta %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Perfil de l'usuari"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4215,15 +4502,15 @@ msgid ""
"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
"separated"
msgstr ""
-"Etiquetes per aquest usuari (lletres, números,, -, ., i _), comes o separat "
-"per espais"
+"Etiquetes d'aquest usuari (lletres, nombres,, -, ., i _), comes o separades "
+"amb espais"
#: actions/tagother.php:193
msgid ""
"You can only tag people you are subscribed to or who are subscribed to you."
msgstr ""
-"Només pots etiquetar gent a la que estiguis subscrit o que s'hagin subscrit "
-"a tu."
+"Només podeu etiquetar gent a la qual estigueu subscrit o que us hagin "
+"subscrit."
#: actions/tagother.php:200
msgid "Could not save tags."
@@ -4232,33 +4519,28 @@ msgstr "No s'han pogut guardar les etiquetes."
#: actions/tagother.php:236
msgid "Use this form to add tags to your subscribers or subscriptions."
msgstr ""
-"Utilitza aquest formulari per afegir etiquetes als teus subscriptors i "
+"Utilitzeu aquest formulari per afegir etiquetes als vostres subscriptors i "
"subscripcions."
#: actions/tagrss.php:35
msgid "No such tag."
msgstr "No existeix aquesta etiqueta."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Mètode API en construcció."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "No heu blocat l'usuari."
#: actions/unsandbox.php:72
-#, fuzzy
msgid "User is not sandboxed."
-msgstr "Un usuari t'ha bloquejat."
+msgstr "L'usuari no està a l'entorn de proves."
#: actions/unsilence.php:72
msgid "User is not silenced."
msgstr "L'usuari no està silenciat."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "No id en el perfil sol·licitat."
+msgid "No profile ID in request."
+msgstr "No hi ha cap identificador del perfil en la sol·licitud."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4269,32 +4551,35 @@ msgstr "No subscrit"
msgid ""
"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
+"La llicència del flux de qui escolteu, «%1$s», no és compatible amb la "
+"llicència del lloc, «%2$s»."
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Usuari"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
-msgstr ""
+msgstr "Paràmetres d'usuari d'aquest lloc StatusNet."
#: actions/useradminpanel.php:149
msgid "Invalid bio limit. Must be numeric."
-msgstr ""
+msgstr "El límit de la biografia no és vàlid. Cal que sigui numèric."
#: actions/useradminpanel.php:155
msgid "Invalid welcome text. Max length is 255 characters."
msgstr ""
+"El text de benvinguda no és vàlid. La longitud màxima és de 255 caràcters."
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
-msgstr ""
+msgstr "La subscripció per defecte no és vàlida: «%1$s» no és cap usuari."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Perfil"
@@ -4317,7 +4602,7 @@ msgstr "Benvinguda als usuaris nous"
#: actions/useradminpanel.php:236
msgid "Welcome text for new users (Max 255 chars)."
-msgstr ""
+msgstr "Text de benvinguda per a nous usuaris (màx. 255 caràcters)."
#: actions/useradminpanel.php:241
msgid "Default subscription"
@@ -4337,24 +4622,23 @@ msgstr "S'han habilitat les invitacions"
#: actions/useradminpanel.php:258
msgid "Whether to allow users to invite new users."
-msgstr ""
+msgstr "Si es permet als usuaris invitar-ne de nous."
#: actions/userauthorization.php:105
msgid "Authorize subscription"
-msgstr "Autoritzar subscripció"
+msgstr "Autoritza la subscripció"
#: actions/userauthorization.php:110
-#, fuzzy
msgid ""
"Please check these details to make sure that you want to subscribe to this "
"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
"click “Rejectâ€."
msgstr ""
-"Si us plau, revisa aquestes dades per a estar segur que desitges "
-"subscriure't als avisos d'aquest usuari. Si no has demanat subscriure't als "
-"avisos de ningú, clica \"Cancel·lar\"."
+"Si us plau, reviseu aquests detalls per assegurar-vos que voleu subscriure-"
+"us als avisos d'aquest usuari. Si no heu demanat subscriure-us als avisos de "
+"ningú, feu clic a «Rebutja»."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Llicència"
@@ -4365,7 +4649,7 @@ msgstr "Accepta"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr "Subscriure's a aquest usuari"
+msgstr "Subscriu-me a aquest usuari"
#: actions/userauthorization.php:219
msgid "Reject"
@@ -4377,71 +4661,70 @@ msgstr "Rebutja la subscripció"
#: actions/userauthorization.php:232
msgid "No authorization request!"
-msgstr "Cap petició d'autorització!"
+msgstr "No és una sol·licitud d'autorització!"
#: actions/userauthorization.php:254
msgid "Subscription authorized"
msgstr "Subscripció autoritzada"
#: actions/userauthorization.php:256
-#, fuzzy
msgid ""
"The subscription has been authorized, but no callback URL was passed. Check "
"with the site’s instructions for details on how to authorize the "
"subscription. Your subscription token is:"
msgstr ""
-"S'ha autoritzat la subscripció, però no s'ha enviat un URL de retorn. "
-"Llegeix de nou les instruccions per a saber com autoritzar la subscripció. "
-"El teu identificador de subscripció és:"
+"S'ha autoritzat la subscripció, però no s'ha enviat cap URL de la crida de "
+"retorn. Reviseu les instruccions del lloc per tal de tenir més detalls de "
+"com autoritzar la subscripció. El vostre testimoni de subscripció és:"
#: actions/userauthorization.php:266
msgid "Subscription rejected"
msgstr "Subscripció rebutjada"
#: actions/userauthorization.php:268
-#, fuzzy
msgid ""
"The subscription has been rejected, but no callback URL was passed. Check "
"with the site’s instructions for details on how to fully reject the "
"subscription."
msgstr ""
-"S'ha rebutjat la subscripció, però no s'ha enviat un URL de retorn. Llegeix "
-"de nou les instruccions per a saber com rebutjar la subscripció completament."
+"S'ha rebutjat la subscripció, però no s'ha enviat cap URL de la crida de "
+"retorn. Reviseu les instruccions del lloc per tal de tenir més detalls de "
+"com rebutjar la subscripció completament."
#: actions/userauthorization.php:303
#, php-format
msgid "Listener URI ‘%s’ not found here."
-msgstr ""
+msgstr "No s'hi ha trobat l'URI de qui us escolta, «%s»."
#: actions/userauthorization.php:308
#, php-format
msgid "Listenee URI ‘%s’ is too long."
-msgstr ""
+msgstr "L'URI de qui escolteu, «%s», és massa llarga."
#: actions/userauthorization.php:314
#, php-format
msgid "Listenee URI ‘%s’ is a local user."
-msgstr ""
+msgstr "L'URI de qui escolteu, «%s», és un usuari local."
#: actions/userauthorization.php:329
#, php-format
msgid "Profile URL ‘%s’ is for a local user."
-msgstr ""
+msgstr "L'URL del perfil «%s» és només per a un usuari local."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "L'URL de l'avatar «%s» no és vàlid."
#: actions/userauthorization.php:350
-#, fuzzy, php-format
+#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr "No es pot llegir l'URL de l'avatar '%s'"
+msgstr "No es pot llegir l'URL de l'avatar «%s»."
#: actions/userauthorization.php:355
-#, fuzzy, php-format
+#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr "Tipus d'imatge incorrecte per a '%s'"
+msgstr "Tipus d'imatge incorrecta per a l'URL de l'avatar «%s»."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
@@ -4459,473 +4742,597 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Gaudiu de l'entrepà!"
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "%s membre/s en el grup, pàgina %d"
+msgstr "Grups de %1$s, pàgina %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Cerca més grups"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s no és membre de cap grup."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
-msgstr ""
+msgstr "Proveu de [cercar grups](%%action.groupsearch%%) i unir-vos-hi."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Actualitzacions de %1$s a %2$s!"
-#: actions/version.php:73
-#, fuzzy, php-format
+#: actions/version.php:75
+#, php-format
msgid "StatusNet %s"
-msgstr "Estadístiques"
+msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
+"El lloc funciona gràcies a %1$s versió %2$s. Copyright 2008-2010 StatusNet, "
+"Inc. i col·laboradors."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Col·laboració"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
"Software Foundation, either version 3 of the License, or (at your option) "
"any later version. "
msgstr ""
+"L'StatusNet és programari lliure; podeu redistribuir-lo i/o modificar-lo "
+"d'acord amb els termes de la llicència GNU Affero General Public License tal "
+"i com la publica la Free Software Foundation; tant per a la versió 3 de la "
+"llicència, com (a la vostra discreció) per a una versió posterior. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"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. "
msgstr ""
+"Aquest programa es distribueix amb la voluntat que sigui útil, perquè sense "
+"cap mena de garantia; sense tampoc cap garantia implícita respecte a la seva "
+"comercialització o idoneïtat per a cap propòsit en particular. Consulteu la "
+"llicència GNU Affero General Public License per a més detalls. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
+"Hauríeu d'haver rebut una còpia de la llicència GNU Affero General Public "
+"License juntament amb el programa. Si no és així, consulteu %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Connectors"
-#: actions/version.php:196 lib/action.php:767
-#, fuzzy
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
-msgstr "Sessions"
+msgstr "Versió"
-#: actions/version.php:197
-#, fuzzy
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autoria"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
+"Cap fitxer pot ser major de %d bytes i el fitxer que heu enviat era de %d "
+"bytes. Proveu de pujar una versió de mida menor."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
+"Un fitxer d'aquesta mida excediria la vostra quota d'usuari de %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
+"Un fitxer d'aquesta mida excediria la vostra quota mensual de %d bytes."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
#, fuzzy
+msgid "Invalid filename."
+msgstr "La mida no és vàlida."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
-msgstr "Perfil del grup"
+msgstr "No s'ha pogut unir al grup."
-#: classes/Group_member.php:53
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
-msgstr "No s'ha pogut actualitzar el grup."
+msgstr "No s'és part del grup."
-#: classes/Group_member.php:60
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
-msgstr "Perfil del grup"
+msgstr "La sortida del grup ha fallat."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "No s'ha pogut actualitzar el grup."
+msgstr "No s'ha pogut actualitzar el grup local."
-#: classes/Login_token.php:76
-#, fuzzy, php-format
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
msgid "Could not create login token for %s"
-msgstr "No s'han pogut crear els àlies."
+msgstr "No s'ha pogut crear un testimoni d'inici de sessió per a %s"
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
-#: classes/Message.php:45
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Se us ha bandejat enviar missatges directes."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "No s'ha pogut inserir el missatge."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "No s'ha pogut inserir el missatge amb la nova URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Hashtag de l'error de la base de dades:%s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
-#: classes/Notice.php:241
-#, fuzzy
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr ""
+"S'ha produït un error de la base de dades en inserir una etiqueta de "
+"coixinet (%): %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
-msgstr "Problema en guardar l'avís."
+msgstr "S'ha produït un problema en desar l'avís. És massa llarg."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
-msgstr "Problema al guardar la notificació. Usuari desconegut."
+msgstr "S'ha produït un problema en desar l'avís. Usuari desconegut."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-"Masses notificacions massa ràpid; pren un respir i publica de nou en uns "
-"minuts."
+"Massa avisos massa ràpid; pren un respir i publica de nou en uns minuts."
-#: classes/Notice.php:256
-#, fuzzy
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-"Masses notificacions massa ràpid; pren un respir i publica de nou en uns "
-"minuts."
+"Massa missatges duplicats en massa poc temps; preneu un respir i torneu a "
+"enviar en uns minuts."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
-msgstr "Ha estat bandejat de publicar notificacions en aquest lloc."
+msgstr "Ha estat bandejat de publicar avisos en aquest lloc."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
-msgstr "Problema en guardar l'avís."
+msgstr "S'ha produït un problema en desar l'avís."
-#: classes/Notice.php:927
-#, fuzzy
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr "Problema en guardar l'avís."
+msgstr "S'ha produït un problema en desar la safata d'entrada del grup."
-#: classes/Notice.php:1459
-#, fuzzy, php-format
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
msgid "RT @%1$s %2$s"
-msgstr "%1$s (%2$s)"
+msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "L'usuari no té perfil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "No s'ha pogut desar l'avís del lloc."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Se us ha banejat la subscripció."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Ja hi esteu subscrit!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Un usuari t'ha bloquejat."
-#: classes/Subscription.php:157
-#, fuzzy
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
-msgstr "No estàs subscrit!"
+msgstr "No hi esteu subscrit!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
-msgstr "No s'ha pogut eliminar la subscripció."
+msgid "Could not delete self-subscription."
+msgstr "No s'ha pogut eliminar l'autosubscripció."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "No s'ha pogut eliminar la subscripció."
+msgid "Could not delete subscription OMB token."
+msgstr "No s'ha pogut eliminar el testimoni OMB de la subscripció."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "No s'ha pogut eliminar la subscripció."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Us donem la benvinguda a %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "No s'ha pogut crear el grup."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "No s'ha pogut establir la pertinença d'aquest grup."
+msgstr "No es pot definir l'URI del grup."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "No s'ha pogut establir la pertinença d'aquest grup."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "No s'ha pogut guardar la subscripció."
+msgstr "No s'ha pogut desar la informació del grup local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Canvieu els paràmetres del vostre perfil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Puja un avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Canvieu la vostra contrasenya"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Canvieu la gestió del correu"
-#: lib/accountsettingsaction.php:124
-#, fuzzy
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
-msgstr "Perfil de l'usuari"
+msgstr "Dissenyeu el vostre perfil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Altres"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Altres opcions"
-#: lib/action.php:144
-#, fuzzy, php-format
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Altres"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
msgid "%1$s - %2$s"
-msgstr "%1$s (%2$s)"
+msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Pàgina sense titol"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navegació primària del lloc"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Perfil personal i línia temporal dels amics"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Canviar correu electrònic, avatar, contrasenya, perfil"
+msgstr "Canvia l'adreça electrònica, l'avatar, la contrasenya o el perfil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "No s'ha pogut redirigir al servidor: %s"
+msgstr "Connecta als serveis"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Connexió"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Canvia la configuració del lloc"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
-msgstr "Admin"
+msgstr "Administrador"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr "Convidar amics i companys perquè participin a %s"
+msgstr "Convida amics i coneguts perquè participin a %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Convida"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Finalitza la sessió del lloc"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Finalitza la sessió"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Crea un compte"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registre"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Inicia una sessió al lloc"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Inici de sessió"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
-msgstr "Ajuda'm"
+msgstr "Ajuda'm!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Ajuda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Cerca gent o text"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Cerca"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Avís del lloc"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Vistes locals"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
-msgstr "Notificació pàgina"
+msgstr "Avís de pàgina"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navegació del lloc secundària"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ajuda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Quant a"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Preguntes més freqüents"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
-msgstr ""
+msgstr "Termes del servei"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privadesa"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Font"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contacte"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Insígnia"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Llicència del programari StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** és un servei de microblogging de [%%site.broughtby%%**](%%"
"site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** és un servei de microblogging."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4936,491 +5343,560 @@ msgstr ""
"%s, disponible sota la [GNU Affero General Public License](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Llicència de contingut del lloc"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
-msgstr ""
+msgstr "El contingut i les dades de %1$s són privades i confidencials."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
+"El contingut i les dades són copyright de %1$s. Tots els drets reservats."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
+"El contingut i les dades són copyright dels col·laboradors. Tots els drets "
+"reservats."
-#: lib/action.php:847
-msgid "All "
-msgstr "Tot "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "llicència."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Tot el contingut i les dades de %1$s es troben disponibles sota una "
+"llicència %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginació"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Posteriors"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Anteriors"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"S'esperava un element del canal arrel, però se n'ha obtingut tot un document "
+"XML sencer."
-#: lib/activity.php:481
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "No es pot gestionar el contingut remot encara."
+
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "No es pot gestionar el contingut XML incrustat encara."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "No es pot gestionar el contingut Base64 incrustat encara."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "No podeu fer canvis al lloc."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
-#, fuzzy
msgid "Changes to that panel are not allowed."
-msgstr "Registre no permès."
+msgstr "No es permeten canvis a aquell tauler."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
-#, fuzzy
msgid "showForm() not implemented."
-msgstr "Comanda encara no implementada."
+msgstr "El showForm() no està implementat."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
-#, fuzzy
msgid "saveSettings() not implemented."
-msgstr "Comanda encara no implementada."
+msgstr "El saveSettings() no està implementat."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
-#, fuzzy
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
-msgstr "No s'ha pogut guardar la teva configuració de Twitter!"
+msgstr "No s'ha pogut eliminar el paràmetre de disseny."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuració bàsica del lloc"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Lloc"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuració del disseny"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Disseny"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
-#, fuzzy
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr "Configuració dels camins"
+msgstr "Configuració de l'usuari"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Usuari"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
-#, fuzzy
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr "Configuració del disseny"
+msgstr "Configuració de l'accés"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configuració dels camins"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
-#, fuzzy
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
-msgstr "Configuració del disseny"
+msgstr "Configuració de les sessions"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Avís del lloc"
+msgstr "Edita l'avís del lloc"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Configuració dels camins"
+msgstr "Configuració de les instantànies"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
+"El recurs API requereix accés de lectura i d'escriptura, però només en teniu "
+"de lectura."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
-msgstr ""
+msgstr "Edita l'aplicació"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Icona de l'aplicació"
-#: lib/applicationeditform.php:204
-#, fuzzy, php-format
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
msgid "Describe your application in %d characters"
-msgstr "Descriu el grup amb 140 caràcters"
+msgstr "Descriviu la vostra aplicació en %d caràcters"
-#: lib/applicationeditform.php:207
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr "Descriu el grup amb 140 caràcters"
+msgstr "Descriviu la vostra aplicació"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Font"
-
-#: lib/applicationeditform.php:218
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
-msgstr "URL del teu web, blog del grup u tema"
+msgstr "URL de la pàgina d'inici de l'aplicació"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL d'origen"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "Organització responsable de l'aplicació"
-#: lib/applicationeditform.php:230
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr "URL del teu web, blog del grup u tema"
+msgstr "L'URL de la pàgina d'inici de l'organització"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "URL on redirigir-hi després de l'autenticació."
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
-msgstr ""
+msgstr "Navegador"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "Escriptori"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "Tipus d'aplicació, navegador o escriptori"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Només lectura"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Lectura i escriptura"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
+"Accés per defecte per a l'aplicació: només lectura, o lectura i escriptura"
-#: lib/applicationlist.php:154
-#, fuzzy
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancel·la"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "de lectura i d'escriptura"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "només de lectura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprovat: %1$s - accés «%2$s»."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr "Suprimeix"
+msgstr "Revoca"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Adjuncions"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autoria"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Proveïdor"
#: lib/attachmentnoticesection.php:67
msgid "Notices where this attachment appears"
-msgstr ""
+msgstr "Avisos on apareix l'adjunt"
#: lib/attachmenttagcloudsection.php:48
msgid "Tags for this attachment"
msgstr "Etiquetes de l'adjunció"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "El canvi de contrasenya ha fallat"
-#: lib/authenticationplugin.php:235
-#, fuzzy
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
-msgstr "Contrasenya canviada."
+msgstr "No es permet el canvi de contrasenya"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultats de les comandes"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Comanda completada"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Comanda fallida"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Perdona, aquesta comanda no està implementada."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "No existeix cap avís amb aquest identificador."
-#: lib/command.php:88
-#, fuzzy, php-format
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "L'usuari no té última nota"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
msgid "Could not find a user with nickname %s"
-msgstr "No es pot actualitzar l'usuari amb el correu electrònic confirmat"
+msgstr "No s'ha pogut trobar un usuari amb el sobrenom %s"
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "No s'ha pogut trobar a un usuari local amb el sobrenom %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Perdona, aquesta comanda no està implementada."
-#: lib/command.php:92
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
-msgstr ""
+msgstr "No té massa sentit avisar-se a un mateix!"
-#: lib/command.php:99
-#, fuzzy, php-format
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
msgid "Nudge sent to %s"
-msgstr "Reclamació enviada"
+msgstr "S'ha cridat l'atenció a %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
"Subscribers: %2$s\n"
"Notices: %3$s"
msgstr ""
+"Subscripcions: %1$s\n"
+"Subscriptors: %2$s\n"
+"Avisos: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "No hi ha cap perfil amb aquesta id."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "L'usuari no té última nota"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
-msgstr "Nota marcada com a favorita."
+msgstr "L'avís està marcat com a preferit."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Ja sou membre del grup."
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "No s'ha pogut afegir l'usuari %s al grup %s."
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s s'ha pogut afegir al grup %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "No s'ha pogut afegir l'usuari %1$s al grup %2$s."
-#: lib/command.php:275
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "No s'ha pogut eliminar l'usuari %s del grup %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "No s'ha pogut eliminar l'usuari %1$s del grup %2$s."
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s ha abandonat el grup %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nom complet: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Localització: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Pàgina web: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
-msgstr "Sobre tu: %s"
+msgstr "Informació personal: %s"
-#: lib/command.php:349
-#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Missatge massa llarg - màxim és 140 caràcters, tu has enviat %d"
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s és un perfil remot; només podeu enviar missatges directess a usuaris del "
+"mateix servidor."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"El missatge és massa llarg - el màxim és %1$d caràcters, i n'heu enviat %2$d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
-msgstr "Missatge directe per a %s enviat"
+msgstr "Missatge directe a %s enviat"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
-msgstr "Error al enviar el missatge directe."
+msgstr "S'ha produït un error en enviar el missatge directe."
-#: lib/command.php:413
-#, fuzzy
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
-msgstr "No es poden posar en on les notificacions."
+msgstr "No es pot repetir el vostre propi avís"
-#: lib/command.php:418
-#, fuzzy
+#: lib/command.php:519
msgid "Already repeated that notice"
-msgstr "Eliminar aquesta nota"
+msgstr "Ja s'ha repetit l'avís"
-#: lib/command.php:426
-#, fuzzy, php-format
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
msgid "Notice from %s repeated"
-msgstr "Notificació publicada"
+msgstr "S'ha repetit l'avís de %s"
-#: lib/command.php:428
-#, fuzzy
+#: lib/command.php:531
msgid "Error repeating notice."
-msgstr "Problema en guardar l'avís."
+msgstr "S'ha produït un error en repetir l'avís."
-#: lib/command.php:482
-#, fuzzy, php-format
+#: lib/command.php:562
+#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
-msgstr "Missatge massa llarg - màxim és 140 caràcters, tu has enviat %d"
+msgstr "L'avís és massa llarg - el màxim és %d caràcters, i n'heu enviat %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "S'ha enviat la resposta a %s"
-#: lib/command.php:493
-#, fuzzy
+#: lib/command.php:573
msgid "Error saving notice."
-msgstr "Problema en guardar l'avís."
+msgstr "S'ha produït un error en desar l'avís."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
-msgstr "Especifica el nom de l'usuari a que vols subscriure't"
+msgstr "Especifiqueu el nom de l'usuari al qual voleu subscriure-us"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "No existeix aquest usuari."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "No es pot subscriure a perfils de OMB amb ordres."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Subscrit a %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
-msgstr "Especifica el nom de l'usuari del que vols deixar d'estar subscrit"
+msgstr "Especifiqueu el nom de l'usuari de qui voleu cancel·lar la subscripció"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
-msgstr "Has deixat d'estar subscrit a %s"
+msgstr "Heu cancel·lat la subscripció a %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Comanda encara no implementada."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
-msgstr "Notificacions off."
+msgstr "Avisos desactivats."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
-msgstr "No es poden posar en off les notificacions."
+msgstr "No es poden desactivar els avisos."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
-msgstr "Notificacions on."
+msgstr "Avisos activitats."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
-msgstr "No es poden posar en on les notificacions."
+msgstr "No es poden activar els avisos."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
-msgstr ""
+msgstr "L'ordre d'inici de sessió està inhabilitada"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
+"L'enllaç només es pot fer servir una vegada, i només funciona durant 2 "
+"minuts: %s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
-msgstr "Has deixat d'estar subscrit a %s"
+msgstr "S'ha cancel·lat la subscripció de %s"
-#: lib/command.php:709
-#, fuzzy
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
-msgstr "No estàs subscrit a aquest perfil."
+msgstr "No esteu subscrit a ningú."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ja estàs subscrit a aquests usuaris:"
msgstr[1] "Ja estàs subscrit a aquests usuaris:"
-#: lib/command.php:731
-#, fuzzy
+#: lib/command.php:800
msgid "No one is subscribed to you."
-msgstr "No pots subscriure a un altre a tu mateix."
+msgstr "Ningú no us ha subscrit."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "No pots subscriure a un altre a tu mateix."
msgstr[1] "No pots subscriure a un altre a tu mateix."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "No sou membre de cap grup."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Sou un membre d'aquest grup:"
msgstr[1] "Sou un membre d'aquests grups:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5461,30 +5937,68 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
-
-#: lib/common.php:148
+"Ordres:\n"
+"on - activeu els avisos\n"
+"off - desactiveu els avisos\n"
+"help - mostra aquesta ajuda\n"
+"follow <nickname> - se subscriu a l'usuari\n"
+"groups - llista els grups on us heu unit\n"
+"subscriptions - llista la gent que seguiu\n"
+"subscribers - llista la gent que us segueix\n"
+"leave <nickname> - cancel·la la subscripció de l'usuari\n"
+"d <nickname> <text> - missatge directe a l'usuari\n"
+"get <nickname> - s'obté el darrer avís de l'usuari\n"
+"whois <nickname> - s'obté la informació del perfil de l'usuari\n"
+"lose <nickname> - es força l'usuari a deixar de seguir-vos\n"
+"fav <nickname> - afegeix el darrer avís de l'usuari com a «preferit»\n"
+"fav #<notice_id> - afegeix l'avís amb l'id donat com a «preferit»\n"
+"repeat #<notice_id> - repeteix l'avís amb l'id donat\n"
+"repeat <nickname> - repeteix el darrer avís de l'usari\n"
+"reply #<notice_id> - respon l'avís amb l'id donat\n"
+"reply <nickname> - respon el darrer avís de l'usuari\n"
+"join <group> - s'uneix al grup\n"
+"login - s'obté un enllaç per iniciar una sessió des de la interfície web\n"
+"drop <group> - es deixa el grup\n"
+"stats - s'obté el vostre estat\n"
+"stop - el mateix que «off»\n"
+"quit - el mateix que «off»\n"
+"sub <nickname> - el mateix que «follow»\n"
+"unsub <nickname> - el mateix que «leave»\n"
+"last <nickname> - el mateix que «get»\n"
+"on <nickname> - no s'ha implementat encara.\n"
+"off <nickname> - no s'ha implementat encara.\n"
+"nudge <nickname> - es recorda a l'usuari que actualitzi.\n"
+"invite <phone number> - no s'ha implementat encara.\n"
+"track <word> - no s'ha implementat encara.\n"
+"untrack <word> - no s'ha implementat encara.\n"
+"track off - no s'ha implementat encara.\n"
+"untrack all - no s'ha implementat encara.\n"
+"tracks - no s'ha implementat encara.\n"
+"tracking - no s'ha implementat encara.\n"
+
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "No s'ha trobat cap fitxer de configuració. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "S'han cercat fitxers de configuracions en els llocs següents: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
-msgstr "Podeu voler executar l'instal·lador per a corregir-ho."
+msgstr "Podeu voler executar l'instal·lador per corregir-ho."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Vés a l'instal·lador."
#: lib/connectsettingsaction.php:110
msgid "IM"
-msgstr "Missatgeria Instantània"
+msgstr "MI"
#: lib/connectsettingsaction.php:111
msgid "Updates by instant messenger (IM)"
-msgstr "Actualitzacions per Missatgeria Instantània"
+msgstr "Actualitzacions per missatgeria instantània (MI)"
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
@@ -5507,10 +6021,11 @@ msgid "Upload file"
msgstr "Puja un fitxer"
#: lib/designsettings.php:109
-#, fuzzy
msgid ""
"You can upload your personal background image. The maximum file size is 2MB."
-msgstr "Pots pujar el teu avatar personal."
+msgstr ""
+"Podeu pujar la vostra imatge de fons personal. La mida màxima del fitxer és "
+"2MB."
#: lib/designsettings.php:418
msgid "Design defaults restored."
@@ -5518,11 +6033,11 @@ msgstr "S'han restaurat els paràmetres de disseny per defecte."
#: lib/disfavorform.php:114 lib/disfavorform.php:140
msgid "Disfavor this notice"
-msgstr "Deixar de tenir favorita aquesta notificació"
+msgstr "Deixa de tenir com a preferit aquest avís"
#: lib/favorform.php:114 lib/favorform.php:140
msgid "Favor this notice"
-msgstr "Fer favorita aquesta notificació"
+msgstr "Fes preferit aquest avís"
#: lib/favorform.php:140
msgid "Favor"
@@ -5566,7 +6081,7 @@ msgstr "Etiqueta"
#: lib/galleryaction.php:141
msgid "Choose a tag to narrow list"
-msgstr "Elegeix una etiqueta para reduir la llista"
+msgstr "Trieu una etiqueta per escurçar la llista"
#: lib/galleryaction.php:143
msgid "Go"
@@ -5575,31 +6090,31 @@ msgstr "Vés-hi"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Atorga a l'usuari el rol «%s»"
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
-msgstr "URL del teu web, blog del grup u tema"
+msgstr "URL del teu web, blog del grup o de la temàtica"
#: lib/groupeditform.php:168
msgid "Describe the group or topic"
-msgstr "Descriviu el grup o el tema"
+msgstr "Descriviu el grup o la temàtica"
#: lib/groupeditform.php:170
#, php-format
msgid "Describe the group or topic in %d characters"
-msgstr "Descriviu el grup o el tema en %d caràcters"
+msgstr "Descriviu el grup o la temàtica en %d caràcters"
#: lib/groupeditform.php:179
msgid ""
"Location for the group, if any, like \"City, State (or Region), Country\""
msgstr ""
-"Localització del grup, si n'hi ha, com \"Ciutat, Estat (o Regió), País\""
+"Ubicació del grup, si s'hi adiu cap, com ara «ciutat, comarca (o illa), país»"
#: lib/groupeditform.php:187
#, php-format
msgid "Extra nicknames for the group, comma- or space- separated, max %d"
-msgstr ""
+msgstr "Sobrenoms addicionals del grup, separats amb comes o espais, màx. %d"
#: lib/groupnav.php:85
msgid "Group"
@@ -5612,12 +6127,12 @@ msgstr "Blocat"
#: lib/groupnav.php:102
#, php-format
msgid "%s blocked users"
-msgstr "%susuaris blocats"
+msgstr "%s usuaris blocats"
#: lib/groupnav.php:108
#, php-format
msgid "Edit %s group properties"
-msgstr "Editar propietats del grup %s"
+msgstr "Edita les propietats del grup %s"
#: lib/groupnav.php:113
msgid "Logo"
@@ -5626,7 +6141,7 @@ msgstr "Logo"
#: lib/groupnav.php:114
#, php-format
msgid "Add or edit %s logo"
-msgstr "Afegir o editar logo %s"
+msgstr "Afegeix o edita el logo %s"
#: lib/groupnav.php:120
#, php-format
@@ -5644,58 +6159,59 @@ msgstr "Grups amb més entrades"
#: lib/grouptagcloudsection.php:56
#, php-format
msgid "Tags in %s group's notices"
-msgstr "Etiquetes en les notificacions del grup %s"
+msgstr "Etiquetes en els avisos del grup %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Aquesta pàgina no està disponible en un tipus de mèdia que acceptis."
-#: lib/imagefile.php:75
-#, fuzzy, php-format
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Format d'imatge no suportat."
+
+#: lib/imagefile.php:88
+#, php-format
msgid "That file is too big. The maximum file size is %s."
-msgstr "Pots pujar una imatge de logo per al grup."
+msgstr "La mida del fitxer és massa gran, La mida màxima és %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Càrrega parcial."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Error del sistema en pujar el fitxer."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "No és una imatge o és un fitxer corrupte."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Format d'imatge no suportat."
-
#: lib/imagefile.php:122
msgid "Lost our file."
-msgstr "Hem perdut el nostre arxiu."
+msgstr "Hem perdut el nostre fitxer."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tipus de fitxer desconegut"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
-msgstr ""
+msgstr "[%s]"
-#: lib/jabber.php:400
-#, fuzzy, php-format
+#: lib/jabber.php:567
+#, php-format
msgid "Unknown inbox source %d."
-msgstr "Llengua desconeguda «%s»"
+msgstr "Font %d de la safata d'entrada desconeguda."
#: lib/joinform.php:114
msgid "Join"
@@ -5703,7 +6219,7 @@ msgstr "Inici de sessió"
#: lib/leaveform.php:114
msgid "Leave"
-msgstr "Abandonar"
+msgstr "Deixa"
#: lib/logingroupnav.php:80
msgid "Login with a username and password"
@@ -5711,13 +6227,15 @@ msgstr "Accedir amb el nom d'usuari i contrasenya"
#: lib/logingroupnav.php:86
msgid "Sign up for a new account"
-msgstr "Crear nou compte"
+msgstr "Registreu-vos-hi si voleu un compte nou"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmació de l'adreça de correu electrònic"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5733,14 +6251,39 @@ msgid ""
"Thanks for your time, \n"
"%s\n"
msgstr ""
+"Hola, %s.\n"
+"\n"
+"Algú ha introduït aquesta adreça electrònica a %s.\n"
+"\n"
+"Si sou qui ho ha fet i voleu confirmar-hi la vostra entrada, feu servir "
+"l'URL a continuació:\n"
+"\n"
+"\t%s\n"
+"\n"
+"Si nou, simplement ignoreu el missatge.\n"
+"\n"
+"Gràcies pel vostre temps, \n"
+"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s ara està escoltant els teus avisos a %2$s."
-#: lib/mail.php:245
-#, fuzzy, php-format
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Si creieu que el compte s'està fent servir de forma abusiva, podeu blocar-lo "
+"de la llista dels vostres subscriptors i notificar-lo com a brossa als "
+"administradors del lloc a %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
"\n"
@@ -5753,26 +6296,31 @@ msgid ""
"----\n"
"Change your email address or notification options at %8$s\n"
msgstr ""
-"%1$s ara està escoltant els teus avisos a %2$s.\n"
+"%1$s ara està escoltant els vostres avisos a %2$s.\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
+"%4$s%5$s%6$s\n"
"Atentament,\n"
-"%4$s.\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Canvieu la vostra adreça electrònica o les opcions d'avís a %8$s\n"
-#: lib/mail.php:262
-#, fuzzy, php-format
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
msgid "Bio: %s"
-msgstr ""
-"Biografia: %s\n"
-"\n"
+msgstr "Biografia: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nou correu electrònic per publicar a %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5784,30 +6332,40 @@ msgid ""
"Faithfully yours,\n"
"%4$s"
msgstr ""
-"Tens una nova direcció per publicar a %1$s.\n"
+"Teniu una nova adreça per publicar a %1$s.\n"
"\n"
-"Envia un correu electrònic a %2$s per publicar un nou missatge.\n"
+"Envieu un correu electrònic a %2$s per publicar un nou missatge.\n"
"\n"
"Més instruccions per al correu electrònic a %3$s.\n"
"\n"
-"Sincerament teus,\n"
+"Atentament,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s estat"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmació SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: confirmeu-ho si teniu aquest número de telèfon amb aquest codi:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
-msgstr "Has estat reclamat per %s"
+msgstr "%s us ha cridat l'atenció"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5822,13 +6380,25 @@ msgid ""
"With kind regards,\n"
"%4$s\n"
msgstr ""
+"%1$s (%2$s) què tal us trobeu is us convida a publicar algunes notícies.\n"
+"\n"
+"Esperem sentir-vos aviat :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"No responeu aquest missatge; no els hi arribarà.\n"
+"\n"
+"Ben cordialment,\n"
+"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nou missatge privat de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5846,13 +6416,29 @@ msgid ""
"With kind regards,\n"
"%5$s\n"
msgstr ""
+"%1$s (%2$s) us ha enviat un missatge privat:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"Podeu respondre llurs missatges a continuació:\n"
+"\n"
+"%4$s\n"
+"\n"
+"No responeu aquest missatge; no els hi arribarà.\n"
+"\n"
+"Ben cordialment,\n"
+"%5$s\n"
-#: lib/mail.php:568
-#, fuzzy, php-format
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
+#, php-format
msgid "%s (@%s) added your notice as a favorite"
-msgstr "%s ha afegit la teva nota com a favorita"
+msgstr "%s (@%s) ha afegit el vostre avís com a preferit"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5872,13 +6458,42 @@ msgid ""
"Faithfully yours,\n"
"%6$s\n"
msgstr ""
+"%1$s (@%7$s) acaba d'afegir el vostre avís de %2$s com a preferit.\n"
+"\n"
+"L'URL del vostre avís és:\n"
+"\n"
+"%3$s\n"
+"\n"
+"El text del vostre avís és:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Podeu veure la llista dels preferits de %1$s a continuació:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Atentament,\n"
+"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
#, php-format
-msgid "%s (@%s) sent a notice to your attention"
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
msgstr ""
+"La conversa sencera pot llegir-se a continuació:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr "%s (@%s) us ha enviat un avís a la vostra atenció"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5891,7 +6506,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
+"%1$s (@%9$s) acaba d'enviar un avís un avís a la vostra atenció (una "
+"resposta amb @) a %2$s.\n"
+"\n"
+"L'avís és a continuació:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"Hi diu:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$s Podeu respondre'l a continuació:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"Teniu la llista de les respostes amb @ a continuació:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Atentament,\n"
+"%2$s\n"
+"\n"
+"P.S. Podeu desactivar els avisos per correu aquí: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5902,8 +6552,11 @@ msgid ""
"You have no private messages. You can send private message to engage other "
"users in conversation. People can send you messages for your eyes only."
msgstr ""
+"No teniu missatges privats. Podeu enviar un missatge per animar altres "
+"usuaris en la conversa. La gent pot enviar-vos missatges només per als "
+"vostres ulls."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "de"
@@ -5924,27 +6577,33 @@ msgid "Sorry, no incoming email allowed."
msgstr "Ho sentim, no s'hi permet correu d'entrada."
#: lib/mailhandler.php:228
-#, fuzzy, php-format
+#, php-format
msgid "Unsupported message type: %s"
-msgstr "Format d'imatge no suportat."
+msgstr "Tipus de missatge no permès: %s"
#: lib/mediafile.php:98 lib/mediafile.php:123
msgid "There was a database error while saving your file. Please try again."
msgstr ""
+"S'ha produït un error a la base de dades mentre es desava el vostre fitxer. "
+"Torneu-ho a provar."
#: lib/mediafile.php:142
msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
msgstr ""
+"El fitxer pujat excedeix la mida de la directiva upload_max_filesize del php."
+"ini."
#: lib/mediafile.php:147
msgid ""
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
"the HTML form."
msgstr ""
+"El fitxer pujat excedeix la mida de la directiva MAX_FILE_SIZE especificada "
+"en el formulari HTML."
#: lib/mediafile.php:152
msgid "The uploaded file was only partially uploaded."
-msgstr ""
+msgstr "El fitxer pujat només s'ha pujat parcialment."
#: lib/mediafile.php:159
msgid "Missing a temporary folder."
@@ -5952,38 +6611,37 @@ msgstr "Manca una carpeta temporal."
#: lib/mediafile.php:162
msgid "Failed to write file to disk."
-msgstr ""
+msgstr "No s'ha pogut escriure el fitxer al disc."
#: lib/mediafile.php:165
msgid "File upload stopped by extension."
-msgstr ""
+msgstr "L'extensió ha aturat la càrrega del fitxer."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
-msgstr ""
+msgstr "El fitxer excedeix la quota de l'usuari."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
-msgstr ""
+msgstr "No s'ha pogut moure el fitxer al directori de destinació."
-#: lib/mediafile.php:201 lib/mediafile.php:237
-#, fuzzy
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
-msgstr "No s'ha pogut recuperar la conversa pública."
+msgstr "No s'ha pogut determinar el tipus MIME del fitxer."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
-msgstr ""
+msgstr "Proveu d'emprar un altre format %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
-msgstr ""
+msgstr "%s no és un tipus de fitxer permès al servidor."
#: lib/messageform.php:120
msgid "Send a direct notice"
-msgstr "Enviar notificació directa"
+msgstr "Envia un avís directe"
#: lib/messageform.php:146
msgid "To"
@@ -5994,14 +6652,13 @@ msgid "Available characters"
msgstr "Caràcters disponibles"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Envia"
#: lib/noticeform.php:160
msgid "Send a notice"
-msgstr "Enviar notificació"
+msgstr "Envia un avís"
#: lib/noticeform.php:173
#, php-format
@@ -6017,79 +6674,81 @@ msgid "Attach a file"
msgstr "Adjunta un fitxer"
#: lib/noticeform.php:212
-#, fuzzy
msgid "Share my location"
-msgstr "Comparteix la vostra ubicació"
+msgstr "Comparteix la meva ubicació"
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "Comparteix la vostra ubicació"
+msgstr "No comparteixis la meva ubicació"
#: lib/noticeform.php:216
msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please "
"try again later"
msgstr ""
+"Ho sentim, la obtenció de la vostra ubicació geogràfica està trigant més de "
+"l'esperat; torneu-ho a provar més tard"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
-#, fuzzy
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
-msgstr "No"
+msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
-msgstr ""
+msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
-msgstr ""
+msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
-msgstr ""
+msgstr "O"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
-msgstr ""
+msgstr "a"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "en context"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repetit per"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "respondre a aquesta nota"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Respon"
-#: lib/noticelist.php:673
-#, fuzzy
+#: lib/noticelist.php:674
msgid "Notice repeated"
-msgstr "Notificació publicada"
+msgstr "Avís repetit"
#: lib/nudgeform.php:116
msgid "Nudge this user"
-msgstr "Reclamar aquest usuari"
+msgstr "Crida l'atenció a l'usuari"
#: lib/nudgeform.php:128
msgid "Nudge"
-msgstr "Reclamar"
+msgstr "Crida l'atenció"
#: lib/nudgeform.php:128
msgid "Send a nudge to this user"
-msgstr "Enviar una reclamació a aquest usuari"
+msgstr "Crida l'atenció a l'usuari"
#: lib/oauthstore.php:283
msgid "Error inserting new profile"
@@ -6099,14 +6758,17 @@ msgstr "Error en inserir el nou perfil"
msgid "Error inserting avatar"
msgstr "Error en inserir avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Error en actualitzar el perfil remot"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Error en inserir perfil remot"
#: lib/oauthstore.php:345
-#, fuzzy
msgid "Duplicate notice"
-msgstr "Eliminar nota."
+msgstr "Duplica l'avís"
#: lib/oauthstore.php:490
msgid "Couldn't insert new subscription."
@@ -6143,14 +6805,13 @@ msgstr "Els teus missatges enviats"
#: lib/personaltagcloudsection.php:56
#, php-format
msgid "Tags in %s's notices"
-msgstr "Etiquetes en les notificacions de %s's"
+msgstr "Etiquetes en els avisos de %s"
-#: lib/plugin.php:114
-#, fuzzy
+#: lib/plugin.php:115
msgid "Unknown"
-msgstr "Acció desconeguda"
+msgstr "Desconegut"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subscripcions"
@@ -6158,32 +6819,32 @@ msgstr "Subscripcions"
msgid "All subscriptions"
msgstr "Totes les subscripcions"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subscriptors"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Tots els subscriptors"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID de l'usuari"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membre des de"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Mitjana diària"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Tots els grups"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "No argument de la id."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Mètode no implementat"
@@ -6207,33 +6868,38 @@ msgstr "Destacat"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "No hi ha arguments de retorn."
+
#: lib/repeatform.php:107
-#, fuzzy
msgid "Repeat this notice?"
-msgstr "Repeteix l'avís"
+msgstr "Voleu repetir l'avís?"
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Sí"
#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repeteix l'avís"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Bloca l'usuari del grup"
+msgstr "Revoca el rol «%s» de l'usuari"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "No s'ha definit cap usuari únic per al mode d'usuari únic."
#: lib/sandboxform.php:67
-#, fuzzy
msgid "Sandbox"
-msgstr "Safata d'entrada"
+msgstr "Entorn de proves"
#: lib/sandboxform.php:78
-#, fuzzy
msgid "Sandbox this user"
-msgstr "Desbloquejar aquest usuari"
+msgstr "Posa l'usuari a l'entorn de proves"
#: lib/searchaction.php:120
msgid "Search site"
@@ -6257,15 +6923,15 @@ msgstr "Gent"
#: lib/searchgroupnav.php:81
msgid "Find people on this site"
-msgstr "Trobar gent en aquest lloc"
+msgstr "Cerca gent en aquest lloc"
#: lib/searchgroupnav.php:83
msgid "Find content of notices"
-msgstr "Trobar contingut de les notes"
+msgstr "Cerca el contingut dels avisos"
#: lib/searchgroupnav.php:85
msgid "Find groups on this site"
-msgstr "Trobar un grup en aquest lloc"
+msgstr "Cerca grups en aquest lloc"
#: lib/section.php:89
msgid "Untitled section"
@@ -6273,7 +6939,7 @@ msgstr "Secció sense títol"
#: lib/section.php:106
msgid "More..."
-msgstr "Més…"
+msgstr "Més..."
#: lib/silenceform.php:67
msgid "Silence"
@@ -6291,7 +6957,7 @@ msgstr "Persones %s subscrites a"
#: lib/subgroupnav.php:91
#, php-format
msgid "People subscribed to %s"
-msgstr "Persones subscrites a %s"
+msgstr "Gent subscrita a %s"
#: lib/subgroupnav.php:99
#, php-format
@@ -6305,34 +6971,78 @@ msgstr "Convida"
#: lib/subgroupnav.php:106
#, php-format
msgid "Invite friends and colleagues to join you on %s"
-msgstr "Convidar amics i companys perquè participin a %s"
+msgstr "Convida amics i companys perquè participin a %s"
#: lib/subscriberspeopleselftagcloudsection.php:48
#: lib/subscriptionspeopleselftagcloudsection.php:48
msgid "People Tagcloud as self-tagged"
-msgstr ""
+msgstr "Núvol d'etiquetes personals (etiquetes pròpies)"
#: lib/subscriberspeopletagcloudsection.php:48
#: lib/subscriptionspeopletagcloudsection.php:48
msgid "People Tagcloud as tagged"
-msgstr ""
+msgstr "Núvol d'etiquetes personals"
#: lib/tagcloudsection.php:56
msgid "None"
msgstr "Cap"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "El servidor no pot gestionar la pujada de temes si no pot tractar ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Manca el fitxer del tema o la pujada ha fallat."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Ha fallat el desament del tema."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "El tema no és vàlid: l'estructura del directori no és correcta"
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"El tema pujat és massa gran; ha de tenir menys de %d bytes descomprimit."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "L'arxiu del tema no és vàlid: manca el fitxer css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"El tema conté un fitxer o un nom de carpeta que no és vàlida. Feu servir "
+"només lletres ASCII, dígits, caràcters de subratllat i el símbol de menys."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "El tema conté un tipus de fitxer «.%s», que no està permès."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "S'ha produït un error en obrir l'arxiu del tema."
+
#: lib/topposterssection.php:74
msgid "Top posters"
-msgstr "Que més publiquen"
+msgstr "Qui més publica"
#: lib/unsandboxform.php:69
msgid "Unsandbox"
-msgstr ""
+msgstr "Treu de l'entorn de proves"
#: lib/unsandboxform.php:80
-#, fuzzy
msgid "Unsandbox this user"
-msgstr "Desbloquejar aquest usuari"
+msgstr "Treu l'usuari de l'entorn de proves"
#: lib/unsilenceform.php:67
msgid "Unsilence"
@@ -6344,98 +7054,114 @@ msgstr "Dessilencia l'usuari"
#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
msgid "Unsubscribe from this user"
-msgstr "Deixar d'estar subscrit des d'aquest usuari"
+msgstr "Cancel·la la subscripció d'aquest usuari"
#: lib/unsubscribeform.php:137
msgid "Unsubscribe"
-msgstr "Cancel·lar subscripció"
+msgstr "Cancel·la la subscripció"
+
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "L'usuari %s (%d) no té un registre de perfil."
-#: lib/userprofile.php:116
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Edita l'avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Accions de l'usuari"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "S'està eliminant l'usuari..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Edita la configuració del perfil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Edita"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
-msgstr "Enviar un missatge directe a aquest usuari"
+msgstr "Envia un missatge directe a aquest usuari"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Missatge"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Modera"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Perfil de l'usuari"
+msgstr "Rol de l'usuari"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administradors"
+msgstr "Administrador"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Modera"
+msgstr "Moderador"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "fa pocs segons"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "fa un minut"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "fa %d minuts"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "fa una hora"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "fa %d hores"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "fa un dia"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "fa %d dies"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "fa un mes"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "fa %d mesos"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "fa un any"
@@ -6449,7 +7175,8 @@ msgstr "%s no és un color vàlid!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s no és un color vàlid! Feu servir 3 o 6 caràcters hexadecimals."
-#: lib/xmppmanager.php:402
-#, fuzzy, php-format
+#: lib/xmppmanager.php:403
+#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
-msgstr "Missatge massa llarg - màxim és 140 caràcters, tu has enviat %d"
+msgstr ""
+"El missatge és massa llarg - el màxim és %1$d caràcters, i n'heu enviat %2$d."
diff --git a/locale/cs/LC_MESSAGES/statusnet.po b/locale/cs/LC_MESSAGES/statusnet.po
index a48ec5885..8df43a789 100644
--- a/locale/cs/LC_MESSAGES/statusnet.po
+++ b/locale/cs/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:32+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:14+0000\n"
"Language-Team: Czech\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: cs\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +22,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Přijmout"
@@ -78,86 +78,91 @@ msgstr "Žádný takový uživatel."
msgid "Save access settings"
msgstr "Nastavení"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Uložit"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Žádné takové oznámení."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Žádný takový uživatel."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s a přátelé"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s a přátelé"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed přítel uživatele: %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed přítel uživatele: %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed přítel uživatele: %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -165,79 +170,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s a přátelé"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Potvrzující kód nebyl nalezen"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Nelze aktualizovat uživatele"
@@ -247,7 +254,7 @@ msgstr "Nelze aktualizovat uživatele"
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Uživatel nemá profil."
@@ -258,9 +265,9 @@ msgid "Could not save profile."
msgstr "Nelze uložit profil"
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,48 +325,49 @@ msgstr ""
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr ""
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Je to příliš dlouhé. Maximální sdělení délka je 140 znaků"
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr ""
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Toto je již vaše Jabber"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Nelze smazat oblíbenou položku."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "Nelze přesměrovat na server: %s"
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -376,8 +384,8 @@ msgstr "Nelze přesměrovat na server: %s"
msgid "You cannot unfollow yourself."
msgstr "Nelze aktualizovat uživatele"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -390,118 +398,131 @@ msgstr "Nelze aktualizovat uživatele"
msgid "Could not find target user."
msgstr "Nelze aktualizovat uživatele"
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "PÅ™ezdívka může obsahovat pouze malá písmena a Äísla bez mezer"
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Přezdívku již někdo používá. Zkuste jinou"
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Není platnou přezdívkou."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Stránka není platnou URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Jméno je moc dlouhé (maximální délka je 255 znaků)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "Text je příliš dlouhý (maximální délka je 140 zanků)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Umístění příliš dlouhé (maximálně 255 znaků)"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "Neplatná adresa '%s'"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Přezdívku již někdo používá. Zkuste jinou"
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "Žádný požadavek nebyl nalezen!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "Již jste přihlášen"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Nelze přesměrovat na server: %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "Neodeslal jste nám profil"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Nelze vytvořit OpenID z: %s"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "Profil"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Neodeslal jste nám profil"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr ""
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Upload"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -512,17 +533,17 @@ msgid "Invalid token."
msgstr "Neplatná velikost"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -556,12 +577,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "NeÄekaná forma submission."
@@ -581,21 +605,23 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
#, fuzzy
msgid "Account"
msgstr "O nás"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Přezdívka"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Heslo"
@@ -612,11 +638,11 @@ msgstr ""
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -635,61 +661,66 @@ msgstr "Nemůžete se registrovat, pokud nesouhlasíte s licencí."
msgid "Already repeated that notice."
msgstr "Odstranit toto oznámení"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "Obrázek nahrán"
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Je to příliš dlouhé. Maximální sdělení délka je 140 znaků"
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr ""
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+#, fuzzy
+msgid "Not found."
+msgstr "Žádný požadavek nebyl nalezen!"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Nepodporovaný formát obrázku."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1 statusů na %2"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "Mikroblog od %s"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1 statusů na %2"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -704,20 +735,19 @@ msgstr "Odpovědi na %s"
msgid "Repeats of %s"
msgstr "Odpovědi na %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Mikroblog od %s"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "Žádný požadavek nebyl nalezen!"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
#, fuzzy
@@ -739,8 +769,9 @@ msgstr "Žádná velikost"
msgid "Invalid size."
msgstr "Neplatná velikost"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Obrázek"
@@ -750,10 +781,11 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
+msgstr "Uživatel nemá profil."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -772,7 +804,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Odstranit"
@@ -784,23 +816,28 @@ msgstr "Upload"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "ČásteÄné náhrání."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Obrázek nahrán"
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Nahrávání obrázku selhalo."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar smazán."
@@ -809,40 +846,57 @@ msgstr "Avatar smazán."
msgid "You already blocked that user."
msgstr "Již jste přihlášen"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
#, fuzzy
msgid "Block user"
msgstr "Žádný takový uživatel."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Ne"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Žádný takový uživatel."
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ano"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Zablokovat tohoto uživatele"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -855,8 +909,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "Žádné takové oznámení."
@@ -889,9 +943,11 @@ msgstr ""
msgid "Unblock this user"
msgstr "Žádný takový uživatel."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "Odpovědi na %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -905,34 +961,44 @@ msgstr "Potvrzující kód nebyl nalezen"
msgid "That confirmation code is not for you!"
msgstr "Tento potvrzující kód vám nepatří!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Neznámý typ adresy %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Adresa již byla potvrzena"
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Nelze aktualizovat uživatele"
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Nelze smazat potvrzení emailu"
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "PotvrÄ adresu"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Adresa \"%s\" byla potvrzena pro váš úÄet"
@@ -943,7 +1009,7 @@ msgid "Conversation"
msgstr "Umístění"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Sdělení"
@@ -965,7 +1031,7 @@ msgstr "Neodeslal jste nám profil"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -981,23 +1047,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Žádné takové oznámení."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Odstranit toto oznámení"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Nepřihlášen"
@@ -1020,12 +1088,14 @@ msgstr ""
msgid "Are you sure you want to delete this notice?"
msgstr ""
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Žádné takové oznámení."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Odstranit toto oznámení"
@@ -1049,131 +1119,152 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Odstranit tohoto uživatele"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Vzhled"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Neplatná velikost"
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Tato stránka není k dispozici v typu média která přijímáte."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Změnit heslo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Nové sdělení"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Změnit"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Nové sdělení"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Nové sdělení"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Pozadí"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Je to příliš dlouhé. Maximální sdělení délka je 140 znaků"
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Změnit barvy"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Obsah"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Hledat"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr ""
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Odkazy"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Uložit"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1286,12 +1377,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "Text je příliš dlouhý (maximální délka je 140 zanků)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Neplatná adresa '%s'"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "Nelze aktualizovat uživatele"
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Nelze uložin informace o obrázku"
@@ -1300,180 +1397,240 @@ msgstr "Nelze uložin informace o obrázku"
msgid "Options saved."
msgstr "Nastavení uloženo."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Nastavení E-mailu"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresa"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Potvrzení emailové adresy"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr ""
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Odstranit"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Zrušit"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Potvrzení emailové adresy"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr ""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Přidat"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Nový"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Nastavení"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr ""
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Nastavení uloženo"
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr ""
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Není platnou mailovou adresou."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr ""
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Nelze vložit potvrzující kód"
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "NeÄeká žádné potvrzení na zruÅ¡ení."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Toto je špatná IM adresa"
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "PotvrÄ zruÅ¡ení"
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr ""
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Adresa byla odstraněna"
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1595,8 +1752,9 @@ msgstr "Nelze konvertovat řetězec požadavku na přístupový řetězec."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Neznámá verze OMB protokolu."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Chyba při aktualizaci vzdáleného profilu"
#: actions/getfile.php:79
@@ -1630,13 +1788,13 @@ msgstr "Uživatel nemá profil."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
@@ -1659,12 +1817,12 @@ msgstr "Uživatel nemá profil."
msgid "User is not a member of group."
msgstr "Neodeslal jste nám profil"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Žádný takový uživatel."
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1672,17 +1830,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "Nelze přesměrovat na server: %s"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "Žádný takový uživatel."
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1726,11 +1886,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Uživatel nemá profil."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1763,34 +1918,38 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr ""
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Mikroblog od %s"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Skupiny"
@@ -1810,7 +1969,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "VytvoÅ™it nový úÄet"
@@ -1863,12 +2022,16 @@ msgstr "Uživatel nemá profil."
msgid "Error removing the block."
msgstr "Chyba při ukládaní uživatele"
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "IM nastavení"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1877,16 +2040,26 @@ msgstr ""
"Můžete odesílat nebo přijámat sdělení pomocí Jabber/GTalk [zpráv](%%doc.im%"
"%).Zadejte svou adresu níže."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Tato stránka není k dispozici v typu média která přijímáte."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "IM adresa"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Potvrzené Jabber/GTalk adresy"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1895,12 +2068,9 @@ msgstr ""
"Čakám na potvrzení této adresy. Zkontrolujte zprávy na vašem Jabber/GTalk "
"úÄtu. (PÅ™idal jste si %s do vaÅ¡ich kontaktů?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM adresa"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1909,43 +2079,65 @@ msgstr ""
"Jabber nebo GTalk adresy, například \"jmeno@example.org\". Neprve se "
"ujistěte že jste přidal %s do vašeho seznamu kontaktů."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Nastavení"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Zasílat oznámení pomocí Jabber/GTalk"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Poslat oznámení, když se změní můj Jabber/Gtalk status."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Nastavení uloženo"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Žádné Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Nelze normalizovat JabberID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Není platným Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Toto je již vaše Jabber"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID již patří jinému uživateli"
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1954,10 +2146,35 @@ msgstr ""
"Ověřující kód byl poslán na vloženou IM adresu. Musíte prokázat %s pro "
"posílání zpráv."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Toto je špatná IM adresa"
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Nelze smazat potvrzení emailu"
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "PotvrÄ zruÅ¡ení"
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Toto není váš Jabber"
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Adresa byla odstraněna"
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1977,9 +2194,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Nelze aktualizovat uživatele"
#: actions/invite.php:72
#, php-format
@@ -1998,7 +2215,9 @@ msgstr ""
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2046,12 +2265,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Odeslat"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2091,7 +2312,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "Žádná přezdívka."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr ""
@@ -2100,60 +2323,66 @@ msgstr ""
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "Neodeslal jste nám profil"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%1 statusů na %2"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Již přihlášen"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Neplatné jméno nebo heslo"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Neautorizován."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Přihlásit"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Zapamatuj si mÄ›"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "PříštÄ› automaticky pÅ™ihlásit; ne pro poÄítaÄe, které používá "
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Ztracené nebo zapomenuté heslo?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr "Z bezpeÄnostních důvodů, prosím zadejte znovu své jméno a heslo."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Neplatné jméno nebo heslo"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Přihlaste se pomocí vaší prezdívky a hesla. Zatím nejste zaregistrován? "
"[Registrovat](%%action.register%%) nový úÄet, nebo vyzkouÅ¡ejte [OpenID](%%"
@@ -2179,8 +2408,9 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Uživatel nemá profil."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "Žádné výsledky."
#: actions/newapplication.php:52
#, fuzzy
@@ -2216,12 +2446,12 @@ msgstr ""
msgid "New message"
msgstr ""
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Žádný obsah!"
@@ -2229,7 +2459,7 @@ msgstr "Žádný obsah!"
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2243,7 +2473,7 @@ msgstr ""
msgid "Direct message to %s sent."
msgstr ""
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr ""
@@ -2251,7 +2481,7 @@ msgstr ""
msgid "New notice"
msgstr "Nové sdělení"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
#, fuzzy
msgid "Notice posted"
msgstr "Sdělení"
@@ -2300,7 +2530,7 @@ msgstr "Všechny položky obsahující \"%s\""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2342,11 +2572,11 @@ msgid "You are not a user of that application."
msgstr "Neodeslal jste nám profil"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2354,26 +2584,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Sdělení nemá profil"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1 statusů na %2"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "Připojit"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2485,7 +2720,7 @@ msgid "6 or more characters"
msgstr "6 a více znaků"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Heslo znovu"
@@ -2497,11 +2732,11 @@ msgstr "Stejné jako heslo výše"
msgid "Change"
msgstr "Změnit"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr ""
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Hesla nesouhlasí"
@@ -2513,7 +2748,7 @@ msgstr "Neplatné heslo"
msgid "Error saving user; invalid."
msgstr "Chyba při ukládaní uživatele; neplatný"
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Nelze uložit nové heslo"
@@ -2522,7 +2757,7 @@ msgid "Password saved."
msgstr "Heslo uloženo"
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2532,23 +2767,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Tato stránka není k dispozici v typu média která přijímáte."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Tato stránka není k dispozici v typu média která přijímáte."
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Tato stránka není k dispozici v typu média která přijímáte."
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Tato stránka není k dispozici v typu média která přijímáte."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2697,18 +2932,19 @@ msgstr ""
msgid "People search"
msgstr "Hledání lidí"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "Není platnou mailovou adresou."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Mikroblog od %s"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Neplatný obsah sdělení"
#: actions/postnotice.php:101
@@ -2736,42 +2972,43 @@ msgstr "Neznámý profil"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 znaků nebo Äísel, bez teÄek, Äárek a mezer"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Celé jméno"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Moje stránky"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "Adresa vašich stránek, blogu nebo profilu na jiných stránkách."
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Popiš sebe a své zájmy ve 140 znacích"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Popište sebe a své zájmy"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "O mÄ›"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Umístění"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Místo. Město, stát."
@@ -2781,7 +3018,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2811,7 +3048,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Text je příliš dlouhý (maximální délka je 140 zanků)"
@@ -2854,7 +3091,7 @@ msgstr "Nastavení uloženo"
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3011,7 +3248,7 @@ msgstr "Resetovat heslo"
msgid "Recover password"
msgstr "Obnovit"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Žádost o obnovu hesla"
@@ -3031,19 +3268,19 @@ msgstr "Reset"
msgid "Enter a nickname or email address."
msgstr "Zadej přezdívku nebo emailovou adresu"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Žádný registrovaný email pro tohoto uživatele."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Chyba při ukládání potvrzení adresy"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3051,108 +3288,123 @@ msgstr ""
"Návod jak obnovit heslo byl odeslát na vaší emailovou adresu zaregistrovanou "
"u vaÅ¡eho úÄtu."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "NeÄekané resetování hesla."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Heslo musí být alespoň 6 znaků dlouhé"
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Heslo a potvrzení nesouhlasí"
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Chyba nastavení uživatele"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nové heslo bylo uloženo. Nyní jste přihlášen."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Chyba v ověřovacím kódu"
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registrace úspěšná"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrovat"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr ""
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Nemůžete se registrovat, pokud nesouhlasíte s licencí."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Emailová adresa již existuje"
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Neplatné jméno nebo heslo"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr ""
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr ""
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Email"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Použije se pouze pro aktualizace, oznámení a obnovu hesla."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mé texty a soubory jsou k dispozici pod"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
" až na tyto privátní data: heslo, emailová adresa, IM adresa, telefonní "
"Äíslo."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3171,7 +3423,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3214,7 +3466,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Adresa profilu na jiných kompatibilních mikroblozích."
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Odebírat"
@@ -3255,7 +3507,7 @@ msgstr "Nemůžete se registrovat, pokud nesouhlasíte s licencí."
msgid "You already repeated that notice."
msgstr "Již jste přihlášen"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Vytvořit"
@@ -3295,7 +3547,7 @@ msgstr "Feed sdělení pro %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3308,8 +3560,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3327,7 +3579,7 @@ msgstr "Neodeslal jste nám profil"
msgid "User doesn't have this role."
msgstr "Uživatel nemá profil."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Obrázek nahrán"
@@ -3344,7 +3596,7 @@ msgstr "Uživatel nemá profil."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3383,29 +3635,33 @@ msgstr ""
msgid "Application profile"
msgstr "Sdělení nemá profil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Přezdívka"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Umístění"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "Odběry"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistiky"
@@ -3489,16 +3745,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3515,70 +3771,70 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "Všechny odběry"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "Žádné takové oznámení."
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Poznámka"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Feed sdělení pro %s"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Feed sdělení pro %s"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Feed sdělení pro %s"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "Feed sdělení pro %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "ÄŒlenem od"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "Vytvořit"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3588,7 +3844,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3597,7 +3853,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3673,8 +3929,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3727,11 +3983,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3824,7 +4080,7 @@ msgid "Unable to save site notice."
msgstr "Problém při ukládání sdělení"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3841,105 +4097,166 @@ msgstr ""
msgid "Save site notice"
msgstr "Nové sdělení"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "IM nastavení"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Tato stránka není k dispozici v typu média která přijímáte."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IM adresa"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr ""
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Heslo znovu"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "Žádné telefonní Äíslo."
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Nastavení"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Nastavení uloženo"
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Žádné telefonní Äíslo."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr "Tento potvrzující kód vám nepatří!"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "PotvrÄ zruÅ¡ení"
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr ""
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "Žádné telefonní Äíslo."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3961,7 +4278,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4002,8 +4319,8 @@ msgstr "Nastavení"
msgid "You are not subscribed to that profile."
msgstr "Neodeslal jste nám profil"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "Nelze vytvořit odebírat"
@@ -4098,12 +4415,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1 od teÄ naslouchá tvým sdÄ›lením v %2"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "Žádné Jabber ID."
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr ""
@@ -4137,13 +4454,13 @@ msgstr "Žádný takový dokument."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "Uživatel nemá profil."
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4176,10 +4493,6 @@ msgstr ""
msgid "No such tag."
msgstr "Žádné takové oznámení."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4197,7 +4510,7 @@ msgstr "Uživatel nemá profil."
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Nebylo vráceno žádné URL profilu od servu."
#: actions/unsubscribe.php:98
@@ -4234,7 +4547,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4297,7 +4611,7 @@ msgstr ""
"sdělení tohoto uživatele. Pokud ne, ask to subscribe to somone's notices, "
"klikněte na \"Zrušit\""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licence"
@@ -4403,48 +4717,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Všechny odběry"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "Neodeslal jste nám profil"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Statistiky"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4452,7 +4772,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4460,336 +4780,453 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Osobní"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Neplatná velikost"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Žádné takové oznámení."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Nelze aktualizovat uživatele"
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Žádné takové oznámení."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Nelze aktualizovat uživatele"
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Nelze uložin informace o obrázku"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Chyba v DB při vkládání odpovědi: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Problém při ukládání sdělení"
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "Problém při ukládání sdělení"
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problém při ukládání sdělení"
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Problém při ukládání sdělení"
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Uživatel nemá profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Problém při ukládání sdělení"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
#, fuzzy
msgid "User has blocked you."
msgstr "Uživatel nemá profil."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Nepřihlášen!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Nelze smazat odebírání"
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Nelze smazat odebírání"
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Nelze smazat odebírání"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "Nelze uložin informace o obrázku"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Nelze vytvořit odebírat"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "Nelze vytvořit odebírat"
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Nelze vytvořit odebírat"
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr ""
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "Nahrávání obrázku selhalo."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr ""
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Uživatel nemá profil."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
msgstr ""
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1 statusů na %2"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Osobní"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Změnit heslo"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Nelze přesměrovat na server: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Připojit"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Odběry"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr ""
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Neplatná velikost"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Odhlásit"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "VytvoÅ™it nový úÄet"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Registrovat"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Přihlásit"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Pomoci mi!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Nápověda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4797,76 +5234,90 @@ msgstr "Hledat"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "Nové sdělení"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "Nové sdělení"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "Odběry"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Nápověda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "O nás"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Soukromí"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Zdroj"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** je služba microblogů, kterou pro vás poskytuje [%%site."
"broughtby%%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** je služba mikroblogů."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4877,70 +5328,84 @@ msgstr ""
"dostupná pod [GNU Affero General Public License](http://www.fsf.org/"
"licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "Nové sdělení"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "« Novější"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "Starší »"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4950,166 +5415,204 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Nové sdělení"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Vzhled"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "Potvrzení emailové adresy"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Nové sdělení"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "Potvrzení emailové adresy"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Popiš sebe a své zájmy ve 140 znacích"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Popiš sebe a své zájmy ve 140 znacích"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Zdroj"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "Adresa vašich stránek, blogu nebo profilu na jiných stránkách."
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Zdroj"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "Adresa vašich stránek, blogu nebo profilu na jiných stránkách."
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Zrušit"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Odstranit"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Poskytovatel"
@@ -5121,47 +5624,68 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Heslo uloženo"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Heslo uloženo"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr ""
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr ""
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Vzdálený profil s nesouhlasícím profilem"
+
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "Uživatel nemá profil."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Nelze aktualizovat uživatele"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Nelze aktualizovat uživatele"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Odpovědi na %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5169,209 +5693,211 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Vzdálený profil s nesouhlasícím profilem"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "Uživatel nemá profil."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "Již jste přihlášen"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Nelze přesměrovat na server: %s"
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%1 statusů na %2"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Nelze vytvořit OpenID z: %s"
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%1 statusů na %2"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "Celé jméno"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr ""
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr ""
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr ""
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr ""
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Nemůžete se registrovat, pokud nesouhlasíte s licencí."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Odstranit toto oznámení"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Sdělení"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Problém při ukládání sdělení"
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "Odpovědi na %s"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Problém při ukládání sdělení"
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
+#: lib/command.php:628
#, fuzzy
-msgid "No such user"
-msgstr "Žádný takový uživatel."
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Neodeslal jste nám profil"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Odhlásit"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Neodeslal jste nám profil"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Neodeslal jste nám profil"
msgstr[1] "Neodeslal jste nám profil"
msgstr[2] ""
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Vzdálený odběr"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Vzdálený odběr"
msgstr[1] "Vzdálený odběr"
msgstr[2] ""
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Neodeslal jste nám profil"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Neodeslal jste nám profil"
msgstr[1] "Neodeslal jste nám profil"
msgstr[2] ""
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5413,20 +5939,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Žádný potvrzující kód."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5604,54 +6130,55 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Tato stránka není k dispozici v typu média která přijímáte."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Nepodporovaný formát obrázku."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Je to příliš dlouhé. Maximální sdělení délka je 140 znaků"
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "ČásteÄné náhrání."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Chyba systému při nahrávání souboru"
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Není obrázkem, nebo jde o poškozený soubor."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Nepodporovaný formát obrázku."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "Žádné takové oznámení."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr ""
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5675,11 +6202,13 @@ msgstr "Neplatné jméno nebo heslo"
msgid "Sign up for a new account"
msgstr "VytvoÅ™it nový úÄet"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Potvrzení emailové adresy"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5696,12 +6225,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1 od teÄ naslouchá tvým sdÄ›lením v %2"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5722,17 +6260,20 @@ msgstr ""
"S úctou váš,\n"
"%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "O mÄ›"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5745,21 +6286,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr ""
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5775,12 +6326,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr ""
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5799,12 +6352,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%1 od teÄ naslouchá tvým sdÄ›lením v %2"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5825,12 +6380,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5843,6 +6408,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5855,7 +6432,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " od "
@@ -5911,25 +6488,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Nelze aktualizovat uživatele"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5987,51 +6564,55 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr ""
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "Žádný obsah!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Vytvořit"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr ""
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
#, fuzzy
msgid "Reply"
msgstr "odpovÄ›Ä"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Sdělení"
@@ -6056,6 +6637,10 @@ msgstr "Chyba při vkládání nového profilu"
msgid "Error inserting avatar"
msgstr "Chyba při kládání obrázku"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Chyba při aktualizaci vzdáleného profilu"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Chyba při vkládaní vzdáleného profilu"
@@ -6102,11 +6687,11 @@ msgstr ""
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Odběry"
@@ -6114,32 +6699,32 @@ msgstr "Odběry"
msgid "All subscriptions"
msgstr "Všechny odběry"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Odběratelé"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Všichni odběratelé"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "ÄŒlenem od"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr ""
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Žádný takový dokument."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6164,12 +6749,21 @@ msgstr ""
msgid "Popular"
msgstr "Hledání lidí"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Žádný takový dokument."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Odstranit toto oznámení"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ano"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Odstranit toto oznámení"
@@ -6179,7 +6773,7 @@ msgstr "Odstranit toto oznámení"
msgid "Revoke the \"%s\" role from this user"
msgstr "Žádný takový uživatel."
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6282,6 +6876,50 @@ msgstr ""
msgid "None"
msgstr ""
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Nahrávání obrázku selhalo."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Chyba při aktualizaci vzdáleného profilu"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6312,91 +6950,110 @@ msgstr ""
msgid "Unsubscribe"
msgstr "Odhlásit"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Uživatel nemá profil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Upravit avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Akce uživatele"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Nastavené Profilu"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr ""
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Zpráva"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Uživatel nemá profil."
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "před pár sekundami"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "asi před minutou"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "asi před %d minutami"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "asi před hodinou"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "asi před %d hodinami"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "asi přede dnem"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "před %d dny"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "asi před měsícem"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "asi před %d mesíci"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "asi před rokem"
@@ -6410,7 +7067,7 @@ msgstr "Stránka není platnou URL."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/da/LC_MESSAGES/statusnet.po b/locale/da/LC_MESSAGES/statusnet.po
new file mode 100644
index 000000000..f68253d22
--- /dev/null
+++ b/locale/da/LC_MESSAGES/statusnet.po
@@ -0,0 +1,6737 @@
+# Translation of StatusNet to Danish
+#
+# Author@translatewiki.net: Mstenbaek
+# --
+# This file is distributed under the same license as the StatusNet package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: StatusNet\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:15+0000\n"
+"Language-Team: Danish\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
+"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
+"X-Language-Code: da\n"
+"X-Message-Group: out-statusnet\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANS: Page title
+#. TRANS: Menu item for site administration
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
+msgid "Access"
+msgstr "Adgang"
+
+#. TRANS: Page notice
+#: actions/accessadminpanel.php:67
+msgid "Site access settings"
+msgstr "Indstillinger for adgang til webstedet"
+
+#. TRANS: Form legend for registration form.
+#: actions/accessadminpanel.php:161
+msgid "Registration"
+msgstr "Registrering"
+
+#. TRANS: Checkbox instructions for admin setting "Private"
+#: actions/accessadminpanel.php:165
+msgid "Prohibit anonymous users (not logged in) from viewing site?"
+msgstr "Forhindre anonyme brugere (som ikke er logget ind) i at se webstedet?"
+
+#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
+#: actions/accessadminpanel.php:167
+msgctxt "LABEL"
+msgid "Private"
+msgstr "Privat"
+
+#. TRANS: Checkbox instructions for admin setting "Invite only"
+#: actions/accessadminpanel.php:174
+msgid "Make registration invitation only."
+msgstr "Registreing er kun mulig gennem en invitation"
+
+#. TRANS: Checkbox label for configuring site as invite only.
+#: actions/accessadminpanel.php:176
+msgid "Invite only"
+msgstr "Kun Inviterede"
+
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
+#: actions/accessadminpanel.php:183
+msgid "Disable new registrations."
+msgstr "Forhindre nye registreringer"
+
+#. TRANS: Checkbox label for disabling new user registrations.
+#: actions/accessadminpanel.php:185
+msgid "Closed"
+msgstr "Lukket"
+
+#. TRANS: Title / tooltip for button to save access settings in site admin panel
+#: actions/accessadminpanel.php:202
+msgid "Save access settings"
+msgstr "Gem adgangsindstillinger"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
+msgctxt "BUTTON"
+msgid "Save"
+msgstr "Gem"
+
+#. TRANS: Server error when page not found (404)
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
+#: actions/showfavorites.php:138 actions/tag.php:52
+msgid "No such page."
+msgstr "Siden findes ikke"
+
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
+#: actions/apiaccountupdateprofile.php:105
+#: actions/apiaccountupdateprofilebackgroundimage.php:116
+#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
+#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
+#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
+#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
+#: actions/otp.php:76 actions/remotesubscribe.php:145
+#: actions/remotesubscribe.php:154 actions/replies.php:73
+#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
+msgid "No such user."
+msgstr "Ingen bruger fundet."
+
+#. TRANS: Page title. %1$s is user nickname, %2$d is page number
+#: actions/all.php:90
+#, php-format
+msgid "%1$s and friends, page %2$d"
+msgstr "%1$s og venner, side %2$d"
+
+#. TRANS: Page title. %1$s is user nickname
+#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
+#: lib/personalgroupnav.php:100
+#, php-format
+msgid "%s and friends"
+msgstr "%s og venner"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:107
+#, php-format
+msgid "Feed for friends of %s (RSS 1.0)"
+msgstr "Feed for venner af %s (RSS 1.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:116
+#, php-format
+msgid "Feed for friends of %s (RSS 2.0)"
+msgstr "Feed for venner af %s (RSS 1.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:125
+#, php-format
+msgid "Feed for friends of %s (Atom)"
+msgstr "Feed for venner af %s (Atom)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:138
+#, php-format
+msgid ""
+"This is the timeline for %s and friends but no one has posted anything yet."
+msgstr ""
+"Dette er tidslinjen for %s og venner, men ingen har skrevet noget endnu."
+
+#: actions/all.php:143
+#, php-format
+msgid ""
+"Try subscribing to more people, [join a group](%%action.groups%%) or post "
+"something yourself."
+msgstr ""
+"Prøv at abonnere på flere personer, [deltage i en gruppe] (%%action.groups%"
+"%) eller skriv noget selv."
+
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
+#: actions/all.php:146
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
+"post a notice to them."
+msgstr ""
+"Hvorfor ikke [registrere en konto] (%%action.register%%), og vær den første "
+"til at tilføje en meddelelse til dine favoritter!"
+
+#. TRANS: H1 text
+#: actions/all.php:182
+msgid "You and friends"
+msgstr "Du og vennerne"
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
+#, php-format
+msgid "Updates from %1$s and friends on %2$s!"
+msgstr "Opdateringer fra %1$s og venner på %2$s!"
+
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
+#: actions/apiaccountupdateprofile.php:97
+#: actions/apiaccountupdateprofilebackgroundimage.php:94
+#: actions/apiaccountupdateprofilecolors.php:118
+#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
+#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
+#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
+#: actions/apitimelineretweetedtome.php:121
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+msgid "API method not found."
+msgstr "API metode ikke fundet."
+
+#: actions/apiaccountupdatedeliverydevice.php:86
+#: actions/apiaccountupdateprofile.php:89
+#: actions/apiaccountupdateprofilebackgroundimage.php:86
+#: actions/apiaccountupdateprofilecolors.php:110
+#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
+#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
+msgid "This method requires a POST."
+msgstr "Denne metode kræver en POST."
+
+#: actions/apiaccountupdatedeliverydevice.php:106
+msgid ""
+"You must specify a parameter named 'device' with a value of one of: sms, im, "
+"none."
+msgstr ""
+"Du skal angive en parameter med navnet 'device', med værdien sat til en af "
+"følgende: sms, im, none."
+
+#: actions/apiaccountupdatedeliverydevice.php:133
+msgid "Could not update user."
+msgstr "Kunne ikke opdatere brugeren."
+
+#: actions/apiaccountupdateprofile.php:112
+#: actions/apiaccountupdateprofilebackgroundimage.php:194
+#: actions/apiaccountupdateprofilecolors.php:185
+#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
+#: lib/profileaction.php:84
+msgid "User has no profile."
+msgstr "Brugeren har ingen profil."
+
+#: actions/apiaccountupdateprofile.php:147
+msgid "Could not save profile."
+msgstr "Kunne ikke gemme profilen."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
+#: actions/newapplication.php:101 actions/newnotice.php:94
+#: lib/designsettings.php:283
+#, php-format
+msgid ""
+"The server was unable to handle that much POST data (%s bytes) due to its "
+"current configuration."
+msgstr ""
+"Serveren var ikke i stand til at håndtere så meget POST data (%s bytes) på "
+"grund af sin nuværende konfiguration."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:136
+#: actions/apiaccountupdateprofilebackgroundimage.php:146
+#: actions/apiaccountupdateprofilecolors.php:164
+#: actions/apiaccountupdateprofilecolors.php:174
+#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
+#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
+#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
+msgid "Unable to save your design settings."
+msgstr "Kunne ikke gemme dine design indstillinger."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:187
+#: actions/apiaccountupdateprofilecolors.php:142
+msgid "Could not update your design."
+msgstr "Kunne ikke opdatere dit design."
+
+#: actions/apiblockcreate.php:105
+msgid "You cannot block yourself!"
+msgstr "Du kan ikke blokere dig selv!"
+
+#: actions/apiblockcreate.php:126
+msgid "Block user failed."
+msgstr "Blokering af bruger mislykkedes"
+
+#: actions/apiblockdestroy.php:114
+msgid "Unblock user failed."
+msgstr "Ophæv blokering af bruger mislykkedes."
+
+#: actions/apidirectmessage.php:89
+#, php-format
+msgid "Direct messages from %s"
+msgstr "Direkte beskeder fra %s"
+
+#: actions/apidirectmessage.php:93
+#, php-format
+msgid "All the direct messages sent from %s"
+msgstr "Alle direkte beskeder, sendt fra %s"
+
+#: actions/apidirectmessage.php:101
+#, php-format
+msgid "Direct messages to %s"
+msgstr "Direkte beskeder til %s"
+
+#: actions/apidirectmessage.php:105
+#, php-format
+msgid "All the direct messages sent to %s"
+msgstr "Alle direkte beskeder, sendt til %s"
+
+#: actions/apidirectmessagenew.php:118
+msgid "No message text!"
+msgstr "Ingen besked tekst!"
+
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
+#, php-format
+msgid "That's too long. Max message size is %d chars."
+msgstr "Det er for langt. Maksimal besked størrelse er %d tegn."
+
+#: actions/apidirectmessagenew.php:138
+msgid "Recipient user not found."
+msgstr "Modtager bruger ikke fundet"
+
+#: actions/apidirectmessagenew.php:142
+msgid "Can't send direct messages to users who aren't your friend."
+msgstr "Kan ikke sende direkte beskeder til brugere, som ikke din ven."
+
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
+msgid "No status found with that ID."
+msgstr "Ingen status fundet med dette ID."
+
+#: actions/apifavoritecreate.php:120
+msgid "This status is already a favorite."
+msgstr "Denne status er allerede en favorit."
+
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
+msgid "Could not create favorite."
+msgstr "Kunne ikke oprette favorit."
+
+#: actions/apifavoritedestroy.php:123
+msgid "That status is not a favorite."
+msgstr "Denne status er ikke en favorit."
+
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
+msgid "Could not delete favorite."
+msgstr "Kunne ikke slette favorit."
+
+#: actions/apifriendshipscreate.php:109
+msgid "Could not follow user: profile not found."
+msgstr ""
+
+#: actions/apifriendshipscreate.php:118
+#, php-format
+msgid "Could not follow user: %s is already on your list."
+msgstr "Kunne ikke følge bruger: %s er allerede på din liste."
+
+#: actions/apifriendshipsdestroy.php:109
+msgid "Could not unfollow user: User not found."
+msgstr "Kunne ikke stoppe følgeskab af bruger: Bruger ikke fundet."
+
+#: actions/apifriendshipsdestroy.php:120
+msgid "You cannot unfollow yourself."
+msgstr "Du kan ikke ophæve følgeskab til dig selv."
+
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr ""
+
+#: actions/apifriendshipsshow.php:134
+msgid "Could not determine source user."
+msgstr "Kunne ikke finde kilde bruger"
+
+#: actions/apifriendshipsshow.php:142
+msgid "Could not find target user."
+msgstr "Kunne ikke finde mål bruger."
+
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
+#: actions/newgroup.php:126 actions/profilesettings.php:215
+#: actions/register.php:212
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr "Kaldenavn må kun have små bogstaver og tal og ingen mellemrum."
+
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
+#: actions/newgroup.php:130 actions/profilesettings.php:238
+#: actions/register.php:215
+msgid "Nickname already in use. Try another one."
+msgstr "Kaldenavn allerede er i brug. Prøv med et andet."
+
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
+#: actions/newgroup.php:133 actions/profilesettings.php:218
+#: actions/register.php:217
+msgid "Not a valid nickname."
+msgstr "Ikke et gyldigt kaldenavn"
+
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
+#: actions/editgroup.php:199 actions/newapplication.php:203
+#: actions/newgroup.php:139 actions/profilesettings.php:222
+#: actions/register.php:224
+msgid "Homepage is not a valid URL."
+msgstr "Hjemmesiden er ikke en gyldig URL adresse."
+
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
+#: actions/newgroup.php:142 actions/profilesettings.php:225
+#: actions/register.php:227
+msgid "Full name is too long (max 255 chars)."
+msgstr "Fulde navn er for langt (max 255 tegn)."
+
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
+#: actions/newapplication.php:172
+#, php-format
+msgid "Description is too long (max %d chars)."
+msgstr "Beskrivelse er for lang (max %d tegn)."
+
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
+#: actions/newgroup.php:148 actions/profilesettings.php:232
+#: actions/register.php:234
+msgid "Location is too long (max 255 chars)."
+msgstr "Placering er for lang (max 255 tegn)."
+
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
+#: actions/newgroup.php:159
+#, php-format
+msgid "Too many aliases! Maximum %d."
+msgstr "Alt for mange aliaser! Maksimum %d."
+
+#: actions/apigroupcreate.php:267
+#, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr "Ugyldigt alias: \"%s\"."
+
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
+#: actions/newgroup.php:172
+#, php-format
+msgid "Alias \"%s\" already in use. Try another one."
+msgstr "Alias \"%s\" er allerede i brug. Prøv med et andet."
+
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
+#: actions/newgroup.php:178
+msgid "Alias can't be the same as nickname."
+msgstr "Alias kan ikke være det samme som kaldenavn."
+
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Gruppen blev ikke fundet."
+
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
+msgid "You are already a member of that group."
+msgstr "Du er allerede medlem af denne gruppe."
+
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
+msgid "You have been blocked from that group by the admin."
+msgstr "Du er blevet blokeret fra denne gruppe af administratoren."
+
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
+msgid "Could not join user %1$s to group %2$s."
+msgstr "Kunne ikke tilslutte bruger %1$s til gruppe %2$s."
+
+#: actions/apigroupleave.php:115
+msgid "You are not a member of this group."
+msgstr "Du er ikke medlem af denne gruppe."
+
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
+msgid "Could not remove user %1$s from group %2$s."
+msgstr "Kunne ikke fjerne brugeren %1$s fra gruppen %2$s."
+
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
+#, php-format
+msgid "%s's groups"
+msgstr "%s's grupper"
+
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s grupper som %2$s er medlem af."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#, php-format
+msgid "%s groups"
+msgstr "%s's grupper"
+
+#: actions/apigrouplistall.php:96
+#, php-format
+msgid "groups on %s"
+msgstr "grupper på %s"
+
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Ophæv blokering af bruger mislykkedes."
+
+#: actions/apioauthauthorize.php:101
+msgid "No oauth_token parameter provided."
+msgstr "Ingen oauth_token parameter angivet."
+
+#: actions/apioauthauthorize.php:106
+msgid "Invalid token."
+msgstr "Ugyldigt token."
+
+#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
+#: actions/groupblock.php:66 actions/grouplogo.php:312
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
+#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
+#: actions/othersettings.php:145 actions/passwordsettings.php:138
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#: actions/subscribe.php:86 actions/tagother.php:166
+#: actions/unsubscribe.php:69 actions/userauthorization.php:52
+#: lib/designsettings.php:294
+msgid "There was a problem with your session token. Try again, please."
+msgstr "Der var et problem med din session token. Venligst prøv igen."
+
+#: actions/apioauthauthorize.php:135
+msgid "Invalid nickname / password!"
+msgstr "Ugyldig kaldenavn / password!"
+
+#: actions/apioauthauthorize.php:159
+msgid "Database error deleting OAuth application user."
+msgstr "Databasefejl ved sletning af OAuth applikationsbruger."
+
+#: actions/apioauthauthorize.php:185
+msgid "Database error inserting OAuth application user."
+msgstr "Databasefejl ved tilføjelse af OAuth applikationsbruger."
+
+#: actions/apioauthauthorize.php:214
+#, php-format
+msgid ""
+"The request token %s has been authorized. Please exchange it for an access "
+"token."
+msgstr ""
+"Anmodnings-token %s er blevet godkendt. Venligst anvend den til en Adgangs-"
+"token."
+
+#: actions/apioauthauthorize.php:227
+#, php-format
+msgid "The request token %s has been denied and revoked."
+msgstr "Anmodnings-token %s er blevet afvist og trukket tilbage."
+
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
+#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
+#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
+#: actions/smssettings.php:277 lib/designsettings.php:304
+msgid "Unexpected form submission."
+msgstr "Uventet formularafsendelse."
+
+#: actions/apioauthauthorize.php:259
+msgid "An application would like to connect to your account"
+msgstr "En applikation vil gerne forbinde til din konto"
+
+#: actions/apioauthauthorize.php:276
+msgid "Allow or deny access"
+msgstr "Tillad eller Afvis adgang"
+
+#: actions/apioauthauthorize.php:292
+#, php-format
+msgid ""
+"The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
+"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."
+msgstr ""
+"Applikationen <strong>%1$s</strong> af %2$s</strong> vil gerne <strong>%3$s</"
+"strong> dine data for konto %4$s. Du bør kun give adgang til din %4$s konto "
+"til tredjemand du stoler på."
+
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
+msgid "Account"
+msgstr "Konto"
+
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
+#: actions/userauthorization.php:145 lib/groupeditform.php:152
+#: lib/userprofile.php:132
+msgid "Nickname"
+msgstr "Kaldenavn"
+
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
+msgid "Password"
+msgstr "Adgangskode"
+
+#: actions/apioauthauthorize.php:328
+msgid "Deny"
+msgstr "Nægt"
+
+#: actions/apioauthauthorize.php:334
+msgid "Allow"
+msgstr "Tillad"
+
+#: actions/apioauthauthorize.php:351
+msgid "Allow or deny access to your account information."
+msgstr "Tillad eller nægte adgang til dine kontooplysninger."
+
+#: actions/apistatusesdestroy.php:112
+msgid "This method requires a POST or DELETE."
+msgstr "Denne metode kræver en POST eller DELETE."
+
+#: actions/apistatusesdestroy.php:135
+msgid "You may not delete another user's status."
+msgstr "Du kan ikke slette en anden brugers status."
+
+#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
+#: actions/deletenotice.php:52 actions/shownotice.php:92
+msgid "No such notice."
+msgstr "Ingen sådan meddelelse."
+
+#: actions/apistatusesretweet.php:83
+msgid "Cannot repeat your own notice."
+msgstr "Kan ikke gentage din egen meddelelse."
+
+#: actions/apistatusesretweet.php:91
+msgid "Already repeated that notice."
+msgstr "Allerede gentaget denne medelelse."
+
+#: actions/apistatusesshow.php:139
+msgid "Status deleted."
+msgstr "Status slettet."
+
+#: actions/apistatusesshow.php:145
+msgid "No status with that ID found."
+msgstr "Ingen status med dette ID fundet."
+
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
+#: lib/mailhandler.php:60
+#, php-format
+msgid "That's too long. Max notice size is %d chars."
+msgstr "Det er for langt. Maksimal besked størrelse er %d tegn."
+
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ikke fundet."
+
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
+#, php-format
+msgid "Max notice size is %d chars, including attachment URL."
+msgstr "Max meddelelse størrelse er %d tegn, inklusiv vedlagt URL."
+
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
+msgid "Unsupported format."
+msgstr "Formatet understøttes ikke"
+
+#: actions/apitimelinefavorites.php:110
+#, php-format
+msgid "%1$s / Favorites from %2$s"
+msgstr "%1$s / favoritter fra %2$s"
+
+#: actions/apitimelinefavorites.php:119
+#, php-format
+msgid "%1$s updates favorited by %2$s / %2$s."
+msgstr "%1$s opdateringer favoriseret af %2$s / %2$s."
+
+#: actions/apitimelinementions.php:118
+#, php-format
+msgid "%1$s / Updates mentioning %2$s"
+msgstr "%1$s / opdateringer nævner %2$s"
+
+#: actions/apitimelinementions.php:131
+#, php-format
+msgid "%1$s updates that reply to updates from %2$s / %3$s."
+msgstr "%1$s opdateringer, som svar på opdateringer fra %2$s / %3$s."
+
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#, php-format
+msgid "%s public timeline"
+msgstr "%s offentlig tidslinie"
+
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#, php-format
+msgid "%s updates from everyone!"
+msgstr "%s opdateringer fra alle!"
+
+#: actions/apitimelineretweetedtome.php:111
+#, php-format
+msgid "Repeated to %s"
+msgstr "Gentagne til %s"
+
+#: actions/apitimelineretweetsofme.php:114
+#, php-format
+msgid "Repeats of %s"
+msgstr "Gentaget af %s"
+
+#: actions/apitimelinetag.php:105 actions/tag.php:67
+#, php-format
+msgid "Notices tagged with %s"
+msgstr "Bekendtgørelser tagged med %s"
+
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#, php-format
+msgid "Updates tagged with %1$s on %2$s!"
+msgstr "Opdateringer tagged med %1$s på %2$s!"
+
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
+
+#: actions/attachment.php:73
+msgid "No such attachment."
+msgstr "Ingen sådan fil."
+
+#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#: actions/grouplogo.php:86 actions/groupmembers.php:76
+#: actions/grouprss.php:91 actions/showgroup.php:121
+msgid "No nickname."
+msgstr "Ingen kaldenavn."
+
+#: actions/avatarbynickname.php:64
+msgid "No size."
+msgstr "Ingen størrelse."
+
+#: actions/avatarbynickname.php:69
+msgid "Invalid size."
+msgstr "Ugyldig størrelse."
+
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
+msgid "Avatar"
+msgstr "Avatar"
+
+#: actions/avatarsettings.php:78
+#, php-format
+msgid "You can upload your personal avatar. The maximum file size is %s."
+msgstr ""
+"Du kan uploade dine personlige avatar. Den maksimale filstørrelse er %s."
+
+#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Bruger uden matchende profil."
+
+#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
+#: actions/grouplogo.php:254
+msgid "Avatar settings"
+msgstr "Avatar indstillinger"
+
+#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
+#: actions/grouplogo.php:202 actions/grouplogo.php:262
+msgid "Original"
+msgstr "Original"
+
+#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
+#: actions/grouplogo.php:213 actions/grouplogo.php:274
+msgid "Preview"
+msgstr "Forhåndsvisning"
+
+#: actions/avatarsettings.php:149 actions/showapplication.php:252
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
+msgid "Delete"
+msgstr "Slet"
+
+#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+msgid "Upload"
+msgstr "Oplægge"
+
+#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+msgid "Crop"
+msgstr "Beskær"
+
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Ingen fil uploaded."
+
+#: actions/avatarsettings.php:332
+msgid "Pick a square area of the image to be your avatar"
+msgstr "Vælg en firkantet område af billedet til at være din avatar"
+
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+msgid "Lost our file data."
+msgstr "Mistede vores fil data."
+
+#: actions/avatarsettings.php:370
+msgid "Avatar updated."
+msgstr "Avatar opdateret."
+
+#: actions/avatarsettings.php:373
+msgid "Failed updating avatar."
+msgstr "Mislykket ajourføring af Avatar."
+
+#: actions/avatarsettings.php:397
+msgid "Avatar deleted."
+msgstr "Avatar slettet."
+
+#: actions/block.php:69
+msgid "You already blocked that user."
+msgstr "Du har allerede blokeret for denne bruger."
+
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+msgid "Block user"
+msgstr "Bloker bruger"
+
+#: actions/block.php:138
+msgid ""
+"Are you sure you want to block this user? Afterwards, they will be "
+"unsubscribed from you, unable to subscribe to you in the future, and you "
+"will not be notified of any @-replies from them."
+msgstr ""
+"Er du sikker på du vil blokere denne bruger? Bagefter vil de blive afmeldt "
+"fra dig, ude af stand til at abonnere på dig i fremtiden, og du vil ikke "
+"blive underrettet om nogen @-svar fra dem."
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
+#: actions/groupblock.php:178
+msgctxt "BUTTON"
+msgid "No"
+msgstr "Nej"
+
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
+msgid "Do not block this user"
+msgstr "Bloker ikke denne bruger"
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
+msgid "Yes"
+msgstr "Ja"
+
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
+msgid "Block this user"
+msgstr "Bloker denne bruger"
+
+#: actions/block.php:187
+msgid "Failed to save block information."
+msgstr "Kunne ikke gemme blokerings oplysninger."
+
+#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
+#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
+#: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
+#: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
+#: actions/groupmembers.php:83 actions/groupmembers.php:90
+#: actions/grouprss.php:98 actions/grouprss.php:105
+#: actions/groupunblock.php:86 actions/joingroup.php:82
+#: actions/joingroup.php:93 actions/leavegroup.php:82
+#: actions/leavegroup.php:93 actions/makeadmin.php:86
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
+msgid "No such group."
+msgstr "Ingen sådan gruppe."
+
+#: actions/blockedfromgroup.php:97
+#, php-format
+msgid "%s blocked profiles"
+msgstr "%s blokerede profiler"
+
+#: actions/blockedfromgroup.php:100
+#, php-format
+msgid "%1$s blocked profiles, page %2$d"
+msgstr "%1$s blokerede profiler, side %2$d"
+
+#: actions/blockedfromgroup.php:115
+msgid "A list of the users blocked from joining this group."
+msgstr "En liste over brugere blokeret fra at deltage i denne gruppe."
+
+#: actions/blockedfromgroup.php:288
+msgid "Unblock user from group"
+msgstr "Ophæv blokering af bruger fra gruppe"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
+msgid "Unblock"
+msgstr "Fjern blokering"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
+msgid "Unblock this user"
+msgstr "Fjern blokeringen af denne bruger"
+
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Post til %s"
+
+#: actions/confirmaddress.php:75
+msgid "No confirmation code."
+msgstr "Ingen bekræftelseskode."
+
+#: actions/confirmaddress.php:80
+msgid "Confirmation code not found."
+msgstr "Bekræftelseskode ikke fundet."
+
+#: actions/confirmaddress.php:85
+msgid "That confirmation code is not for you!"
+msgstr "Denne bekræftelseskode er ikke til dig!"
+
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, php-format
+msgid "Unrecognized address type %s."
+msgstr "Ukendte adresse type %s."
+
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
+msgid "That address has already been confirmed."
+msgstr "Denne adresse er allerede blevet bekræftet."
+
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
+msgid "Couldn't update user."
+msgstr "Kunne ikke opdatere brugeren."
+
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr "Kunne ikke slette e-mail bekræftelse."
+
+#: actions/confirmaddress.php:146
+msgid "Confirm address"
+msgstr "Bekræft adresse"
+
+#: actions/confirmaddress.php:161
+#, php-format
+msgid "The address \"%s\" has been confirmed for your account."
+msgstr "Adressen \"%s\" er blevet bekræftet for din konto."
+
+#: actions/conversation.php:99
+msgid "Conversation"
+msgstr "Samtale"
+
+#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
+msgid "Notices"
+msgstr "Bekendtgørelser"
+
+#: actions/deleteapplication.php:63
+msgid "You must be logged in to delete an application."
+msgstr "Du skal være logget ind for at slette et program."
+
+#: actions/deleteapplication.php:71
+msgid "Application not found."
+msgstr "Program ikke fundet."
+
+#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#: actions/showapplication.php:94
+msgid "You are not the owner of this application."
+msgstr "Du er ikke ejer af dette program."
+
+#: actions/deleteapplication.php:102 actions/editapplication.php:127
+#: actions/newapplication.php:110 actions/showapplication.php:118
+#: lib/action.php:1263
+msgid "There was a problem with your session token."
+msgstr "Der var et problem med din session token."
+
+#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+msgid "Delete application"
+msgstr "Slet program"
+
+#: actions/deleteapplication.php:149
+msgid ""
+"Are you sure you want to delete this application? This will clear all data "
+"about the application from the database, including all existing user "
+"connections."
+msgstr ""
+"Er du sikker på du vil slette dette program? Dette vil slette alle data om "
+"anvendelsen fra databasen, herunder alle eksisterende bruger indstillinger."
+
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
+msgid "Do not delete this application"
+msgstr "Slet ikke dette program"
+
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
+msgid "Delete this application"
+msgstr "Slet dette program"
+
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
+#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
+#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#: actions/tagother.php:33 actions/unsubscribe.php:52
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
+#: lib/settingsaction.php:72
+msgid "Not logged in."
+msgstr "Ikke logget ind"
+
+#: actions/deletenotice.php:71
+msgid "Can't delete this notice."
+msgstr "Kan ikke slette denne meddelelse."
+
+#: actions/deletenotice.php:103
+msgid ""
+"You are about to permanently delete a notice. Once this is done, it cannot "
+"be undone."
+msgstr ""
+"Du er ved permanent at slette en meddelelse. NÃ¥r dette er gjort, kan det "
+"ikke fortrydes."
+
+#: actions/deletenotice.php:109 actions/deletenotice.php:141
+msgid "Delete notice"
+msgstr "Slet meddelelse"
+
+#: actions/deletenotice.php:144
+msgid "Are you sure you want to delete this notice?"
+msgstr "Er du sikker på du vil slette denne meddelelse?"
+
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
+msgid "Do not delete this notice"
+msgstr "Slet ikke denne meddelelse"
+
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
+msgid "Delete this notice"
+msgstr "Slet denne meddelelse"
+
+#: actions/deleteuser.php:67
+msgid "You cannot delete users."
+msgstr "Du kan ikke slette brugere."
+
+#: actions/deleteuser.php:74
+msgid "You can only delete local users."
+msgstr "Du kan kun slette de lokale brugere."
+
+#: actions/deleteuser.php:110 actions/deleteuser.php:133
+msgid "Delete user"
+msgstr "Slet bruger"
+
+#: actions/deleteuser.php:136
+msgid ""
+"Are you sure you want to delete this user? This will clear all data about "
+"the user from the database, without a backup."
+msgstr ""
+"Er du sikker på du vil slette denne bruger? Dette vil slette alle data om "
+"brugeren fra databasen, uden en sikkerhedskopi."
+
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
+msgid "Delete this user"
+msgstr "Slet denne bruger"
+
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
+#: lib/groupnav.php:119
+msgid "Design"
+msgstr "Design"
+
+#: actions/designadminpanel.php:74
+msgid "Design settings for this StatusNet site."
+msgstr "Design indstillinger for dette StatusNet site."
+
+#: actions/designadminpanel.php:318
+msgid "Invalid logo URL."
+msgstr "Ugyldig logo URL."
+
+#: actions/designadminpanel.php:322
+#, php-format
+msgid "Theme not available: %s."
+msgstr "Tema ikke tilgængelige: %s."
+
+#: actions/designadminpanel.php:426
+msgid "Change logo"
+msgstr "Skift logo"
+
+#: actions/designadminpanel.php:431
+msgid "Site logo"
+msgstr "Site logo"
+
+#: actions/designadminpanel.php:443
+msgid "Change theme"
+msgstr "Skift tema"
+
+#: actions/designadminpanel.php:460
+msgid "Site theme"
+msgstr "Site tema"
+
+#: actions/designadminpanel.php:461
+msgid "Theme for the site."
+msgstr "Tema for webstedet."
+
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Brugerdefineret tema"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Du kan uploade en brugerdefineret StatusNet tema som en. ZIP arkiv."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
+msgid "Change background image"
+msgstr "Skift baggrundsbillede"
+
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
+#: lib/designsettings.php:178
+msgid "Background"
+msgstr "Baggrund"
+
+#: actions/designadminpanel.php:496
+#, php-format
+msgid ""
+"You can upload a background image for the site. The maximum file size is %1"
+"$s."
+msgstr ""
+"Du kan uploade et baggrundsbillede til webstedet. Den maksimale filstørrelse "
+"er %1$s."
+
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
+msgid "On"
+msgstr "Til"
+
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
+msgid "Off"
+msgstr "Fra"
+
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
+msgid "Turn background image on or off."
+msgstr "Slå baggrundsbilledet til eller fra."
+
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
+msgid "Tile background image"
+msgstr "Tile baggrundsbillede"
+
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
+msgid "Change colours"
+msgstr "Skift farver"
+
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
+msgid "Content"
+msgstr "Indhold"
+
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
+msgid "Sidebar"
+msgstr "Sidebar"
+
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
+msgid "Text"
+msgstr "Tekst"
+
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
+msgid "Links"
+msgstr "Henvisninger"
+
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avanceret"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Personlig CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
+msgid "Use defaults"
+msgstr "Brug standardindstillinger"
+
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
+msgid "Restore default designs"
+msgstr "Gendan standard indstillinger"
+
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
+msgid "Reset back to default"
+msgstr "Nulstil til standard værdier"
+
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
+#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
+#: lib/designsettings.php:256 lib/groupeditform.php:202
+msgid "Save"
+msgstr "Gem"
+
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
+msgid "Save design"
+msgstr "Gem design"
+
+#: actions/disfavor.php:81
+msgid "This notice is not a favorite!"
+msgstr "Denne meddelelse er ikke en favorit!"
+
+#: actions/disfavor.php:94
+msgid "Add to favorites"
+msgstr "Tilføj til favoritter"
+
+#: actions/doc.php:158
+#, php-format
+msgid "No such document \"%s\""
+msgstr "Ingen sådan dokument \"%s\""
+
+#: actions/editapplication.php:54
+msgid "Edit Application"
+msgstr "Rediger program"
+
+#: actions/editapplication.php:66
+msgid "You must be logged in to edit an application."
+msgstr "Du skal være logget ind for at redigere et program."
+
+#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
+#: actions/showapplication.php:87
+msgid "No such application."
+msgstr "Ingen sådan program"
+
+#: actions/editapplication.php:161
+msgid "Use this form to edit your application."
+msgstr "Brug denne formular til at redigere dit program."
+
+#: actions/editapplication.php:177 actions/newapplication.php:159
+msgid "Name is required."
+msgstr "Navn er påkrævet."
+
+#: actions/editapplication.php:180 actions/newapplication.php:165
+msgid "Name is too long (max 255 chars)."
+msgstr "Navnet er for langt (max 255 tegn)."
+
+#: actions/editapplication.php:183 actions/newapplication.php:162
+msgid "Name already in use. Try another one."
+msgstr "Navn allerede i brug. Prøv et andet."
+
+#: actions/editapplication.php:186 actions/newapplication.php:168
+msgid "Description is required."
+msgstr "Beskrivelse er påkrævet."
+
+#: actions/editapplication.php:194
+msgid "Source URL is too long."
+msgstr "Kilde-URL er for lang."
+
+#: actions/editapplication.php:200 actions/newapplication.php:185
+msgid "Source URL is not valid."
+msgstr "Kilde-URL er ikke gyldig."
+
+#: actions/editapplication.php:203 actions/newapplication.php:188
+msgid "Organization is required."
+msgstr "Organisationen er påkrævet."
+
+#: actions/editapplication.php:206 actions/newapplication.php:191
+msgid "Organization is too long (max 255 chars)."
+msgstr "Organisationen er for lang (max 255 tegn)."
+
+#: actions/editapplication.php:209 actions/newapplication.php:194
+msgid "Organization homepage is required."
+msgstr "Organisationens hjemmeside er påkrævet."
+
+#: actions/editapplication.php:218 actions/newapplication.php:206
+msgid "Callback is too long."
+msgstr "Callback er for lang."
+
+#: actions/editapplication.php:225 actions/newapplication.php:215
+msgid "Callback URL is not valid."
+msgstr "Tilbagekaldswebadresse er ikke gyldig."
+
+#: actions/editapplication.php:258
+msgid "Could not update application."
+msgstr "Kunne ikke opdatere programmet."
+
+#: actions/editgroup.php:56
+#, php-format
+msgid "Edit %s group"
+msgstr "Rediger %s gruppe"
+
+#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
+msgid "You must be logged in to create a group."
+msgstr "Du skal være logget ind for at oprette en gruppe."
+
+#: actions/editgroup.php:107 actions/editgroup.php:172
+#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
+msgid "You must be an admin to edit the group."
+msgstr "Du skal være administrator for at redigere gruppen."
+
+#: actions/editgroup.php:158
+msgid "Use this form to edit the group."
+msgstr "Brug denne formular til at redigere gruppen."
+
+#: actions/editgroup.php:205 actions/newgroup.php:145
+#, php-format
+msgid "description is too long (max %d chars)."
+msgstr "Beskrivelsen er for lang (max %d tegn)."
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ugyldigt alias: \"%s\"."
+
+#: actions/editgroup.php:258
+msgid "Could not update group."
+msgstr "Kunne ikke opdatere gruppe."
+
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
+msgid "Could not create aliases."
+msgstr "Kunne ikke oprette aliaser."
+
+#: actions/editgroup.php:280
+msgid "Options saved."
+msgstr "Valg gemt."
+
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
+msgid "Email settings"
+msgstr "Email indstillinger"
+
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
+#, php-format
+msgid "Manage how you get email from %%site.name%%."
+msgstr "Administrer hvordan du får e-mail fra %%site.name%%."
+
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-mail adresse"
+
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
+msgid "Current confirmed email address."
+msgstr "Nuværende bekræftet email-adresse."
+
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
+msgid "Remove"
+msgstr "Fjern"
+
+#: actions/emailsettings.php:122
+msgid ""
+"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
+"a message with further instructions."
+msgstr ""
+"Afventer bekræftelse på denne adresse. Tjek din indbakke (og spam box!) for "
+"en besked med yderligere instruktioner."
+
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "Afbryd"
+
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
+msgid "Email address, like \"UserName@example.org\""
+msgstr "E-mail adresse, som \"UserName@example.org\""
+
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
+msgid "Add"
+msgstr "Tilføj"
+
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
+msgid "Incoming email"
+msgstr "Indgående e-mail"
+
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
+msgid "Send email to this address to post new notices."
+msgstr "Send e-mail til denne adresse for at skrive nye bekendtgørelser."
+
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
+msgid "Make a new email address for posting to; cancels the old one."
+msgstr ""
+"Opret en ny e-mail adresse til postering af beskeder; annullerer den gamle."
+
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
+msgid "New"
+msgstr "Ny"
+
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Email indstillinger"
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
+msgid "Send me notices of new subscriptions through email."
+msgstr "Send mig meddelelser om nye abonnementer via e-mail."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
+msgid "Send me email when someone adds my notice as a favorite."
+msgstr "Send mig email, når nogen har tilføjet min meddelelse som en favorit."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
+msgid "Send me email when someone sends me a private message."
+msgstr "Send mig email, når nogen sender mig en privat besked."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
+msgid "Send me email when someone sends me an \"@-reply\"."
+msgstr "Send mig email, når nogen sender mig et \"@-svar\"."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
+msgid "Allow friends to nudge me and send me an email."
+msgstr "Tillad venner at puffe mig og at sende mig en e-mail."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
+msgid "I want to post notices by email."
+msgstr "Jeg ønsker at sende meddelelser via e-mail."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
+msgid "Publish a MicroID for my email address."
+msgstr "Udgiv et MicroID til min email adresse."
+
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Email indstillinger gemt."
+
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
+msgid "No email address."
+msgstr "Ingen e-mail-adresse."
+
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
+msgid "Cannot normalize that email address"
+msgstr "Kan ikke normalisere denne e-mail adresse"
+
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
+#: actions/siteadminpanel.php:144
+msgid "Not a valid email address."
+msgstr "Ikke en gyldig e-mail adresse."
+
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
+msgid "That is already your email address."
+msgstr "Det er allerede din e-mail adresse."
+
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
+msgid "That email address already belongs to another user."
+msgstr "Denne e-mail adresse tilhører allerede en anden bruger."
+
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
+msgid "Couldn't insert confirmation code."
+msgstr "Kunne ikke indsætte bekræftelseskode."
+
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
+msgid ""
+"A confirmation code was sent to the email address you added. Check your "
+"inbox (and spam box!) for the code and instructions on how to use it."
+msgstr ""
+"En bekræftelse kode blev sendt til den e-mail adresse, du har tilføjet. Tjek "
+"din indbakke (og spam box!) for koden og vejledning om, hvordan man bruger "
+"den."
+
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
+msgid "No pending confirmation to cancel."
+msgstr "Ingen afventende bekræftelse at annullere."
+
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Det er den forkerte e-mail adresse."
+
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Email bekræftelse aflyst."
+
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
+msgid "That is not your email address."
+msgstr "Det er ikke din e-mail adresse."
+
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "E-mail adressen blev fjernet."
+
+#: actions/emailsettings.php:493 actions/smssettings.php:568
+msgid "No incoming email address."
+msgstr "Ingen indkommende e-mail adresse."
+
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
+msgid "Couldn't update user record."
+msgstr "Kunne ikke opdatere bruger oplysninger."
+
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
+msgid "Incoming email address removed."
+msgstr "Indgående e-mail adresse fjernet."
+
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
+msgid "New incoming email address added."
+msgstr "Ny indkommende e-mail adresse tilføjet."
+
+#: actions/favor.php:79
+msgid "This notice is already a favorite!"
+msgstr "Denne meddelelse er allerede en favorit!"
+
+#: actions/favor.php:92 lib/disfavorform.php:140
+msgid "Disfavor favorite"
+msgstr "Fjern markering som favorit"
+
+#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: lib/publicgroupnav.php:93
+msgid "Popular notices"
+msgstr "Populære bekendtgørelser"
+
+#: actions/favorited.php:67
+#, php-format
+msgid "Popular notices, page %d"
+msgstr "Populære bekendtgørelser, side %d"
+
+#: actions/favorited.php:79
+msgid "The most popular notices on the site right now."
+msgstr "De mest populære opslag på hjemmesiden lige nu."
+
+#: actions/favorited.php:150
+msgid "Favorite notices appear on this page but no one has favorited one yet."
+msgstr ""
+"Favorit bekendtgørelser vises på denne side, men ingen har markeret en "
+"favorit endnu."
+
+#: actions/favorited.php:153
+msgid ""
+"Be the first to add a notice to your favorites by clicking the fave button "
+"next to any notice you like."
+msgstr ""
+"Vær den første til at tilføje en meddelelse til dine favoritter ved at "
+"klikke på favorit knappen ved siden af en meddelelse, du syntes om."
+
+#: actions/favorited.php:156
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to add a "
+"notice to your favorites!"
+msgstr ""
+"Hvorfor ikke [registrere en konto] (%%action.register%%), og vær den første "
+"til at tilføje en meddelelse til dine favoritter!"
+
+#: actions/favoritesrss.php:111 actions/showfavorites.php:77
+#: lib/personalgroupnav.php:115
+#, php-format
+msgid "%s's favorite notices"
+msgstr "%s's favorit bekendtgørelser"
+
+#: actions/favoritesrss.php:115
+#, php-format
+msgid "Updates favored by %1$s on %2$s!"
+msgstr "Opdateringer markeret som favorit af %1$s på %2$s!"
+
+#: actions/featured.php:69 lib/featureduserssection.php:87
+#: lib/publicgroupnav.php:89
+msgid "Featured users"
+msgstr "Udvalgte brugere"
+
+#: actions/featured.php:71
+#, php-format
+msgid "Featured users, page %d"
+msgstr "Udvalgte brugere, side %d"
+
+#: actions/featured.php:99
+#, php-format
+msgid "A selection of some great users on %s"
+msgstr "Et udvalg af nogle top brugere på %s"
+
+#: actions/file.php:34
+msgid "No notice ID."
+msgstr "Ingen meddelelses ID."
+
+#: actions/file.php:38
+msgid "No notice."
+msgstr "Ingen meddelelse."
+
+#: actions/file.php:42
+msgid "No attachments."
+msgstr "Ingen vedhæftede filer."
+
+#: actions/file.php:51
+msgid "No uploaded attachments."
+msgstr "Ingen uploaded vedhæftede filer."
+
+#: actions/finishremotesubscribe.php:69
+msgid "Not expecting this response!"
+msgstr "Forventer ikke dette svar!"
+
+#: actions/finishremotesubscribe.php:80
+msgid "User being listened to does not exist."
+msgstr "Brugeren som lyttes til, findes ikke."
+
+#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
+msgid "You can use the local subscription!"
+msgstr "Du kan bruge det lokale abonnement!"
+
+#: actions/finishremotesubscribe.php:99
+msgid "That user has blocked you from subscribing."
+msgstr "Denne bruger har blokeret dig fra at abonnere."
+
+#: actions/finishremotesubscribe.php:110
+msgid "You are not authorized."
+msgstr "Du har ikke tilladelse."
+
+#: actions/finishremotesubscribe.php:113
+msgid "Could not convert request token to access token."
+msgstr "Kunne ikke konvertere anmodnings-token til et adgangs-token."
+
+#: actions/finishremotesubscribe.php:118
+msgid "Remote service uses unknown version of OMB protocol."
+msgstr "Fjerntjenesten bruger en ukendt version af 0MB protokol."
+
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Fejl ved opdatering af fjernbetjeningsprofil."
+
+#: actions/getfile.php:79
+msgid "No such file."
+msgstr "Ingen sådan fil."
+
+#: actions/getfile.php:83
+msgid "Cannot read file."
+msgstr "Kan ikke læse filen."
+
+#: actions/grantrole.php:62 actions/revokerole.php:62
+msgid "Invalid role."
+msgstr "Ugyldig rolle."
+
+#: actions/grantrole.php:66 actions/revokerole.php:66
+msgid "This role is reserved and cannot be set."
+msgstr "Denne rolle er reserveret og kan ikke indstilles."
+
+#: actions/grantrole.php:75
+msgid "You cannot grant user roles on this site."
+msgstr "Du kan ikke tildele brugerroller på dette site."
+
+#: actions/grantrole.php:82
+msgid "User already has this role."
+msgstr "Bruger har allerede denne rolle."
+
+#: actions/groupblock.php:71 actions/groupunblock.php:71
+#: actions/makeadmin.php:71 actions/subedit.php:46
+#: lib/profileformaction.php:79
+msgid "No profile specified."
+msgstr "Ingen profil specificeret."
+
+#: actions/groupblock.php:76 actions/groupunblock.php:76
+#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+msgid "No profile with that ID."
+msgstr "Ingen profil med det ID."
+
+#: actions/groupblock.php:81 actions/groupunblock.php:81
+#: actions/makeadmin.php:81
+msgid "No group specified."
+msgstr "Ingen gruppe angivet."
+
+#: actions/groupblock.php:91
+msgid "Only an admin can block group members."
+msgstr "Kun en administrator kan blokere gruppens medlemmer."
+
+#: actions/groupblock.php:95
+msgid "User is already blocked from group."
+msgstr "Bruger er allerede blokeret fra gruppen."
+
+#: actions/groupblock.php:100
+msgid "User is not a member of group."
+msgstr "Brugeren er ikke medlem af gruppen."
+
+#: actions/groupblock.php:134 actions/groupmembers.php:360
+msgid "Block user from group"
+msgstr "Bloker bruger fra gruppe"
+
+#: actions/groupblock.php:160
+#, php-format
+msgid ""
+"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
+"will be removed from the group, unable to post, and unable to subscribe to "
+"the group in the future."
+msgstr ""
+"Er du sikker på du vil blokere bruger \"%1$s\" fra gruppen \"%2$s\"? De vil "
+"blive fjernet fra gruppen, ude af stand til at postere, og ude af stand til "
+"at tilmelde sig gruppen i fremtiden."
+
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
+msgid "Do not block this user from this group"
+msgstr "Bloker ikke denne bruger fra denne gruppe"
+
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
+msgid "Block this user from this group"
+msgstr "Bloker denne bruger fra denne gruppe"
+
+#: actions/groupblock.php:206
+msgid "Database error blocking user from group."
+msgstr "Database fejl ved blokering af bruger fra gruppen."
+
+#: actions/groupbyid.php:74 actions/userbyid.php:70
+msgid "No ID."
+msgstr "Ingen ID."
+
+#: actions/groupdesignsettings.php:68
+msgid "You must be logged in to edit a group."
+msgstr "Du skal være logget på for at redigere en gruppe."
+
+#: actions/groupdesignsettings.php:144
+msgid "Group design"
+msgstr "Gruppe design"
+
+#: actions/groupdesignsettings.php:155
+msgid ""
+"Customize the way your group looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+"Tilpas den måde din gruppe vises på, med et baggrundsbillede og en "
+"farvepalet efter dit valg."
+
+#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
+#: lib/designsettings.php:391 lib/designsettings.php:413
+msgid "Couldn't update your design."
+msgstr "Kunne ikke opdatere dit design."
+
+#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
+msgid "Design preferences saved."
+msgstr "Design præferencer gemt."
+
+#: actions/grouplogo.php:142 actions/grouplogo.php:195
+msgid "Group logo"
+msgstr "Gruppe logo"
+
+#: actions/grouplogo.php:153
+#, php-format
+msgid ""
+"You can upload a logo image for your group. The maximum file size is %s."
+msgstr ""
+"Du kan uploade et logo billede til din gruppe. Den maksimale filstørrelse er "
+"%s."
+
+#: actions/grouplogo.php:365
+msgid "Pick a square area of the image to be the logo."
+msgstr "Vælg en firkantet område af billedet, der skal logoet."
+
+#: actions/grouplogo.php:399
+msgid "Logo updated."
+msgstr "Logo opdateret."
+
+#: actions/grouplogo.php:401
+msgid "Failed updating logo."
+msgstr "Mislykket ajourføring af logo."
+
+#: actions/groupmembers.php:100 lib/groupnav.php:92
+#, php-format
+msgid "%s group members"
+msgstr "%s gruppe medlemmer"
+
+#: actions/groupmembers.php:103
+#, php-format
+msgid "%1$s group members, page %2$d"
+msgstr ""
+
+#: actions/groupmembers.php:118
+msgid "A list of the users in this group."
+msgstr ""
+
+#: actions/groupmembers.php:182 lib/groupnav.php:107
+msgid "Admin"
+msgstr ""
+
+#: actions/groupmembers.php:392 lib/blockform.php:69
+msgid "Block"
+msgstr ""
+
+#: actions/groupmembers.php:487
+msgid "Make user an admin of the group"
+msgstr ""
+
+#: actions/groupmembers.php:519
+msgid "Make Admin"
+msgstr ""
+
+#: actions/groupmembers.php:519
+msgid "Make this user an admin"
+msgstr ""
+
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
+#, php-format
+msgid "%s timeline"
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
+#, php-format
+msgid "Updates from members of %1$s on %2$s!"
+msgstr ""
+
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
+#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+msgid "Groups"
+msgstr ""
+
+#: actions/groups.php:64
+#, php-format
+msgid "Groups, page %d"
+msgstr ""
+
+#: actions/groups.php:90
+#, php-format
+msgid ""
+"%%%%site.name%%%% groups let you find and talk with people of similar "
+"interests. After you join a group you can send messages to all other members "
+"using the syntax \"!groupname\". Don't see a group you like? Try [searching "
+"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
+"%%%%)"
+msgstr ""
+
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
+msgid "Create a new group"
+msgstr ""
+
+#: actions/groupsearch.php:52
+#, php-format
+msgid ""
+"Search for groups on %%site.name%% by their name, location, or description. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/groupsearch.php:58
+msgid "Group search"
+msgstr ""
+
+#: actions/groupsearch.php:79 actions/noticesearch.php:117
+#: actions/peoplesearch.php:83
+msgid "No results."
+msgstr ""
+
+#: actions/groupsearch.php:82
+#, php-format
+msgid ""
+"If you can't find the group you're looking for, you can [create it](%%action."
+"newgroup%%) yourself."
+msgstr ""
+
+#: actions/groupsearch.php:85
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and [create the group](%%"
+"action.newgroup%%) yourself!"
+msgstr ""
+
+#: actions/groupunblock.php:91
+msgid "Only an admin can unblock group members."
+msgstr ""
+
+#: actions/groupunblock.php:95
+msgid "User is not blocked from group."
+msgstr ""
+
+#: actions/groupunblock.php:128 actions/unblock.php:86
+msgid "Error removing the block."
+msgstr ""
+
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
+msgid "IM settings"
+msgstr ""
+
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
+#, php-format
+msgid ""
+"You can send and receive notices through Jabber/GTalk [instant messages](%%"
+"doc.im%%). Configure your address and settings below."
+msgstr ""
+
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
+msgid "IM is not available."
+msgstr ""
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr ""
+
+#: actions/imsettings.php:113
+msgid "Current confirmed Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
+#, php-format
+msgid ""
+"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
+"message with further instructions. (Did you add %s to your buddy list?)"
+msgstr ""
+
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
+#, php-format
+msgid ""
+"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
+"add %s to your buddy list in your IM client or on GTalk."
+msgstr ""
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
+msgid "Send me notices through Jabber/GTalk."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
+msgid "Post a notice when my Jabber/GTalk status changes."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
+msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
+msgid "Publish a MicroID for my Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
+msgid "No Jabber ID."
+msgstr ""
+
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
+msgid "Cannot normalize that Jabber ID"
+msgstr ""
+
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
+msgid "Not a valid Jabber ID"
+msgstr ""
+
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
+msgid "That is already your Jabber ID."
+msgstr ""
+
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
+msgid "Jabber ID already belongs to another user."
+msgstr ""
+
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
+#, php-format
+msgid ""
+"A confirmation code was sent to the IM address you added. You must approve %"
+"s for sending messages to you."
+msgstr ""
+
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr ""
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr ""
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
+msgid "That is not your Jabber ID."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr ""
+
+#: actions/inbox.php:59
+#, php-format
+msgid "Inbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/inbox.php:62
+#, php-format
+msgid "Inbox for %s"
+msgstr ""
+
+#: actions/inbox.php:115
+msgid "This is your inbox, which lists your incoming private messages."
+msgstr ""
+
+#: actions/invite.php:39
+msgid "Invites have been disabled."
+msgstr ""
+
+#: actions/invite.php:41
+#, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr ""
+
+#: actions/invite.php:72
+#, php-format
+msgid "Invalid email address: %s"
+msgstr ""
+
+#: actions/invite.php:110
+msgid "Invitation(s) sent"
+msgstr ""
+
+#: actions/invite.php:112
+msgid "Invite new users"
+msgstr ""
+
+#: actions/invite.php:128
+msgid "You are already subscribed to these users:"
+msgstr ""
+
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
+#, php-format
+msgid "%1$s (%2$s)"
+msgstr ""
+
+#: actions/invite.php:136
+msgid ""
+"These people are already users and you were automatically subscribed to them:"
+msgstr ""
+
+#: actions/invite.php:144
+msgid "Invitation(s) sent to the following people:"
+msgstr ""
+
+#: actions/invite.php:150
+msgid ""
+"You will be notified when your invitees accept the invitation and register "
+"on the site. Thanks for growing the community!"
+msgstr ""
+
+#: actions/invite.php:162
+msgid ""
+"Use this form to invite your friends and colleagues to use this service."
+msgstr ""
+
+#: actions/invite.php:187
+msgid "Email addresses"
+msgstr ""
+
+#: actions/invite.php:189
+msgid "Addresses of friends to invite (one per line)"
+msgstr ""
+
+#: actions/invite.php:192
+msgid "Personal message"
+msgstr ""
+
+#: actions/invite.php:194
+msgid "Optionally add a personal message to the invitation."
+msgstr ""
+
+#. TRANS: Send button for inviting friends
+#: actions/invite.php:198
+msgctxt "BUTTON"
+msgid "Send"
+msgstr ""
+
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
+#, php-format
+msgid "%1$s has invited you to join them on %2$s"
+msgstr ""
+
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
+#, php-format
+msgid ""
+"%1$s has invited you to join them on %2$s (%3$s).\n"
+"\n"
+"%2$s is a micro-blogging service that lets you keep up-to-date with people "
+"you know and people who interest you.\n"
+"\n"
+"You can also share news about yourself, your thoughts, or your life online "
+"with people who know about you. It's also great for meeting new people who "
+"share your interests.\n"
+"\n"
+"%1$s said:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see %1$s's profile page on %2$s here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"If you'd like to try the service, click on the link below to accept the "
+"invitation.\n"
+"\n"
+"%6$s\n"
+"\n"
+"If not, you can ignore this message. Thanks for your patience and your "
+"time.\n"
+"\n"
+"Sincerely, %2$s\n"
+msgstr ""
+
+#: actions/joingroup.php:60
+msgid "You must be logged in to join a group."
+msgstr ""
+
+#: actions/joingroup.php:88 actions/leavegroup.php:88
+msgid "No nickname or ID."
+msgstr ""
+
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
+#, php-format
+msgid "%1$s joined group %2$s"
+msgstr ""
+
+#: actions/leavegroup.php:60
+msgid "You must be logged in to leave a group."
+msgstr ""
+
+#: actions/leavegroup.php:100 lib/command.php:373
+msgid "You are not a member of that group."
+msgstr ""
+
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
+msgid "%1$s left group %2$s"
+msgstr ""
+
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
+msgid "Already logged in."
+msgstr ""
+
+#: actions/login.php:148
+msgid "Incorrect username or password."
+msgstr ""
+
+#: actions/login.php:154 actions/otp.php:120
+msgid "Error setting user. You are probably not authorized."
+msgstr ""
+
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
+msgid "Login"
+msgstr ""
+
+#: actions/login.php:249
+msgid "Login to site"
+msgstr ""
+
+#: actions/login.php:258 actions/register.php:485
+msgid "Remember me"
+msgstr ""
+
+#: actions/login.php:259 actions/register.php:487
+msgid "Automatically login in the future; not for shared computers!"
+msgstr ""
+
+#: actions/login.php:269
+msgid "Lost or forgotten password?"
+msgstr ""
+
+#: actions/login.php:288
+msgid ""
+"For security reasons, please re-enter your user name and password before "
+"changing your settings."
+msgstr ""
+
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr ""
+
+#: actions/login.php:295
+#, php-format
+msgid ""
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr ""
+
+#: actions/makeadmin.php:92
+msgid "Only an admin can make another user an admin."
+msgstr ""
+
+#: actions/makeadmin.php:96
+#, php-format
+msgid "%1$s is already an admin for group \"%2$s\"."
+msgstr ""
+
+#: actions/makeadmin.php:133
+#, php-format
+msgid "Can't get membership record for %1$s in group %2$s."
+msgstr ""
+
+#: actions/makeadmin.php:146
+#, php-format
+msgid "Can't make %1$s an admin for group %2$s."
+msgstr ""
+
+#: actions/microsummary.php:69
+msgid "No current status."
+msgstr ""
+
+#: actions/newapplication.php:52
+msgid "New Application"
+msgstr ""
+
+#: actions/newapplication.php:64
+msgid "You must be logged in to register an application."
+msgstr ""
+
+#: actions/newapplication.php:143
+msgid "Use this form to register a new application."
+msgstr ""
+
+#: actions/newapplication.php:176
+msgid "Source URL is required."
+msgstr ""
+
+#: actions/newapplication.php:258 actions/newapplication.php:267
+msgid "Could not create application."
+msgstr ""
+
+#: actions/newgroup.php:53
+msgid "New group"
+msgstr ""
+
+#: actions/newgroup.php:110
+msgid "Use this form to create a new group."
+msgstr ""
+
+#: actions/newmessage.php:71 actions/newmessage.php:231
+msgid "New message"
+msgstr ""
+
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
+msgid "You can't send a message to this user."
+msgstr ""
+
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
+msgid "No content!"
+msgstr ""
+
+#: actions/newmessage.php:158
+msgid "No recipient specified."
+msgstr ""
+
+#: actions/newmessage.php:164 lib/command.php:484
+msgid ""
+"Don't send a message to yourself; just say it to yourself quietly instead."
+msgstr ""
+
+#: actions/newmessage.php:181
+msgid "Message sent"
+msgstr ""
+
+#: actions/newmessage.php:185
+#, php-format
+msgid "Direct message to %s sent."
+msgstr ""
+
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
+msgid "Ajax Error"
+msgstr ""
+
+#: actions/newnotice.php:69
+msgid "New notice"
+msgstr ""
+
+#: actions/newnotice.php:217
+msgid "Notice posted"
+msgstr ""
+
+#: actions/noticesearch.php:68
+#, php-format
+msgid ""
+"Search for notices on %%site.name%% by their contents. Separate search terms "
+"by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/noticesearch.php:78
+msgid "Text search"
+msgstr ""
+
+#: actions/noticesearch.php:91
+#, php-format
+msgid "Search results for \"%1$s\" on %2$s"
+msgstr ""
+
+#: actions/noticesearch.php:121
+#, php-format
+msgid ""
+"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearch.php:124
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and be the first to "
+"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearchrss.php:96
+#, php-format
+msgid "Updates with \"%s\""
+msgstr ""
+
+#: actions/noticesearchrss.php:98
+#, php-format
+msgid "Updates matching search term \"%1$s\" on %2$s!"
+msgstr ""
+
+#: actions/nudge.php:85
+msgid ""
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+msgstr ""
+
+#: actions/nudge.php:94
+msgid "Nudge sent"
+msgstr ""
+
+#: actions/nudge.php:97
+msgid "Nudge sent!"
+msgstr ""
+
+#: actions/oauthappssettings.php:59
+msgid "You must be logged in to list your applications."
+msgstr ""
+
+#: actions/oauthappssettings.php:74
+msgid "OAuth applications"
+msgstr ""
+
+#: actions/oauthappssettings.php:85
+msgid "Applications you have registered"
+msgstr ""
+
+#: actions/oauthappssettings.php:135
+#, php-format
+msgid "You have not registered any applications yet."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:72
+msgid "Connected applications"
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:83
+msgid "You have allowed the following applications to access you account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:175
+msgid "You are not a user of that application."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:186
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:198
+msgid "You have not authorized any applications to use your account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:211
+msgid "Developers can edit the registration settings for their applications "
+msgstr ""
+
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr ""
+
+#: actions/oembed.php:87 actions/shownotice.php:175
+#, php-format
+msgid "%1$s's status on %2$s"
+msgstr ""
+
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr ""
+
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
+
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
+msgid "Not a supported data format."
+msgstr ""
+
+#: actions/opensearch.php:64
+msgid "People Search"
+msgstr ""
+
+#: actions/opensearch.php:67
+msgid "Notice Search"
+msgstr ""
+
+#: actions/othersettings.php:60
+msgid "Other settings"
+msgstr ""
+
+#: actions/othersettings.php:71
+msgid "Manage various other options."
+msgstr ""
+
+#: actions/othersettings.php:108
+msgid " (free service)"
+msgstr ""
+
+#: actions/othersettings.php:116
+msgid "Shorten URLs with"
+msgstr ""
+
+#: actions/othersettings.php:117
+msgid "Automatic shortening service to use."
+msgstr ""
+
+#: actions/othersettings.php:122
+msgid "View profile designs"
+msgstr ""
+
+#: actions/othersettings.php:123
+msgid "Show or hide profile designs."
+msgstr ""
+
+#: actions/othersettings.php:153
+msgid "URL shortening service is too long (max 50 chars)."
+msgstr ""
+
+#: actions/otp.php:69
+msgid "No user ID specified."
+msgstr ""
+
+#: actions/otp.php:83
+msgid "No login token specified."
+msgstr ""
+
+#: actions/otp.php:90
+msgid "No login token requested."
+msgstr ""
+
+#: actions/otp.php:95
+msgid "Invalid login token specified."
+msgstr ""
+
+#: actions/otp.php:104
+msgid "Login token expired."
+msgstr ""
+
+#: actions/outbox.php:58
+#, php-format
+msgid "Outbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/outbox.php:61
+#, php-format
+msgid "Outbox for %s"
+msgstr ""
+
+#: actions/outbox.php:116
+msgid "This is your outbox, which lists private messages you have sent."
+msgstr ""
+
+#: actions/passwordsettings.php:58
+msgid "Change password"
+msgstr ""
+
+#: actions/passwordsettings.php:69
+msgid "Change your password."
+msgstr ""
+
+#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+msgid "Password change"
+msgstr ""
+
+#: actions/passwordsettings.php:104
+msgid "Old password"
+msgstr ""
+
+#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+msgid "New password"
+msgstr ""
+
+#: actions/passwordsettings.php:109
+msgid "6 or more characters"
+msgstr ""
+
+#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
+#: actions/register.php:440
+msgid "Confirm"
+msgstr ""
+
+#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
+msgid "Same as password above"
+msgstr ""
+
+#: actions/passwordsettings.php:117
+msgid "Change"
+msgstr ""
+
+#: actions/passwordsettings.php:154 actions/register.php:237
+msgid "Password must be 6 or more characters."
+msgstr ""
+
+#: actions/passwordsettings.php:157 actions/register.php:240
+msgid "Passwords don't match."
+msgstr ""
+
+#: actions/passwordsettings.php:165
+msgid "Incorrect old password"
+msgstr ""
+
+#: actions/passwordsettings.php:181
+msgid "Error saving user; invalid."
+msgstr ""
+
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
+msgid "Can't save new password."
+msgstr ""
+
+#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+msgid "Password saved."
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
+msgid "Paths"
+msgstr ""
+
+#: actions/pathsadminpanel.php:70
+msgid "Path and server settings for this StatusNet site."
+msgstr ""
+
+#: actions/pathsadminpanel.php:157
+#, php-format
+msgid "Theme directory not readable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:163
+#, php-format
+msgid "Avatar directory not writable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:169
+#, php-format
+msgid "Background directory not writable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:177
+#, php-format
+msgid "Locales directory not readable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:183
+msgid "Invalid SSL server. The maximum length is 255 characters."
+msgstr ""
+
+#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+msgid "Site"
+msgstr ""
+
+#: actions/pathsadminpanel.php:238
+msgid "Server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:238
+msgid "Site's server hostname."
+msgstr ""
+
+#: actions/pathsadminpanel.php:242
+msgid "Path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:242
+msgid "Site path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Directory path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:250
+msgid "Fancy URLs"
+msgstr ""
+
+#: actions/pathsadminpanel.php:252
+msgid "Use fancy (more readable and memorable) URLs?"
+msgstr ""
+
+#: actions/pathsadminpanel.php:259
+msgid "Theme"
+msgstr ""
+
+#: actions/pathsadminpanel.php:264
+msgid "Theme server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:268
+msgid "Theme path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:272
+msgid "Theme directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:279
+msgid "Avatars"
+msgstr ""
+
+#: actions/pathsadminpanel.php:284
+msgid "Avatar server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:288
+msgid "Avatar path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:292
+msgid "Avatar directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:301
+msgid "Backgrounds"
+msgstr ""
+
+#: actions/pathsadminpanel.php:305
+msgid "Background server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:309
+msgid "Background path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:313
+msgid "Background directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:320
+msgid "SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+msgid "Never"
+msgstr ""
+
+#: actions/pathsadminpanel.php:324
+msgid "Sometimes"
+msgstr ""
+
+#: actions/pathsadminpanel.php:325
+msgid "Always"
+msgstr ""
+
+#: actions/pathsadminpanel.php:329
+msgid "Use SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:330
+msgid "When to use SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:335
+msgid "SSL server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:336
+msgid "Server to direct SSL requests to"
+msgstr ""
+
+#: actions/pathsadminpanel.php:352
+msgid "Save paths"
+msgstr ""
+
+#: actions/peoplesearch.php:52
+#, php-format
+msgid ""
+"Search for people on %%site.name%% by their name, location, or interests. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/peoplesearch.php:58
+msgid "People search"
+msgstr ""
+
+#: actions/peopletag.php:68
+#, php-format
+msgid "Not a valid people tag: %s."
+msgstr ""
+
+#: actions/peopletag.php:142
+#, php-format
+msgid "Users self-tagged with %1$s - page %2$d"
+msgstr ""
+
+#: actions/postnotice.php:95
+msgid "Invalid notice content."
+msgstr ""
+
+#: actions/postnotice.php:101
+#, php-format
+msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#: actions/profilesettings.php:60
+msgid "Profile settings"
+msgstr ""
+
+#: actions/profilesettings.php:71
+msgid ""
+"You can update your personal profile info here so people know more about you."
+msgstr ""
+
+#: actions/profilesettings.php:99
+msgid "Profile information"
+msgstr ""
+
+#: actions/profilesettings.php:108 lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr ""
+
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
+msgid "Full name"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
+msgid "Homepage"
+msgstr ""
+
+#: actions/profilesettings.php:117 actions/register.php:462
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr ""
+
+#: actions/profilesettings.php:122 actions/register.php:468
+#, php-format
+msgid "Describe yourself and your interests in %d chars"
+msgstr ""
+
+#: actions/profilesettings.php:125 actions/register.php:471
+msgid "Describe yourself and your interests"
+msgstr ""
+
+#: actions/profilesettings.php:127 actions/register.php:473
+msgid "Bio"
+msgstr ""
+
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:177
+#: lib/userprofile.php:165
+msgid "Location"
+msgstr ""
+
+#: actions/profilesettings.php:134 actions/register.php:480
+msgid "Where you are, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: actions/profilesettings.php:138
+msgid "Share my current location when posting notices"
+msgstr ""
+
+#: actions/profilesettings.php:145 actions/tagother.php:149
+#: actions/tagother.php:209 lib/subscriptionlist.php:106
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+msgid "Tags"
+msgstr ""
+
+#: actions/profilesettings.php:147
+msgid ""
+"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
+msgstr ""
+
+#: actions/profilesettings.php:151
+msgid "Language"
+msgstr ""
+
+#: actions/profilesettings.php:152
+msgid "Preferred language"
+msgstr ""
+
+#: actions/profilesettings.php:161
+msgid "Timezone"
+msgstr ""
+
+#: actions/profilesettings.php:162
+msgid "What timezone are you normally in?"
+msgstr ""
+
+#: actions/profilesettings.php:167
+msgid ""
+"Automatically subscribe to whoever subscribes to me (best for non-humans)"
+msgstr ""
+
+#: actions/profilesettings.php:228 actions/register.php:230
+#, php-format
+msgid "Bio is too long (max %d chars)."
+msgstr ""
+
+#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+msgid "Timezone not selected."
+msgstr ""
+
+#: actions/profilesettings.php:241
+msgid "Language is too long (max 50 chars)."
+msgstr ""
+
+#: actions/profilesettings.php:253 actions/tagother.php:178
+#, php-format
+msgid "Invalid tag: \"%s\""
+msgstr ""
+
+#: actions/profilesettings.php:306
+msgid "Couldn't update user for autosubscribe."
+msgstr ""
+
+#: actions/profilesettings.php:363
+msgid "Couldn't save location prefs."
+msgstr ""
+
+#: actions/profilesettings.php:375
+msgid "Couldn't save profile."
+msgstr ""
+
+#: actions/profilesettings.php:383
+msgid "Couldn't save tags."
+msgstr ""
+
+#. TRANS: Message after successful saving of administrative settings.
+#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
+msgid "Settings saved."
+msgstr ""
+
+#: actions/public.php:83
+#, php-format
+msgid "Beyond the page limit (%s)."
+msgstr ""
+
+#: actions/public.php:92
+msgid "Could not retrieve public stream."
+msgstr ""
+
+#: actions/public.php:130
+#, php-format
+msgid "Public timeline, page %d"
+msgstr ""
+
+#: actions/public.php:132 lib/publicgroupnav.php:79
+msgid "Public timeline"
+msgstr ""
+
+#: actions/public.php:160
+msgid "Public Stream Feed (RSS 1.0)"
+msgstr ""
+
+#: actions/public.php:164
+msgid "Public Stream Feed (RSS 2.0)"
+msgstr ""
+
+#: actions/public.php:168
+msgid "Public Stream Feed (Atom)"
+msgstr ""
+
+#: actions/public.php:188
+#, php-format
+msgid ""
+"This is the public timeline for %%site.name%% but no one has posted anything "
+"yet."
+msgstr ""
+
+#: actions/public.php:191
+msgid "Be the first to post!"
+msgstr ""
+
+#: actions/public.php:195
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post!"
+msgstr ""
+
+#: actions/public.php:242
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool. [Join now](%%action.register%%) to share notices about yourself with "
+"friends, family, and colleagues! ([Read more](%%doc.help%%))"
+msgstr ""
+
+#: actions/public.php:247
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool."
+msgstr ""
+
+#: actions/publictagcloud.php:57
+msgid "Public tag cloud"
+msgstr ""
+
+#: actions/publictagcloud.php:63
+#, php-format
+msgid "These are most popular recent tags on %s "
+msgstr ""
+
+#: actions/publictagcloud.php:69
+#, php-format
+msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
+msgstr ""
+
+#: actions/publictagcloud.php:72
+msgid "Be the first to post one!"
+msgstr ""
+
+#: actions/publictagcloud.php:75
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post "
+"one!"
+msgstr ""
+
+#: actions/publictagcloud.php:134
+msgid "Tag cloud"
+msgstr ""
+
+#: actions/recoverpassword.php:36
+msgid "You are already logged in!"
+msgstr ""
+
+#: actions/recoverpassword.php:62
+msgid "No such recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:66
+msgid "Not a recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:73
+msgid "Recovery code for unknown user."
+msgstr ""
+
+#: actions/recoverpassword.php:86
+msgid "Error with confirmation code."
+msgstr ""
+
+#: actions/recoverpassword.php:97
+msgid "This confirmation code is too old. Please start again."
+msgstr ""
+
+#: actions/recoverpassword.php:111
+msgid "Could not update user with confirmed email address."
+msgstr ""
+
+#: actions/recoverpassword.php:152
+msgid ""
+"If you have forgotten or lost your password, you can get a new one sent to "
+"the email address you have stored in your account."
+msgstr ""
+
+#: actions/recoverpassword.php:158
+msgid "You have been identified. Enter a new password below. "
+msgstr ""
+
+#: actions/recoverpassword.php:188
+msgid "Password recovery"
+msgstr ""
+
+#: actions/recoverpassword.php:191
+msgid "Nickname or email address"
+msgstr ""
+
+#: actions/recoverpassword.php:193
+msgid "Your nickname on this server, or your registered email address."
+msgstr ""
+
+#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
+msgid "Recover"
+msgstr ""
+
+#: actions/recoverpassword.php:208
+msgid "Reset password"
+msgstr ""
+
+#: actions/recoverpassword.php:209
+msgid "Recover password"
+msgstr ""
+
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
+msgid "Password recovery requested"
+msgstr ""
+
+#: actions/recoverpassword.php:213
+msgid "Unknown action"
+msgstr ""
+
+#: actions/recoverpassword.php:236
+msgid "6 or more characters, and don't forget it!"
+msgstr ""
+
+#: actions/recoverpassword.php:243
+msgid "Reset"
+msgstr ""
+
+#: actions/recoverpassword.php:252
+msgid "Enter a nickname or email address."
+msgstr ""
+
+#: actions/recoverpassword.php:282
+msgid "No user with that email address or username."
+msgstr ""
+
+#: actions/recoverpassword.php:299
+msgid "No registered email address for that user."
+msgstr ""
+
+#: actions/recoverpassword.php:313
+msgid "Error saving address confirmation."
+msgstr ""
+
+#: actions/recoverpassword.php:338
+msgid ""
+"Instructions for recovering your password have been sent to the email "
+"address registered to your account."
+msgstr ""
+
+#: actions/recoverpassword.php:357
+msgid "Unexpected password reset."
+msgstr ""
+
+#: actions/recoverpassword.php:365
+msgid "Password must be 6 chars or more."
+msgstr ""
+
+#: actions/recoverpassword.php:369
+msgid "Password and confirmation do not match."
+msgstr ""
+
+#: actions/recoverpassword.php:388 actions/register.php:255
+msgid "Error setting user."
+msgstr ""
+
+#: actions/recoverpassword.php:395
+msgid "New password successfully saved. You are now logged in."
+msgstr ""
+
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+msgid "Sorry, only invited people can register."
+msgstr ""
+
+#: actions/register.php:99
+msgid "Sorry, invalid invitation code."
+msgstr ""
+
+#: actions/register.php:119
+msgid "Registration successful"
+msgstr ""
+
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+msgid "Register"
+msgstr ""
+
+#: actions/register.php:142
+msgid "Registration not allowed."
+msgstr ""
+
+#: actions/register.php:205
+msgid "You can't register if you don't agree to the license."
+msgstr ""
+
+#: actions/register.php:219
+msgid "Email address already exists."
+msgstr ""
+
+#: actions/register.php:250 actions/register.php:272
+msgid "Invalid username or password."
+msgstr ""
+
+#: actions/register.php:350
+msgid ""
+"With this form you can create a new account. You can then post notices and "
+"link up to friends and colleagues. "
+msgstr ""
+
+#: actions/register.php:432
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
+msgstr ""
+
+#: actions/register.php:437
+msgid "6 or more characters. Required."
+msgstr ""
+
+#: actions/register.php:441
+msgid "Same as password above. Required."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
+msgid "Email"
+msgstr ""
+
+#: actions/register.php:446 actions/register.php:450
+msgid "Used only for updates, announcements, and password recovery"
+msgstr ""
+
+#: actions/register.php:457
+msgid "Longer name, preferably your \"real\" name"
+msgstr ""
+
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
+msgid ""
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
+msgstr ""
+
+#: actions/register.php:583
+#, php-format
+msgid ""
+"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
+"want to...\n"
+"\n"
+"* Go to [your profile](%2$s) and post your first message.\n"
+"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send "
+"notices through instant messages.\n"
+"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that "
+"share your interests. \n"
+"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell "
+"others more about you. \n"
+"* Read over the [online docs](%%%%doc.help%%%%) for features you may have "
+"missed. \n"
+"\n"
+"Thanks for signing up and we hope you enjoy using this service."
+msgstr ""
+
+#: actions/register.php:607
+msgid ""
+"(You should receive a message by email momentarily, with instructions on how "
+"to confirm your email address.)"
+msgstr ""
+
+#: actions/remotesubscribe.php:98
+#, php-format
+msgid ""
+"To subscribe, you can [login](%%action.login%%), or [register](%%action."
+"register%%) a new account. If you already have an account on a [compatible "
+"microblogging site](%%doc.openmublog%%), enter your profile URL below."
+msgstr ""
+
+#: actions/remotesubscribe.php:112
+msgid "Remote subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:124
+msgid "Subscribe to a remote user"
+msgstr ""
+
+#: actions/remotesubscribe.php:129
+msgid "User nickname"
+msgstr ""
+
+#: actions/remotesubscribe.php:130
+msgid "Nickname of the user you want to follow"
+msgstr ""
+
+#: actions/remotesubscribe.php:133
+msgid "Profile URL"
+msgstr ""
+
+#: actions/remotesubscribe.php:134
+msgid "URL of your profile on another compatible microblogging service"
+msgstr ""
+
+#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
+#: lib/userprofile.php:406
+msgid "Subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:159
+msgid "Invalid profile URL (bad format)"
+msgstr ""
+
+#: actions/remotesubscribe.php:168
+msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
+msgstr ""
+
+#: actions/remotesubscribe.php:176
+msgid "That’s a local profile! Login to subscribe."
+msgstr ""
+
+#: actions/remotesubscribe.php:183
+msgid "Couldn’t get a request token."
+msgstr ""
+
+#: actions/repeat.php:57
+msgid "Only logged-in users can repeat notices."
+msgstr ""
+
+#: actions/repeat.php:64 actions/repeat.php:71
+msgid "No notice specified."
+msgstr ""
+
+#: actions/repeat.php:76
+msgid "You can't repeat your own notice."
+msgstr ""
+
+#: actions/repeat.php:90
+msgid "You already repeated that notice."
+msgstr ""
+
+#: actions/repeat.php:114 lib/noticelist.php:675
+msgid "Repeated"
+msgstr ""
+
+#: actions/repeat.php:119
+msgid "Repeated!"
+msgstr ""
+
+#: actions/replies.php:126 actions/repliesrss.php:68
+#: lib/personalgroupnav.php:105
+#, php-format
+msgid "Replies to %s"
+msgstr ""
+
+#: actions/replies.php:128
+#, php-format
+msgid "Replies to %1$s, page %2$d"
+msgstr ""
+
+#: actions/replies.php:145
+#, php-format
+msgid "Replies feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/replies.php:152
+#, php-format
+msgid "Replies feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/replies.php:159
+#, php-format
+msgid "Replies feed for %s (Atom)"
+msgstr ""
+
+#: actions/replies.php:199
+#, fuzzy, php-format
+msgid ""
+"This is the timeline showing replies to %1$s but %2$s hasn't received a "
+"notice to them yet."
+msgstr ""
+"Dette er tidslinjen for %s og venner, men ingen har skrevet noget endnu."
+
+#: actions/replies.php:204
+#, php-format
+msgid ""
+"You can engage other users in a conversation, subscribe to more people or "
+"[join groups](%%action.groups%%)."
+msgstr ""
+
+#: actions/replies.php:206
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/repliesrss.php:72
+#, php-format
+msgid "Replies to %1$s on %2$s!"
+msgstr ""
+
+#: actions/revokerole.php:75
+msgid "You cannot revoke user roles on this site."
+msgstr ""
+
+#: actions/revokerole.php:82
+msgid "User doesn't have this role."
+msgstr ""
+
+#: actions/rsd.php:146 actions/version.php:159
+msgid "StatusNet"
+msgstr ""
+
+#: actions/sandbox.php:65 actions/unsandbox.php:65
+msgid "You cannot sandbox users on this site."
+msgstr ""
+
+#: actions/sandbox.php:72
+msgid "User is already sandboxed."
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
+#: lib/adminpanelaction.php:392
+msgid "Sessions"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:65
+msgid "Session settings for this StatusNet site."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:175
+msgid "Handle sessions"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:177
+msgid "Whether to handle sessions ourselves."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:181
+msgid "Session debugging"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:183
+msgid "Turn on debugging output for sessions."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/useradminpanel.php:294
+msgid "Save site settings"
+msgstr ""
+
+#: actions/showapplication.php:82
+msgid "You must be logged in to view an application."
+msgstr ""
+
+#: actions/showapplication.php:157
+msgid "Application profile"
+msgstr ""
+
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
+msgid "Icon"
+msgstr ""
+
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
+msgid "Name"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
+msgid "Organization"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
+msgid "Description"
+msgstr ""
+
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
+msgid "Statistics"
+msgstr ""
+
+#: actions/showapplication.php:203
+#, php-format
+msgid "Created by %1$s - %2$s access by default - %3$d users"
+msgstr ""
+
+#: actions/showapplication.php:213
+msgid "Application actions"
+msgstr ""
+
+#: actions/showapplication.php:236
+msgid "Reset key & secret"
+msgstr ""
+
+#: actions/showapplication.php:261
+msgid "Application info"
+msgstr ""
+
+#: actions/showapplication.php:263
+msgid "Consumer key"
+msgstr ""
+
+#: actions/showapplication.php:268
+msgid "Consumer secret"
+msgstr ""
+
+#: actions/showapplication.php:273
+msgid "Request token URL"
+msgstr ""
+
+#: actions/showapplication.php:278
+msgid "Access token URL"
+msgstr ""
+
+#: actions/showapplication.php:283
+msgid "Authorize URL"
+msgstr ""
+
+#: actions/showapplication.php:288
+msgid ""
+"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
+"signature method."
+msgstr ""
+
+#: actions/showapplication.php:309
+msgid "Are you sure you want to reset your consumer key and secret?"
+msgstr ""
+
+#: actions/showfavorites.php:79
+#, php-format
+msgid "%1$s's favorite notices, page %2$d"
+msgstr ""
+
+#: actions/showfavorites.php:132
+msgid "Could not retrieve favorite notices."
+msgstr ""
+
+#: actions/showfavorites.php:171
+#, php-format
+msgid "Feed for favorites of %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showfavorites.php:178
+#, php-format
+msgid "Feed for favorites of %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showfavorites.php:185
+#, php-format
+msgid "Feed for favorites of %s (Atom)"
+msgstr ""
+
+#: actions/showfavorites.php:206
+msgid ""
+"You haven't chosen any favorite notices yet. Click the fave button on "
+"notices you like to bookmark them for later or shed a spotlight on them."
+msgstr ""
+
+#: actions/showfavorites.php:208
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:212
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:243
+msgid "This is a way to share what you like."
+msgstr ""
+
+#: actions/showgroup.php:82 lib/groupnav.php:86
+#, php-format
+msgid "%s group"
+msgstr ""
+
+#: actions/showgroup.php:84
+#, php-format
+msgid "%1$s group, page %2$d"
+msgstr ""
+
+#: actions/showgroup.php:227
+msgid "Group profile"
+msgstr ""
+
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
+msgid "URL"
+msgstr ""
+
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
+msgid "Note"
+msgstr ""
+
+#: actions/showgroup.php:293 lib/groupeditform.php:184
+msgid "Aliases"
+msgstr ""
+
+#: actions/showgroup.php:302
+msgid "Group actions"
+msgstr ""
+
+#: actions/showgroup.php:338
+#, php-format
+msgid "Notice feed for %s group (RSS 1.0)"
+msgstr ""
+
+#: actions/showgroup.php:344
+#, php-format
+msgid "Notice feed for %s group (RSS 2.0)"
+msgstr ""
+
+#: actions/showgroup.php:350
+#, php-format
+msgid "Notice feed for %s group (Atom)"
+msgstr ""
+
+#: actions/showgroup.php:355
+#, php-format
+msgid "FOAF for %s group"
+msgstr ""
+
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
+msgid "Members"
+msgstr ""
+
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
+msgid "(None)"
+msgstr ""
+
+#: actions/showgroup.php:404
+msgid "All members"
+msgstr ""
+
+#: actions/showgroup.php:439
+msgid "Created"
+msgstr ""
+
+#: actions/showgroup.php:455
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. [Join now](%%%%action.register%%%%) to become part "
+"of this group and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showgroup.php:461
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. "
+msgstr ""
+
+#: actions/showgroup.php:489
+msgid "Admins"
+msgstr ""
+
+#: actions/showmessage.php:81
+msgid "No such message."
+msgstr ""
+
+#: actions/showmessage.php:98
+msgid "Only the sender and recipient may read this message."
+msgstr ""
+
+#: actions/showmessage.php:108
+#, php-format
+msgid "Message to %1$s on %2$s"
+msgstr ""
+
+#: actions/showmessage.php:113
+#, php-format
+msgid "Message from %1$s on %2$s"
+msgstr ""
+
+#: actions/shownotice.php:90
+msgid "Notice deleted."
+msgstr ""
+
+#: actions/showstream.php:73
+#, php-format
+msgid " tagged %s"
+msgstr ""
+
+#: actions/showstream.php:79
+#, php-format
+msgid "%1$s, page %2$d"
+msgstr ""
+
+#: actions/showstream.php:122
+#, php-format
+msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:129
+#, php-format
+msgid "Notice feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:136
+#, php-format
+msgid "Notice feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showstream.php:143
+#, php-format
+msgid "Notice feed for %s (Atom)"
+msgstr ""
+
+#: actions/showstream.php:148
+#, php-format
+msgid "FOAF for %s"
+msgstr ""
+
+#: actions/showstream.php:200
+#, php-format
+msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+msgstr ""
+
+#: actions/showstream.php:205
+msgid ""
+"Seen anything interesting recently? You haven't posted any notices yet, now "
+"would be a good time to start :)"
+msgstr ""
+
+#: actions/showstream.php:207
+#, php-format
+msgid ""
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
+msgstr ""
+
+#: actions/showstream.php:243
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
+"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showstream.php:248
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. "
+msgstr ""
+
+#: actions/showstream.php:305
+#, php-format
+msgid "Repeat of %s"
+msgstr ""
+
+#: actions/silence.php:65 actions/unsilence.php:65
+msgid "You cannot silence users on this site."
+msgstr ""
+
+#: actions/silence.php:72
+msgid "User is already silenced."
+msgstr ""
+
+#: actions/siteadminpanel.php:69
+msgid "Basic settings for this StatusNet site"
+msgstr ""
+
+#: actions/siteadminpanel.php:133
+msgid "Site name must have non-zero length."
+msgstr ""
+
+#: actions/siteadminpanel.php:141
+msgid "You must have a valid contact email address."
+msgstr ""
+
+#: actions/siteadminpanel.php:159
+#, php-format
+msgid "Unknown language \"%s\"."
+msgstr ""
+
+#: actions/siteadminpanel.php:165
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr ""
+
+#: actions/siteadminpanel.php:171
+msgid "Dupe limit must be one or more seconds."
+msgstr ""
+
+#: actions/siteadminpanel.php:221
+msgid "General"
+msgstr ""
+
+#: actions/siteadminpanel.php:224
+msgid "Site name"
+msgstr ""
+
+#: actions/siteadminpanel.php:225
+msgid "The name of your site, like \"Yourcompany Microblog\""
+msgstr ""
+
+#: actions/siteadminpanel.php:229
+msgid "Brought by"
+msgstr ""
+
+#: actions/siteadminpanel.php:230
+msgid "Text used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:234
+msgid "Brought by URL"
+msgstr ""
+
+#: actions/siteadminpanel.php:235
+msgid "URL used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:239
+msgid "Contact email address for your site"
+msgstr ""
+
+#: actions/siteadminpanel.php:245
+msgid "Local"
+msgstr ""
+
+#: actions/siteadminpanel.php:256
+msgid "Default timezone"
+msgstr ""
+
+#: actions/siteadminpanel.php:257
+msgid "Default timezone for the site; usually UTC."
+msgstr ""
+
+#: actions/siteadminpanel.php:262
+msgid "Default language"
+msgstr ""
+
+#: actions/siteadminpanel.php:263
+msgid "Site language when autodetection from browser settings is not available"
+msgstr ""
+
+#: actions/siteadminpanel.php:271
+msgid "Limits"
+msgstr ""
+
+#: actions/siteadminpanel.php:274
+msgid "Text limit"
+msgstr ""
+
+#: actions/siteadminpanel.php:274
+msgid "Maximum number of characters for notices."
+msgstr ""
+
+#: actions/siteadminpanel.php:278
+msgid "Dupe limit"
+msgstr ""
+
+#: actions/siteadminpanel.php:278
+msgid "How long users must wait (in seconds) to post the same thing again."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:56
+msgid "Site Notice"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:67
+msgid "Edit site-wide message"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:103
+msgid "Unable to save site notice."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:113
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:176
+msgid "Site notice text"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:178
+msgid "Site-wide notice text (255 chars max; HTML okay)"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:198
+msgid "Save site notice"
+msgstr ""
+
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
+msgid "SMS settings"
+msgstr ""
+
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
+#, php-format
+msgid "You can receive SMS messages through email from %%site.name%%."
+msgstr ""
+
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
+msgid "SMS is not available."
+msgstr ""
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr ""
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
+msgid "Current confirmed SMS-enabled phone number."
+msgstr ""
+
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
+msgid "Awaiting confirmation on this phone number."
+msgstr ""
+
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
+msgid "Confirmation code"
+msgstr ""
+
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
+msgid "Enter the code you received on your phone."
+msgstr ""
+
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr ""
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
+msgid "SMS phone number"
+msgstr ""
+
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
+msgid "Phone number, no punctuation or spaces, with area code"
+msgstr ""
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
+msgid ""
+"Send me notices through SMS; I understand I may incur exorbitant charges "
+"from my carrier."
+msgstr ""
+
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
+msgid "No phone number."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
+msgid "No carrier selected."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
+msgid "That is already your phone number."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
+msgid "That phone number already belongs to another user."
+msgstr ""
+
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
+msgid ""
+"A confirmation code was sent to the phone number you added. Check your phone "
+"for the code and instructions on how to use it."
+msgstr ""
+
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
+msgid "That is the wrong confirmation number."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr ""
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
+msgid "That is not your phone number."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr ""
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
+msgid "Mobile carrier"
+msgstr ""
+
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
+msgid "Select a carrier"
+msgstr ""
+
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
+#, php-format
+msgid ""
+"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
+"email but isn't listed here, send email to let us know at %s."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
+msgid "No code entered"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
+#: lib/adminpanelaction.php:408
+msgid "Snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:65
+msgid "Manage snapshot configuration"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:127
+msgid "Invalid snapshot run value."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:133
+msgid "Snapshot frequency must be a number."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:144
+msgid "Invalid snapshot report URL."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:200
+msgid "Randomly during web hit"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:201
+msgid "In a scheduled job"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:206
+msgid "Data snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:208
+msgid "When to send statistical data to status.net servers"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:217
+msgid "Frequency"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:218
+msgid "Snapshots will be sent once every N web hits"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:226
+msgid "Report URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:227
+msgid "Snapshots will be sent to this URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:248
+msgid "Save snapshot settings"
+msgstr ""
+
+#: actions/subedit.php:70
+msgid "You are not subscribed to that profile."
+msgstr ""
+
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
+msgid "Could not save subscription."
+msgstr ""
+
+#: actions/subscribe.php:77
+msgid "This action only accepts POST requests."
+msgstr ""
+
+#: actions/subscribe.php:107
+msgid "No such profile."
+msgstr ""
+
+#: actions/subscribe.php:117
+msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
+msgstr ""
+
+#: actions/subscribe.php:145
+msgid "Subscribed"
+msgstr ""
+
+#: actions/subscribers.php:50
+#, php-format
+msgid "%s subscribers"
+msgstr ""
+
+#: actions/subscribers.php:52
+#, php-format
+msgid "%1$s subscribers, page %2$d"
+msgstr ""
+
+#: actions/subscribers.php:63
+msgid "These are the people who listen to your notices."
+msgstr ""
+
+#: actions/subscribers.php:67
+#, php-format
+msgid "These are the people who listen to %s's notices."
+msgstr ""
+
+#: actions/subscribers.php:108
+msgid ""
+"You have no subscribers. Try subscribing to people you know and they might "
+"return the favor"
+msgstr ""
+
+#: actions/subscribers.php:110
+#, php-format
+msgid "%s has no subscribers. Want to be the first?"
+msgstr ""
+
+#: actions/subscribers.php:114
+#, php-format
+msgid ""
+"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
+"%) and be the first?"
+msgstr ""
+
+#: actions/subscriptions.php:52
+#, php-format
+msgid "%s subscriptions"
+msgstr ""
+
+#: actions/subscriptions.php:54
+#, php-format
+msgid "%1$s subscriptions, page %2$d"
+msgstr ""
+
+#: actions/subscriptions.php:65
+msgid "These are the people whose notices you listen to."
+msgstr ""
+
+#: actions/subscriptions.php:69
+#, php-format
+msgid "These are the people whose notices %s listens to."
+msgstr ""
+
+#: actions/subscriptions.php:126
+#, php-format
+msgid ""
+"You're not listening to anyone's notices right now, try subscribing to "
+"people you know. Try [people search](%%action.peoplesearch%%), look for "
+"members in groups you're interested in and in our [featured users](%%action."
+"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
+"automatically subscribe to people you already follow there."
+msgstr ""
+
+#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#, php-format
+msgid "%s is not listening to anyone."
+msgstr ""
+
+#: actions/subscriptions.php:208
+msgid "Jabber"
+msgstr ""
+
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
+msgid "SMS"
+msgstr ""
+
+#: actions/tag.php:69
+#, php-format
+msgid "Notices tagged with %1$s, page %2$d"
+msgstr ""
+
+#: actions/tag.php:87
+#, php-format
+msgid "Notice feed for tag %s (RSS 1.0)"
+msgstr ""
+
+#: actions/tag.php:93
+#, php-format
+msgid "Notice feed for tag %s (RSS 2.0)"
+msgstr ""
+
+#: actions/tag.php:99
+#, php-format
+msgid "Notice feed for tag %s (Atom)"
+msgstr ""
+
+#: actions/tagother.php:39
+msgid "No ID argument."
+msgstr ""
+
+#: actions/tagother.php:65
+#, php-format
+msgid "Tag %s"
+msgstr ""
+
+#: actions/tagother.php:77 lib/userprofile.php:76
+msgid "User profile"
+msgstr ""
+
+#: actions/tagother.php:81 actions/userauthorization.php:132
+#: lib/userprofile.php:103
+msgid "Photo"
+msgstr ""
+
+#: actions/tagother.php:141
+msgid "Tag user"
+msgstr ""
+
+#: actions/tagother.php:151
+msgid ""
+"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
+"separated"
+msgstr ""
+
+#: actions/tagother.php:193
+msgid ""
+"You can only tag people you are subscribed to or who are subscribed to you."
+msgstr ""
+
+#: actions/tagother.php:200
+msgid "Could not save tags."
+msgstr ""
+
+#: actions/tagother.php:236
+msgid "Use this form to add tags to your subscribers or subscriptions."
+msgstr ""
+
+#: actions/tagrss.php:35
+msgid "No such tag."
+msgstr ""
+
+#: actions/unblock.php:59
+msgid "You haven't blocked that user."
+msgstr ""
+
+#: actions/unsandbox.php:72
+msgid "User is not sandboxed."
+msgstr ""
+
+#: actions/unsilence.php:72
+msgid "User is not silenced."
+msgstr ""
+
+#: actions/unsubscribe.php:77
+msgid "No profile ID in request."
+msgstr ""
+
+#: actions/unsubscribe.php:98
+msgid "Unsubscribed"
+msgstr ""
+
+#: actions/updateprofile.php:64 actions/userauthorization.php:337
+#, php-format
+msgid ""
+"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#. TRANS: User admin panel title
+#: actions/useradminpanel.php:59
+msgctxt "TITLE"
+msgid "User"
+msgstr ""
+
+#: actions/useradminpanel.php:70
+msgid "User settings for this StatusNet site."
+msgstr ""
+
+#: actions/useradminpanel.php:149
+msgid "Invalid bio limit. Must be numeric."
+msgstr ""
+
+#: actions/useradminpanel.php:155
+msgid "Invalid welcome text. Max length is 255 characters."
+msgstr ""
+
+#: actions/useradminpanel.php:165
+#, php-format
+msgid "Invalid default subscripton: '%1$s' is not user."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
+#: lib/personalgroupnav.php:109
+msgid "Profile"
+msgstr ""
+
+#: actions/useradminpanel.php:222
+msgid "Bio Limit"
+msgstr ""
+
+#: actions/useradminpanel.php:223
+msgid "Maximum length of a profile bio in characters."
+msgstr ""
+
+#: actions/useradminpanel.php:231
+msgid "New users"
+msgstr ""
+
+#: actions/useradminpanel.php:235
+msgid "New user welcome"
+msgstr ""
+
+#: actions/useradminpanel.php:236
+msgid "Welcome text for new users (Max 255 chars)."
+msgstr ""
+
+#: actions/useradminpanel.php:241
+msgid "Default subscription"
+msgstr ""
+
+#: actions/useradminpanel.php:242
+msgid "Automatically subscribe new users to this user."
+msgstr ""
+
+#: actions/useradminpanel.php:251
+msgid "Invitations"
+msgstr ""
+
+#: actions/useradminpanel.php:256
+msgid "Invitations enabled"
+msgstr ""
+
+#: actions/useradminpanel.php:258
+msgid "Whether to allow users to invite new users."
+msgstr ""
+
+#: actions/userauthorization.php:105
+msgid "Authorize subscription"
+msgstr ""
+
+#: actions/userauthorization.php:110
+msgid ""
+"Please check these details to make sure that you want to subscribe to this "
+"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
+"click “Rejectâ€."
+msgstr ""
+
+#: actions/userauthorization.php:196 actions/version.php:167
+msgid "License"
+msgstr ""
+
+#: actions/userauthorization.php:217
+msgid "Accept"
+msgstr ""
+
+#: actions/userauthorization.php:218 lib/subscribeform.php:115
+#: lib/subscribeform.php:139
+msgid "Subscribe to this user"
+msgstr ""
+
+#: actions/userauthorization.php:219
+msgid "Reject"
+msgstr ""
+
+#: actions/userauthorization.php:220
+msgid "Reject this subscription"
+msgstr ""
+
+#: actions/userauthorization.php:232
+msgid "No authorization request!"
+msgstr ""
+
+#: actions/userauthorization.php:254
+msgid "Subscription authorized"
+msgstr ""
+
+#: actions/userauthorization.php:256
+msgid ""
+"The subscription has been authorized, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to authorize the "
+"subscription. Your subscription token is:"
+msgstr ""
+
+#: actions/userauthorization.php:266
+msgid "Subscription rejected"
+msgstr ""
+
+#: actions/userauthorization.php:268
+msgid ""
+"The subscription has been rejected, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to fully reject the "
+"subscription."
+msgstr ""
+
+#: actions/userauthorization.php:303
+#, php-format
+msgid "Listener URI ‘%s’ not found here."
+msgstr ""
+
+#: actions/userauthorization.php:308
+#, php-format
+msgid "Listenee URI ‘%s’ is too long."
+msgstr ""
+
+#: actions/userauthorization.php:314
+#, php-format
+msgid "Listenee URI ‘%s’ is a local user."
+msgstr ""
+
+#: actions/userauthorization.php:329
+#, php-format
+msgid "Profile URL ‘%s’ is for a local user."
+msgstr ""
+
+#: actions/userauthorization.php:345
+#, php-format
+msgid "Avatar URL ‘%s’ is not valid."
+msgstr ""
+
+#: actions/userauthorization.php:350
+#, php-format
+msgid "Can’t read avatar URL ‘%s’."
+msgstr ""
+
+#: actions/userauthorization.php:355
+#, php-format
+msgid "Wrong image type for avatar URL ‘%s’."
+msgstr ""
+
+#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+msgid "Profile design"
+msgstr ""
+
+#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+msgid ""
+"Customize the way your profile looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+
+#: actions/userdesignsettings.php:282
+msgid "Enjoy your hotdog!"
+msgstr ""
+
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
+msgid "%1$s groups, page %2$d"
+msgstr ""
+
+#: actions/usergroups.php:132
+msgid "Search for more groups"
+msgstr ""
+
+#: actions/usergroups.php:159
+#, php-format
+msgid "%s is not a member of any group."
+msgstr ""
+
+#: actions/usergroups.php:164
+#, php-format
+msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
+#, php-format
+msgid "Updates from %1$s on %2$s!"
+msgstr ""
+
+#: actions/version.php:75
+#, php-format
+msgid "StatusNet %s"
+msgstr ""
+
+#: actions/version.php:155
+#, php-format
+msgid ""
+"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
+"Inc. and contributors."
+msgstr ""
+
+#: actions/version.php:163
+msgid "Contributors"
+msgstr ""
+
+#: actions/version.php:170
+msgid ""
+"StatusNet is free software: you can redistribute it and/or modify it under "
+"the terms of the GNU Affero General Public License as published by the Free "
+"Software Foundation, either version 3 of the License, or (at your option) "
+"any later version. "
+msgstr ""
+
+#: actions/version.php:176
+msgid ""
+"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. "
+msgstr ""
+
+#: actions/version.php:182
+#, php-format
+msgid ""
+"You should have received a copy of the GNU Affero General Public License "
+"along with this program. If not, see %s."
+msgstr ""
+
+#: actions/version.php:191
+msgid "Plugins"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
+msgid "Version"
+msgstr ""
+
+#: actions/version.php:199
+msgid "Author(s)"
+msgstr ""
+
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, php-format
+msgid ""
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgstr ""
+
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
+#, php-format
+msgid "A file this large would exceed your user quota of %d bytes."
+msgstr ""
+
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
+#, php-format
+msgid "A file this large would exceed your monthly quota of %d bytes."
+msgstr ""
+
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr ""
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
+msgid "Group join failed."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
+msgid "Not part of group."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
+msgid "Group leave failed."
+msgstr ""
+
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
+msgid "Could not update local group."
+msgstr ""
+
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
+msgid "Could not create login token for %s"
+msgstr ""
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
+msgid "You are banned from sending direct messages."
+msgstr ""
+
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
+msgid "Could not insert message."
+msgstr ""
+
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
+msgid "Could not update message with new URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr ""
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
+msgid "Problem saving notice. Too long."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
+msgid "Problem saving notice. Unknown user."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
+msgid ""
+"Too many notices too fast; take a breather and post again in a few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
+msgid ""
+"Too many duplicate messages too quickly; take a breather and post again in a "
+"few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
+msgid "You are banned from posting notices on this site."
+msgstr ""
+
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
+msgid "Problem saving notice."
+msgstr ""
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
+msgid "Problem saving group inbox."
+msgstr ""
+
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
+msgid "RT @%1$s %2$s"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr ""
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
+msgid "Already subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
+msgid "User has blocked you."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
+msgid "Not subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr ""
+
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr ""
+
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr ""
+
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
+#, php-format
+msgid "Welcome to %1$s, @%2$s!"
+msgstr ""
+
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
+msgid "Could not create group."
+msgstr ""
+
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
+msgid "Could not set group URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
+msgid "Could not set group membership."
+msgstr ""
+
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
+msgid "Could not save local group info."
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
+msgid "Change your profile settings"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
+msgid "Upload an avatar"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
+msgid "Change your password"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
+msgid "Change email handling"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
+msgid "Design your profile"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr ""
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
+msgid "%1$s - %2$s"
+msgstr ""
+
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
+msgid "Untitled page"
+msgstr ""
+
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
+msgid "Primary site navigation"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Personal"
+#: lib/action.php:442
+msgctxt "TOOLTIP"
+msgid "Personal profile and friends timeline"
+msgstr ""
+
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
+msgctxt "MENU"
+msgid "Personal"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Account"
+#: lib/action.php:447
+msgctxt "TOOLTIP"
+msgid "Change your email, avatar, password, profile"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Services"
+#: lib/action.php:452
+msgctxt "TOOLTIP"
+msgid "Connect to services"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
+msgid "Connect"
+msgstr ""
+
+#. TRANS: Tooltip for menu option "Admin"
+#: lib/action.php:458
+msgctxt "TOOLTIP"
+msgid "Change site configuration"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
+msgctxt "MENU"
+msgid "Admin"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Invite"
+#: lib/action.php:465
+#, php-format
+msgctxt "TOOLTIP"
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
+msgctxt "MENU"
+msgid "Invite"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Logout"
+#: lib/action.php:474
+msgctxt "TOOLTIP"
+msgid "Logout from the site"
+msgstr ""
+
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
+msgctxt "MENU"
+msgid "Logout"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Register"
+#: lib/action.php:482
+msgctxt "TOOLTIP"
+msgid "Create an account"
+msgstr ""
+
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
+msgctxt "MENU"
+msgid "Register"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Login"
+#: lib/action.php:488
+msgctxt "TOOLTIP"
+msgid "Login to the site"
+msgstr ""
+
+#: lib/action.php:491
+msgctxt "MENU"
+msgid "Login"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Help"
+#: lib/action.php:494
+msgctxt "TOOLTIP"
+msgid "Help me!"
+msgstr ""
+
+#: lib/action.php:497
+msgctxt "MENU"
+msgid "Help"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Search"
+#: lib/action.php:500
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
+msgstr ""
+
+#: lib/action.php:503
+msgctxt "MENU"
+msgid "Search"
+msgstr ""
+
+#. TRANS: DT element for site notice. String is hidden in default CSS.
+#. TRANS: Menu item for site administration
+#: lib/action.php:525 lib/adminpanelaction.php:400
+msgid "Site notice"
+msgstr ""
+
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
+msgid "Local views"
+msgstr ""
+
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
+msgid "Page notice"
+msgstr ""
+
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
+msgid "Secondary site navigation"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
+msgid "Help"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
+msgid "About"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
+msgid "FAQ"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
+msgid "TOS"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
+msgid "Privacy"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
+msgid "Source"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
+msgid "Contact"
+msgstr ""
+
+#: lib/action.php:794
+msgid "Badge"
+msgstr ""
+
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
+msgid "StatusNet software license"
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, php-format
+msgid ""
+"**%%site.name%%** is a microblogging service brought to you by [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
+#, php-format
+msgid "**%%site.name%%** is a microblogging service."
+msgstr ""
+
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
+#, php-format
+msgid ""
+"It runs the [StatusNet](http://status.net/) microblogging software, version %"
+"s, available under the [GNU Affero General Public License](http://www.fsf."
+"org/licensing/licenses/agpl-3.0.html)."
+msgstr ""
+
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
+msgid "Site content license"
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
+#, php-format
+msgid "Content and data of %1$s are private and confidential."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
+#, php-format
+msgid "Content and data copyright by %1$s. All rights reserved."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
+msgid "Content and data copyright by contributors. All rights reserved."
+msgstr ""
+
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
+msgid "Pagination"
+msgstr ""
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
+msgid "After"
+msgstr ""
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
+msgid "Before"
+msgstr ""
+
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr ""
+
+#: lib/activityutils.php:244
+msgid "Can't handle embedded XML content yet."
+msgstr ""
+
+#: lib/activityutils.php:248
+msgid "Can't handle embedded Base64 content yet."
+msgstr ""
+
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
+#: lib/adminpanelaction.php:98
+msgid "You cannot make changes to this site."
+msgstr ""
+
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
+#: lib/adminpanelaction.php:110
+msgid "Changes to that panel are not allowed."
+msgstr ""
+
+#. TRANS: Client error message.
+#: lib/adminpanelaction.php:229
+msgid "showForm() not implemented."
+msgstr ""
+
+#. TRANS: Client error message
+#: lib/adminpanelaction.php:259
+msgid "saveSettings() not implemented."
+msgstr ""
+
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
+msgid "Unable to delete design setting."
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:350
+msgid "Basic site configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:352
+msgctxt "MENU"
+msgid "Site"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:358
+msgid "Design configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:360
+msgctxt "MENU"
+msgid "Design"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:366
+msgid "User configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
+msgid "User"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:374
+msgid "Access configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:382
+msgid "Paths configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:390
+msgid "Sessions configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:398
+msgid "Edit site notice"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:406
+msgid "Snapshots configuration"
+msgstr ""
+
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
+msgid "API resource requires read-write access, but you only have read access."
+msgstr ""
+
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
+msgid "Edit application"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
+msgid "Icon for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
+msgid "Describe your application in %d characters"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
+msgid "Describe your application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
+msgid "Organization responsible for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
+msgid "URL for the homepage of the organization"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
+msgid "URL to redirect to after authentication"
+msgstr ""
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
+msgid "Browser"
+msgstr ""
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
+msgid "Desktop"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
+msgid "Type of application, browser or desktop"
+msgstr ""
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
+msgid "Read-only"
+msgstr ""
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
+msgid "Read-write"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
+msgid "Default access for this application: read-only, or read-write"
+msgstr ""
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
+msgid "Revoke"
+msgstr ""
+
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
+msgid "Attachments"
+msgstr ""
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:265
+msgid "Author"
+msgstr ""
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
+msgid "Provider"
+msgstr ""
+
+#: lib/attachmentnoticesection.php:67
+msgid "Notices where this attachment appears"
+msgstr ""
+
+#: lib/attachmenttagcloudsection.php:48
+msgid "Tags for this attachment"
+msgstr ""
+
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
+msgid "Password changing failed"
+msgstr ""
+
+#: lib/authenticationplugin.php:236
+msgid "Password changing is not allowed"
+msgstr ""
+
+#: lib/channel.php:157 lib/channel.php:177
+msgid "Command results"
+msgstr ""
+
+#: lib/channel.php:229 lib/mailhandler.php:142
+msgid "Command complete"
+msgstr ""
+
+#: lib/channel.php:240
+msgid "Command failed"
+msgstr ""
+
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr ""
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr ""
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
+msgid "Could not find a user with nickname %s"
+msgstr ""
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr ""
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
+msgid "It does not make a lot of sense to nudge yourself!"
+msgstr ""
+
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
+msgid "Nudge sent to %s"
+msgstr ""
+
+#: lib/command.php:260
+#, php-format
+msgid ""
+"Subscriptions: %1$s\n"
+"Subscribers: %2$s\n"
+"Notices: %3$s"
+msgstr ""
+
+#: lib/command.php:302
+msgid "Notice marked as fave."
+msgstr ""
+
+#: lib/command.php:323
+msgid "You are already a member of that group"
+msgstr ""
+
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr ""
+
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
+#, php-format
+msgid "Fullname: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
+#, php-format
+msgid "Location: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
+#, php-format
+msgid "Homepage: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
+#, php-format
+msgid "About: %s"
+msgstr ""
+
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
+msgid "Direct message to %s sent"
+msgstr ""
+
+#: lib/command.php:494
+msgid "Error sending direct message."
+msgstr ""
+
+#: lib/command.php:514
+msgid "Cannot repeat your own notice"
+msgstr ""
+
+#: lib/command.php:519
+msgid "Already repeated that notice"
+msgstr ""
+
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
+msgid "Notice from %s repeated"
+msgstr ""
+
+#: lib/command.php:531
+msgid "Error repeating notice."
+msgstr ""
+
+#: lib/command.php:562
+#, php-format
+msgid "Notice too long - maximum is %d characters, you sent %d"
+msgstr ""
+
+#: lib/command.php:571
+#, php-format
+msgid "Reply to %s sent"
+msgstr ""
+
+#: lib/command.php:573
+msgid "Error saving notice."
+msgstr ""
+
+#: lib/command.php:620
+msgid "Specify the name of the user to subscribe to"
+msgstr ""
+
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
+
+#: lib/command.php:634
+#, php-format
+msgid "Subscribed to %s"
+msgstr ""
+
+#: lib/command.php:655 lib/command.php:754
+msgid "Specify the name of the user to unsubscribe from"
+msgstr ""
+
+#: lib/command.php:664
+#, php-format
+msgid "Unsubscribed from %s"
+msgstr ""
+
+#: lib/command.php:682 lib/command.php:705
+msgid "Command not yet implemented."
+msgstr ""
+
+#: lib/command.php:685
+msgid "Notification off."
+msgstr ""
+
+#: lib/command.php:687
+msgid "Can't turn off notification."
+msgstr ""
+
+#: lib/command.php:708
+msgid "Notification on."
+msgstr ""
+
+#: lib/command.php:710
+msgid "Can't turn on notification."
+msgstr ""
+
+#: lib/command.php:723
+msgid "Login command is disabled"
+msgstr ""
+
+#: lib/command.php:734
+#, php-format
+msgid "This link is useable only once, and is good for only 2 minutes: %s"
+msgstr ""
+
+#: lib/command.php:761
+#, php-format
+msgid "Unsubscribed %s"
+msgstr ""
+
+#: lib/command.php:778
+msgid "You are not subscribed to anyone."
+msgstr ""
+
+#: lib/command.php:780
+#, fuzzy
+msgid "You are subscribed to this person:"
+msgid_plural "You are subscribed to these people:"
+msgstr[0] "You are subscribed to this person:"
+msgstr[1] "You are subscribed to these people:"
+
+#: lib/command.php:800
+msgid "No one is subscribed to you."
+msgstr ""
+
+#: lib/command.php:802
+#, fuzzy
+msgid "This person is subscribed to you:"
+msgid_plural "These people are subscribed to you:"
+msgstr[0] "This person is subscribed to you:"
+msgstr[1] "These people are subscribed to you:"
+
+#: lib/command.php:822
+msgid "You are not a member of any groups."
+msgstr ""
+
+#: lib/command.php:824
+#, fuzzy
+msgid "You are a member of this group:"
+msgid_plural "You are a member of these groups:"
+msgstr[0] "You are a member of this group:"
+msgstr[1] "You are a member of these groups:"
+
+#: lib/command.php:838
+msgid ""
+"Commands:\n"
+"on - turn on notifications\n"
+"off - turn off notifications\n"
+"help - show this help\n"
+"follow <nickname> - subscribe to user\n"
+"groups - lists the groups you have joined\n"
+"subscriptions - list the people you follow\n"
+"subscribers - list the people that follow you\n"
+"leave <nickname> - unsubscribe from user\n"
+"d <nickname> <text> - direct message to user\n"
+"get <nickname> - get last notice from user\n"
+"whois <nickname> - get profile info on user\n"
+"lose <nickname> - force user to stop following you\n"
+"fav <nickname> - add user's last notice as a 'fave'\n"
+"fav #<notice_id> - add notice with the given id as a 'fave'\n"
+"repeat #<notice_id> - repeat a notice with a given id\n"
+"repeat <nickname> - repeat the last notice from user\n"
+"reply #<notice_id> - reply to notice with a given id\n"
+"reply <nickname> - reply to the last notice from user\n"
+"join <group> - join group\n"
+"login - Get a link to login to the web interface\n"
+"drop <group> - leave group\n"
+"stats - get your stats\n"
+"stop - same as 'off'\n"
+"quit - same as 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
+msgstr ""
+
+#: lib/common.php:135
+msgid "No configuration file found. "
+msgstr ""
+
+#: lib/common.php:136
+msgid "I looked for configuration files in the following places: "
+msgstr ""
+
+#: lib/common.php:138
+msgid "You may wish to run the installer to fix this."
+msgstr ""
+
+#: lib/common.php:139
+msgid "Go to the installer."
+msgstr ""
+
+#: lib/connectsettingsaction.php:110
+msgid "IM"
+msgstr ""
+
+#: lib/connectsettingsaction.php:111
+msgid "Updates by instant messenger (IM)"
+msgstr ""
+
+#: lib/connectsettingsaction.php:116
+msgid "Updates by SMS"
+msgstr ""
+
+#: lib/connectsettingsaction.php:120
+msgid "Connections"
+msgstr ""
+
+#: lib/connectsettingsaction.php:121
+msgid "Authorized connected applications"
+msgstr ""
+
+#: lib/dberroraction.php:60
+msgid "Database error"
+msgstr ""
+
+#: lib/designsettings.php:105
+msgid "Upload file"
+msgstr ""
+
+#: lib/designsettings.php:109
+msgid ""
+"You can upload your personal background image. The maximum file size is 2MB."
+msgstr ""
+
+#: lib/designsettings.php:418
+msgid "Design defaults restored."
+msgstr ""
+
+#: lib/disfavorform.php:114 lib/disfavorform.php:140
+msgid "Disfavor this notice"
+msgstr ""
+
+#: lib/favorform.php:114 lib/favorform.php:140
+msgid "Favor this notice"
+msgstr ""
+
+#: lib/favorform.php:140
+msgid "Favor"
+msgstr ""
+
+#: lib/feed.php:85
+msgid "RSS 1.0"
+msgstr ""
+
+#: lib/feed.php:87
+msgid "RSS 2.0"
+msgstr ""
+
+#: lib/feed.php:89
+msgid "Atom"
+msgstr ""
+
+#: lib/feed.php:91
+msgid "FOAF"
+msgstr ""
+
+#: lib/feedlist.php:64
+msgid "Export data"
+msgstr ""
+
+#: lib/galleryaction.php:121
+msgid "Filter tags"
+msgstr ""
+
+#: lib/galleryaction.php:131
+msgid "All"
+msgstr ""
+
+#: lib/galleryaction.php:139
+msgid "Select tag to filter"
+msgstr ""
+
+#: lib/galleryaction.php:140
+msgid "Tag"
+msgstr ""
+
+#: lib/galleryaction.php:141
+msgid "Choose a tag to narrow list"
+msgstr ""
+
+#: lib/galleryaction.php:143
+msgid "Go"
+msgstr ""
+
+#: lib/grantroleform.php:91
+#, php-format
+msgid "Grant this user the \"%s\" role"
+msgstr ""
+
+#: lib/groupeditform.php:163
+msgid "URL of the homepage or blog of the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:168
+msgid "Describe the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:170
+#, php-format
+msgid "Describe the group or topic in %d characters"
+msgstr ""
+
+#: lib/groupeditform.php:179
+msgid ""
+"Location for the group, if any, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: lib/groupeditform.php:187
+#, php-format
+msgid "Extra nicknames for the group, comma- or space- separated, max %d"
+msgstr ""
+
+#: lib/groupnav.php:85
+msgid "Group"
+msgstr ""
+
+#: lib/groupnav.php:101
+msgid "Blocked"
+msgstr ""
+
+#: lib/groupnav.php:102
+#, php-format
+msgid "%s blocked users"
+msgstr ""
+
+#: lib/groupnav.php:108
+#, php-format
+msgid "Edit %s group properties"
+msgstr ""
+
+#: lib/groupnav.php:113
+msgid "Logo"
+msgstr ""
+
+#: lib/groupnav.php:114
+#, php-format
+msgid "Add or edit %s logo"
+msgstr ""
+
+#: lib/groupnav.php:120
+#, php-format
+msgid "Add or edit %s design"
+msgstr ""
+
+#: lib/groupsbymemberssection.php:71
+msgid "Groups with most members"
+msgstr ""
+
+#: lib/groupsbypostssection.php:71
+msgid "Groups with most posts"
+msgstr ""
+
+#: lib/grouptagcloudsection.php:56
+#, php-format
+msgid "Tags in %s group's notices"
+msgstr ""
+
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
+msgid "This page is not available in a media type you accept"
+msgstr ""
+
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
+#, php-format
+msgid "That file is too big. The maximum file size is %s."
+msgstr ""
+
+#: lib/imagefile.php:93
+msgid "Partial upload."
+msgstr ""
+
+#: lib/imagefile.php:101 lib/mediafile.php:170
+msgid "System error uploading file."
+msgstr ""
+
+#: lib/imagefile.php:109
+msgid "Not an image or corrupt file."
+msgstr ""
+
+#: lib/imagefile.php:122
+msgid "Lost our file."
+msgstr ""
+
+#: lib/imagefile.php:163 lib/imagefile.php:224
+msgid "Unknown file type"
+msgstr ""
+
+#: lib/imagefile.php:244
+msgid "MB"
+msgstr ""
+
+#: lib/imagefile.php:246
+msgid "kB"
+msgstr ""
+
+#: lib/jabber.php:387
+#, php-format
+msgid "[%s]"
+msgstr ""
+
+#: lib/jabber.php:567
+#, php-format
+msgid "Unknown inbox source %d."
+msgstr ""
+
+#: lib/joinform.php:114
+msgid "Join"
+msgstr ""
+
+#: lib/leaveform.php:114
+msgid "Leave"
+msgstr ""
+
+#: lib/logingroupnav.php:80
+msgid "Login with a username and password"
+msgstr ""
+
+#: lib/logingroupnav.php:86
+msgid "Sign up for a new account"
+msgstr ""
+
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
+msgid "Email address confirmation"
+msgstr ""
+
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
+#, php-format
+msgid ""
+"Hey, %s.\n"
+"\n"
+"Someone just entered this email address on %s.\n"
+"\n"
+"If it was you, and you want to confirm your entry, use the URL below:\n"
+"\n"
+"\t%s\n"
+"\n"
+"If not, just ignore this message.\n"
+"\n"
+"Thanks for your time, \n"
+"%s\n"
+msgstr ""
+
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
+#, php-format
+msgid "%1$s is now listening to your notices on %2$s."
+msgstr ""
+
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
+msgid ""
+"%1$s is now listening to your notices on %2$s.\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"Faithfully yours,\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Change your email address or notification options at %8$s\n"
+msgstr ""
+
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
+msgid "Bio: %s"
+msgstr ""
+
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
+#, php-format
+msgid "New email address for posting to %s"
+msgstr ""
+
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
+#, php-format
+msgid ""
+"You have a new posting address on %1$s.\n"
+"\n"
+"Send email to %2$s to post new messages.\n"
+"\n"
+"More email instructions at %3$s.\n"
+"\n"
+"Faithfully yours,\n"
+"%4$s"
+msgstr ""
+
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
+#, php-format
+msgid "%s status"
+msgstr ""
+
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
+msgid "SMS confirmation"
+msgstr ""
+
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
+#, php-format
+msgid "You've been nudged by %s"
+msgstr ""
+
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
+#, php-format
+msgid ""
+"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
+"to post some news.\n"
+"\n"
+"So let's hear from you :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%4$s\n"
+msgstr ""
+
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
+#, php-format
+msgid "New private message from %s"
+msgstr ""
+
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
+#, php-format
+msgid ""
+"%1$s (%2$s) sent you a private message:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"You can reply to their message here:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%5$s\n"
+msgstr ""
+
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
+#, php-format
+msgid "%s (@%s) added your notice as a favorite"
+msgstr ""
+
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
+#, php-format
+msgid ""
+"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
+"\n"
+"The URL of your notice is:\n"
+"\n"
+"%3$s\n"
+"\n"
+"The text of your notice is:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see the list of %1$s's favorites here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Faithfully yours,\n"
+"%6$s\n"
+msgstr ""
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr ""
+
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
+#, php-format
+msgid ""
+"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
+"\n"
+"The notice is here:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"It reads:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
+msgstr ""
+
+#: lib/mailbox.php:89
+msgid "Only the user can read their own mailboxes."
+msgstr ""
+
+#: lib/mailbox.php:139
+msgid ""
+"You have no private messages. You can send private message to engage other "
+"users in conversation. People can send you messages for your eyes only."
+msgstr ""
+
+#: lib/mailbox.php:227 lib/noticelist.php:505
+msgid "from"
+msgstr ""
+
+#: lib/mailhandler.php:37
+msgid "Could not parse message."
+msgstr ""
+
+#: lib/mailhandler.php:42
+msgid "Not a registered user."
+msgstr ""
+
+#: lib/mailhandler.php:46
+msgid "Sorry, that is not your incoming email address."
+msgstr ""
+
+#: lib/mailhandler.php:50
+msgid "Sorry, no incoming email allowed."
+msgstr ""
+
+#: lib/mailhandler.php:228
+#, php-format
+msgid "Unsupported message type: %s"
+msgstr ""
+
+#: lib/mediafile.php:98 lib/mediafile.php:123
+msgid "There was a database error while saving your file. Please try again."
+msgstr ""
+
+#: lib/mediafile.php:142
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
+msgstr ""
+
+#: lib/mediafile.php:147
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form."
+msgstr ""
+
+#: lib/mediafile.php:152
+msgid "The uploaded file was only partially uploaded."
+msgstr ""
+
+#: lib/mediafile.php:159
+msgid "Missing a temporary folder."
+msgstr ""
+
+#: lib/mediafile.php:162
+msgid "Failed to write file to disk."
+msgstr ""
+
+#: lib/mediafile.php:165
+msgid "File upload stopped by extension."
+msgstr ""
+
+#: lib/mediafile.php:179 lib/mediafile.php:217
+msgid "File exceeds user's quota."
+msgstr ""
+
+#: lib/mediafile.php:197 lib/mediafile.php:234
+msgid "File could not be moved to destination directory."
+msgstr ""
+
+#: lib/mediafile.php:202 lib/mediafile.php:238
+msgid "Could not determine file's MIME type."
+msgstr ""
+
+#: lib/mediafile.php:318
+#, php-format
+msgid " Try using another %s format."
+msgstr ""
+
+#: lib/mediafile.php:323
+#, php-format
+msgid "%s is not a supported file type on this server."
+msgstr ""
+
+#: lib/messageform.php:120
+msgid "Send a direct notice"
+msgstr ""
+
+#: lib/messageform.php:146
+msgid "To"
+msgstr ""
+
+#: lib/messageform.php:159 lib/noticeform.php:185
+msgid "Available characters"
+msgstr ""
+
+#: lib/messageform.php:178 lib/noticeform.php:236
+msgctxt "Send button for sending notice"
+msgid "Send"
+msgstr ""
+
+#: lib/noticeform.php:160
+msgid "Send a notice"
+msgstr ""
+
+#: lib/noticeform.php:173
+#, php-format
+msgid "What's up, %s?"
+msgstr ""
+
+#: lib/noticeform.php:192
+msgid "Attach"
+msgstr ""
+
+#: lib/noticeform.php:196
+msgid "Attach a file"
+msgstr ""
+
+#: lib/noticeform.php:212
+msgid "Share my location"
+msgstr ""
+
+#: lib/noticeform.php:215
+msgid "Do not share my location"
+msgstr ""
+
+#: lib/noticeform.php:216
+msgid ""
+"Sorry, retrieving your geo location is taking longer than expected, please "
+"try again later"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
+msgid "N"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
+msgid "S"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
+msgid "E"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
+msgid "W"
+msgstr ""
+
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
+msgid "at"
+msgstr ""
+
+#: lib/noticelist.php:567
+msgid "in context"
+msgstr ""
+
+#: lib/noticelist.php:602
+msgid "Repeated by"
+msgstr ""
+
+#: lib/noticelist.php:629
+msgid "Reply to this notice"
+msgstr ""
+
+#: lib/noticelist.php:630
+msgid "Reply"
+msgstr ""
+
+#: lib/noticelist.php:674
+msgid "Notice repeated"
+msgstr ""
+
+#: lib/nudgeform.php:116
+msgid "Nudge this user"
+msgstr ""
+
+#: lib/nudgeform.php:128
+msgid "Nudge"
+msgstr ""
+
+#: lib/nudgeform.php:128
+msgid "Send a nudge to this user"
+msgstr ""
+
+#: lib/oauthstore.php:283
+msgid "Error inserting new profile"
+msgstr ""
+
+#: lib/oauthstore.php:291
+msgid "Error inserting avatar"
+msgstr ""
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:311
+msgid "Error inserting remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:345
+msgid "Duplicate notice"
+msgstr ""
+
+#: lib/oauthstore.php:490
+msgid "Couldn't insert new subscription."
+msgstr ""
+
+#: lib/personalgroupnav.php:99
+msgid "Personal"
+msgstr ""
+
+#: lib/personalgroupnav.php:104
+msgid "Replies"
+msgstr ""
+
+#: lib/personalgroupnav.php:114
+msgid "Favorites"
+msgstr ""
+
+#: lib/personalgroupnav.php:125
+msgid "Inbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:126
+msgid "Your incoming messages"
+msgstr ""
+
+#: lib/personalgroupnav.php:130
+msgid "Outbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:131
+msgid "Your sent messages"
+msgstr ""
+
+#: lib/personaltagcloudsection.php:56
+#, php-format
+msgid "Tags in %s's notices"
+msgstr ""
+
+#: lib/plugin.php:115
+msgid "Unknown"
+msgstr ""
+
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+msgid "Subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:126
+msgid "All subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
+msgid "Subscribers"
+msgstr ""
+
+#: lib/profileaction.php:161
+msgid "All subscribers"
+msgstr ""
+
+#: lib/profileaction.php:191
+msgid "User ID"
+msgstr ""
+
+#: lib/profileaction.php:196
+msgid "Member since"
+msgstr ""
+
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
+msgid "All groups"
+msgstr ""
+
+#: lib/profileformaction.php:123
+msgid "Unimplemented method."
+msgstr ""
+
+#: lib/publicgroupnav.php:78
+msgid "Public"
+msgstr ""
+
+#: lib/publicgroupnav.php:82
+msgid "User groups"
+msgstr ""
+
+#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
+msgid "Recent tags"
+msgstr ""
+
+#: lib/publicgroupnav.php:88
+msgid "Featured"
+msgstr ""
+
+#: lib/publicgroupnav.php:92
+msgid "Popular"
+msgstr ""
+
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
+#: lib/repeatform.php:107
+msgid "Repeat this notice?"
+msgstr ""
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr ""
+
+#: lib/repeatform.php:132
+msgid "Repeat this notice"
+msgstr ""
+
+#: lib/revokeroleform.php:91
+#, php-format
+msgid "Revoke the \"%s\" role from this user"
+msgstr ""
+
+#: lib/router.php:709
+msgid "No single user defined for single-user mode."
+msgstr ""
+
+#: lib/sandboxform.php:67
+msgid "Sandbox"
+msgstr ""
+
+#: lib/sandboxform.php:78
+msgid "Sandbox this user"
+msgstr ""
+
+#: lib/searchaction.php:120
+msgid "Search site"
+msgstr ""
+
+#: lib/searchaction.php:126
+msgid "Keyword(s)"
+msgstr ""
+
+#: lib/searchaction.php:127
+msgid "Search"
+msgstr ""
+
+#: lib/searchaction.php:162
+msgid "Search help"
+msgstr ""
+
+#: lib/searchgroupnav.php:80
+msgid "People"
+msgstr ""
+
+#: lib/searchgroupnav.php:81
+msgid "Find people on this site"
+msgstr ""
+
+#: lib/searchgroupnav.php:83
+msgid "Find content of notices"
+msgstr ""
+
+#: lib/searchgroupnav.php:85
+msgid "Find groups on this site"
+msgstr ""
+
+#: lib/section.php:89
+msgid "Untitled section"
+msgstr ""
+
+#: lib/section.php:106
+msgid "More..."
+msgstr ""
+
+#: lib/silenceform.php:67
+msgid "Silence"
+msgstr ""
+
+#: lib/silenceform.php:78
+msgid "Silence this user"
+msgstr ""
+
+#: lib/subgroupnav.php:83
+#, php-format
+msgid "People %s subscribes to"
+msgstr ""
+
+#: lib/subgroupnav.php:91
+#, php-format
+msgid "People subscribed to %s"
+msgstr ""
+
+#: lib/subgroupnav.php:99
+#, php-format
+msgid "Groups %s is a member of"
+msgstr ""
+
+#: lib/subgroupnav.php:105
+msgid "Invite"
+msgstr ""
+
+#: lib/subgroupnav.php:106
+#, php-format
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#: lib/subscriberspeopleselftagcloudsection.php:48
+#: lib/subscriptionspeopleselftagcloudsection.php:48
+msgid "People Tagcloud as self-tagged"
+msgstr ""
+
+#: lib/subscriberspeopletagcloudsection.php:48
+#: lib/subscriptionspeopletagcloudsection.php:48
+msgid "People Tagcloud as tagged"
+msgstr ""
+
+#: lib/tagcloudsection.php:56
+msgid "None"
+msgstr ""
+
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr ""
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr ""
+
+#: lib/topposterssection.php:74
+msgid "Top posters"
+msgstr ""
+
+#: lib/unsandboxform.php:69
+msgid "Unsandbox"
+msgstr ""
+
+#: lib/unsandboxform.php:80
+msgid "Unsandbox this user"
+msgstr ""
+
+#: lib/unsilenceform.php:67
+msgid "Unsilence"
+msgstr ""
+
+#: lib/unsilenceform.php:78
+msgid "Unsilence this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
+msgid "Unsubscribe from this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:137
+msgid "Unsubscribe"
+msgstr ""
+
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr ""
+
+#: lib/userprofile.php:117
+msgid "Edit Avatar"
+msgstr ""
+
+#: lib/userprofile.php:234 lib/userprofile.php:248
+msgid "User actions"
+msgstr ""
+
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
+msgid "Edit profile settings"
+msgstr ""
+
+#: lib/userprofile.php:264
+msgid "Edit"
+msgstr ""
+
+#: lib/userprofile.php:287
+msgid "Send a direct message to this user"
+msgstr ""
+
+#: lib/userprofile.php:288
+msgid "Message"
+msgstr ""
+
+#: lib/userprofile.php:326
+msgid "Moderate"
+msgstr ""
+
+#: lib/userprofile.php:364
+msgid "User role"
+msgstr ""
+
+#: lib/userprofile.php:366
+msgctxt "role"
+msgid "Administrator"
+msgstr ""
+
+#: lib/userprofile.php:367
+msgctxt "role"
+msgid "Moderator"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
+msgid "a few seconds ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
+msgid "about a minute ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
+#, php-format
+msgid "about %d minutes ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
+msgid "about an hour ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
+#, php-format
+msgid "about %d hours ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
+msgid "about a day ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
+#, php-format
+msgid "about %d days ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
+msgid "about a month ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
+#, php-format
+msgid "about %d months ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
+msgid "about a year ago"
+msgstr ""
+
+#: lib/webcolor.php:82
+#, php-format
+msgid "%s is not a valid color!"
+msgstr ""
+
+#: lib/webcolor.php:123
+#, php-format
+msgid "%s is not a valid color! Use 3 or 6 hex chars."
+msgstr ""
+
+#: lib/xmppmanager.php:403
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr ""
diff --git a/locale/de/LC_MESSAGES/statusnet.po b/locale/de/LC_MESSAGES/statusnet.po
index 4bad95b9e..5a52a7c0c 100644
--- a/locale/de/LC_MESSAGES/statusnet.po
+++ b/locale/de/LC_MESSAGES/statusnet.po
@@ -1,12 +1,13 @@
# Translation of StatusNet to German
#
# Author@translatewiki.net: Bavatar
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: Lutzgh
# Author@translatewiki.net: March
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Michael
# Author@translatewiki.net: Michi
-# Author@translatewiki.net: Pill
+# Author@translatewiki.net: The Evil IP address
# Author@translatewiki.net: Umherirrender
# --
# This file is distributed under the same license as the StatusNet package.
@@ -15,12 +16,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-08 21:10:39+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:17+0000\n"
"Language-Team: German\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63415); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: de\n"
"X-Message-Group: out-statusnet\n"
@@ -28,7 +29,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Zugang"
@@ -79,78 +80,83 @@ msgstr "Geschlossen"
msgid "Save access settings"
msgstr "Zugangs-Einstellungen speichern"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Speichern"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "Seite nicht vorhanden"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Unbekannter Benutzer."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s und Freunde, Seite% 2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s und Freunde"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed der Freunde von %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed der Freunde von %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed der Freunde von %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -158,7 +164,7 @@ msgstr ""
"Dies ist die Zeitleiste für %s und Freunde aber bisher hat niemand etwas "
"gepostet."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -168,83 +174,85 @@ msgstr ""
"poste selber etwas."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Du kannst [%1$s in seinem Profil einen Stups geben](../%2$s) oder [ihm etwas "
-"posten](%%%%action.newnotice%%%%?status_textarea=%s) um seine Aufmerksamkeit "
-"zu erregen."
+"Du kannst versuchen, [%1$s in seinem Profil einen Stups zu geben](../%2$s) "
+"oder [ihm etwas posten](%%%%action.newnotice%%%%?status_textarea=%s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Warum [registrierst Du nicht einen Account](%%%%action.register%%%%) und "
-"gibst %s dann einen Stups oder postest ihm etwas, um seine Aufmerksamkeit zu "
-"erregen?"
+"gibst %s dann einen Stups oder postest ihm etwas."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Du und Freunde"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Aktualisierungen von %1$s und Freunden auf %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API-Methode nicht gefunden."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Diese Methode benötigt ein POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
+"Du musst einen Parameter mit Namen 'device' übergeben. Mögliche Werte sind: "
+"sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Konnte Benutzerdaten nicht aktualisieren."
@@ -253,7 +261,7 @@ msgstr "Konnte Benutzerdaten nicht aktualisieren."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Benutzer hat kein Profil."
@@ -263,9 +271,9 @@ msgid "Could not save profile."
msgstr "Konnte Profil nicht speichern."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -323,50 +331,50 @@ msgstr "Direkte Nachricht an %s"
msgid "All the direct messages sent to %s"
msgstr "Alle an %s gesendeten direkten Nachrichten"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Fehlender Nachrichtentext!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
"Die Nachricht ist zu lang. Die maximale Nachrichtenlänge ist 140 Zeichen."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Empfänger nicht gefunden."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Es können keine direkten Nachrichten an Benutzer geschickt werden mit denen "
"du nicht befreundet bist."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Keine Nachricht mit dieser ID gefunden."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Diese Nachricht ist bereits ein Favorit!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Konnte keinen Favoriten erstellen."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Diese Nachricht ist kein Favorit!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Konnte Favoriten nicht löschen."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Konnte Nutzer nicht folgen: Nutzer nicht gefunden"
+msgid "Could not follow user: profile not found."
+msgstr "Konnte Nutzer nicht folgen: Profil nicht gefunden"
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -381,9 +389,9 @@ msgstr "Kann Benutzer nicht entfolgen: Benutzer nicht gefunden."
msgid "You cannot unfollow yourself."
msgstr "Du kannst dich nicht selbst entfolgen!"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Zwei IDs oder Benutzernamen müssen angegeben werden."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Zwei gültige IDs oder Benutzernamen müssen angegeben werden."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -393,139 +401,150 @@ msgstr "Konnte öffentlichen Stream nicht abrufen."
msgid "Could not find target user."
msgstr "Konnte keine Statusmeldungen finden."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Der Nutzername darf nur aus Kleinbuchstaben und Ziffern bestehen. "
"Leerzeichen sind nicht erlaubt."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Nutzername wird bereits verwendet. Suche dir einen anderen aus."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ungültiger Nutzername."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr ""
"Homepage ist keine gültige URL. URL’s müssen ein Präfix wie http enthalten."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Der vollständige Name ist zu lang (maximal 255 Zeichen)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Die Beschreibung ist zu lang (max. %d Zeichen)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Der eingegebene Aufenthaltsort ist zu lang (maximal 255 Zeichen)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Zu viele Pseudonyme! Maximale Anzahl ist %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ungültiges Stichwort: „%s“"
+msgid "Invalid alias: \"%s\"."
+msgstr "Ungültiges Alias: „%s“"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Nutzername „%s“ wird bereits verwendet. Suche dir einen anderen aus."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias kann nicht das gleiche wie der Spitznamen sein."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
msgstr "Gruppe nicht gefunden!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Du bist bereits Mitglied dieser Gruppe"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Der Admin dieser Gruppe hat dich gesperrt."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Konnte Benutzer %s nicht der Gruppe %s hinzufügen."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Du bist kein Mitglied dieser Gruppe."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Konnte Benutzer %1$s nicht aus der Gruppe %2$s entfernen."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s’s Gruppen"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s Gruppen in denen %2$s Mitglied ist"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s Gruppen"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "Gruppen von %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Hochladen fehlgeschlagen."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Kein oauth_token Parameter angegeben."
#: actions/apioauthauthorize.php:106
-#, fuzzy
msgid "Invalid token."
-msgstr "Ungültige Größe."
+msgstr "Ungültiges Token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -537,9 +556,8 @@ msgid "Invalid nickname / password!"
msgstr "Benutzername oder Passwort falsch."
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "Fehler bei den Nutzereinstellungen."
+msgstr "Datenbank Fehler beim Löschen des OAuth Anwendungs Nutzers."
#: actions/apioauthauthorize.php:185
msgid "Database error inserting OAuth application user."
@@ -559,12 +577,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Die Anfrage %s wurde gesperrt und widerrufen."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Unerwartete Formulareingabe."
@@ -583,21 +604,26 @@ msgid ""
"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."
msgstr ""
+"Das Programm <strong>%1$s</strong> von <strong>%2$s</strong> würde gerne "
+"<strong>%3$s</strong> bei deinem %4$s Zugang. Du solltest nur "
+"vertrauenswürdigen Quellen Erlaubnis zu deinem %4$s Zugang geben."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
-msgstr "Konto"
+msgstr "Profil"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Nutzername"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Passwort"
@@ -613,11 +639,11 @@ msgstr "Erlauben"
msgid "Allow or deny access to your account information."
msgstr "Zugang zu deinem Konto erlauben oder ablehnen"
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Diese Methode benötigt ein POST oder DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Du kannst den Status eines anderen Benutzers nicht löschen."
@@ -634,62 +660,68 @@ msgstr "Du kannst deine eigenen Nachrichten nicht wiederholen."
msgid "Already repeated that notice."
msgstr "Nachricht bereits wiederholt"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status gelöscht."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Keine Nachricht mit dieser ID gefunden."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+"Der Client muss einen „status“-Parameter mit einen Wert zur Verfügung "
+"stellen."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
"Das war zu lang. Die Länge einer Nachricht ist auf %d Zeichen beschränkt."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Nicht gefunden"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Nicht gefunden."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"Die maximale Größe von Nachrichten ist %d Zeichen, inklusive der URL der "
"Anhänge"
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Bildformat wird nicht unterstützt."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoriten von %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s Aktualisierung in den Favoriten von %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Aktualisierungen erwähnen %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
-msgstr "Nachrichten von %1$, die auf Nachrichten von %2$ / %3$ antworten."
+msgstr "Nachrichten von %1$s, die auf Nachrichten von %2$s / %3$s antworten."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s öffentliche Zeitleiste"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s Nachrichten von allen!"
@@ -704,19 +736,19 @@ msgstr "Antworten an %s"
msgid "Repeats of %s"
msgstr "Antworten von %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Nachrichten, die mit %s getagt sind"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Aktualisierungen mit %1$s getagt auf %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Nicht gefunden."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-Methode im Aufbau."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -737,8 +769,9 @@ msgstr "Keine Größe."
msgid "Invalid size."
msgstr "Ungültige Größe."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -749,9 +782,9 @@ msgstr ""
"Du kannst dein persönliches Avatar hochladen. Die maximale Dateigröße ist %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr "Benutzer ohne passendes Profil"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -770,7 +803,7 @@ msgid "Preview"
msgstr "Vorschau"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Löschen"
@@ -782,24 +815,28 @@ msgstr "Hochladen"
msgid "Crop"
msgstr "Zuschneiden"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Keine Datei hoch geladen."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
"Wähle eine quadratische Fläche aus dem Bild, um dein Avatar zu speichern"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Daten verloren."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar aktualisiert."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Aktualisierung des Avatars fehlgeschlagen."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar gelöscht."
@@ -807,11 +844,11 @@ msgstr "Avatar gelöscht."
msgid "You already blocked that user."
msgstr "Du hast diesen Benutzer bereits blockiert."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Benutzer blockieren"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -821,27 +858,42 @@ msgstr ""
"Benutzer wird gelöscht, dieser kann dich in Zukunft nicht mehr abonnieren "
"und bekommt keine @-Antworten."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Nein"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Diesen Benutzer freigeben"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ja"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Diesen Benutzer blockieren"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Konnte Blockierungsdaten nicht speichern."
@@ -854,8 +906,8 @@ msgstr "Konnte Blockierungsdaten nicht speichern."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Keine derartige Gruppe."
@@ -885,9 +937,11 @@ msgstr "Freigeben"
msgid "Unblock this user"
msgstr "Diesen Benutzer freigeben"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Versenden an "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Versenden an %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -901,33 +955,43 @@ msgstr "Bestätigungscode nicht gefunden."
msgid "That confirmation code is not for you!"
msgstr "Dieser Bestätigungscode ist nicht für dich!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
+msgid "Unrecognized address type %s."
msgstr "Nicht erkannter Adresstyp %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Diese Adresse wurde bereits bestätigt."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Konnte Benutzerdaten nicht aktualisieren."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Konnte E-Mail-Bestätigung nicht löschen."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Adresse bestätigen"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Die Adresse „%s“ wurde für dein Konto bestätigt."
@@ -937,7 +1001,7 @@ msgid "Conversation"
msgstr "Unterhaltung"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Nachrichten"
@@ -956,7 +1020,7 @@ msgstr "Du bist Besitzer dieses Programms"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Es gab ein Problem mit deinem Sessiontoken."
@@ -973,21 +1037,23 @@ msgstr ""
"Bist du sicher, dass du dieses Programm löschen willst? Es werden alle Daten "
"aus der Datenbank entfernt, auch alle bestehenden Benutzer-Verbindungen."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Dieses Programm nicht löschen"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Programm löschen"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Nicht angemeldet."
@@ -1012,11 +1078,13 @@ msgstr "Notiz löschen"
msgid "Are you sure you want to delete this notice?"
msgstr "Bist du sicher, dass du diese Nachricht löschen möchtest?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Diese Nachricht nicht löschen"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Nachricht löschen"
@@ -1040,58 +1108,69 @@ msgstr ""
"Bist du sicher, dass du den Benutzer löschen wisst? Alle Daten des Benutzers "
"werden aus der Datenbank gelöscht (ohne ein Backup)."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Diesen Benutzer löschen"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Design"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Design-Einstellungen für diese StatusNet-Website."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Ungültige URL für das Logo"
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Theme nicht verfügbar: %s"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Logo ändern"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Seitenlogo"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Theme ändern"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Seitentheme"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Theme dieser Seite."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Angepasster Skin"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Du kannst ein angepasstes StatusNet-Theme als .ZIP-Archiv hochladen."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Hintergrundbild ändern"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Hintergrund"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1100,67 +1179,76 @@ msgstr ""
"Du kannst ein Hintergrundbild für Deine Gruppe hochladen. Die maximale "
"Dateigröße beträgt %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "An"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Aus"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Hintergrundbild ein- oder ausschalten."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Hintergrundbild kacheln"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Farben ändern"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Inhalt"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Seitenleiste"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Text"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Links"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Erweitert"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Eigene CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Standardeinstellungen benutzen"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Standard-Design wiederherstellen"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Standard wiederherstellen"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Speichern"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Design speichern"
@@ -1266,11 +1354,17 @@ msgstr "Benutze dieses Formular, um die Gruppe zu bearbeiten."
msgid "description is too long (max %d chars)."
msgstr "Die Beschreibung ist zu lang (max. %d Zeichen)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ungültiges Stichwort: „%s“"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Konnte Gruppe nicht aktualisieren."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Konnte keinen Favoriten erstellen."
@@ -1278,31 +1372,42 @@ msgstr "Konnte keinen Favoriten erstellen."
msgid "Options saved."
msgstr "Einstellungen gespeichert."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-Mail-Einstellungen"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Einstellen, wie und wann du E-Mails von %%site.name%% bekommst."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresse"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-Mail-Adresse"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Aktuelle bestätigte E-Mail-Adresse."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Entfernen"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1310,110 +1415,140 @@ msgstr ""
"Warte auf die Bestätigung dieser Adresse. Prüfe Deinen Nachrichteneingang "
"(auch den Spam-Ordner) auf eine Nachricht mit weiteren Instruktionen."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Abbrechen"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-Mail-Adresse"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-Mail-Adresse, beispielsweise „Benutzername@example.org“"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Hinzufügen"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Eingehende E-Mail"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Schicke ein E-Mail an diese Adresse um eine Nachricht zu posten."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Neue E-Mail-Adresse für Postings aktivieren; die alte wird automatisch "
"deaktiviert."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Neu"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Einstellungen"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "E-Mail Einstellungen"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Informiere mich über neues Abonnements per E-Mail."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Mir eine E-Mail schicken, wenn jemand meine Nachricht als Favorit speichert."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
"Mir eine E-Mail schicken, wenn mir jemand eine private Nachricht schickt."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Schick mir eine E-Mail, wenn mir jemand eine @Nachricht schickt."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Erlaube Freunden mich zu stupsen und mir E-Mails zu senden."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Ich möchte Einträge per E-Mail veröffentlichen."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "MicroID für meine E-Mail-Adresse veröffentlichen."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Einstellungen gesichert."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "E-Mail Einstellungen gespeichert."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Keine E-Mail-Adresse."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Konnte diese E-Mail-Adresse nicht normalisieren"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ungültige E-Mail-Adresse."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Dies ist bereits deine E-Mail-Adresse."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Diese E-Mail-Adresse gehört einem anderen Nutzer."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Konnte keinen Bestätigungscode einfügen."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1422,43 +1557,53 @@ msgstr ""
"Überprüfe deinen Posteingang (auch den Spamordner!) für den Code und "
"Anweisungen, wie dieser benutzt wird."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Keine ausstehende Bestätigung, die abgebrochen werden kann."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Das ist die falsche IM-Adresse."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Dies ist die falsche E-Mail Adresse"
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Bestätigung abgebrochen."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "E-Mail Bestätigung abgebrochen."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Dies ist nicht deine E-Mail-Adresse."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Die Adresse wurde entfernt."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Die E-Mail Adresse wurde entfernt."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Keine Eingangs-E-Mail-Adresse."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Konnte Nutzereintrag nicht schreiben"
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Eingehende E-Mail-Adresse entfernt"
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Neue Eingangs-E-Mail-Adresse hinzugefügt."
@@ -1577,9 +1722,9 @@ msgstr "Konnte Anfrage-Token nicht in Zugriffs-Token umwandeln."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Service nutzt unbekannte OMB-Protokollversion."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Fehler beim Aktualisieren des entfernten Profils"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Fehler beim Aktualisieren des entfernten Profils."
#: actions/getfile.php:79
msgid "No such file."
@@ -1598,9 +1743,8 @@ msgid "This role is reserved and cannot be set."
msgstr "Diese Aufgabe ist reserviert und kann nicht gesetzt werden"
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "Du kannst diesem Benutzer keine Nachricht schicken."
+msgstr "Auf dieser Seite können keine Benutzerrollen gewährt werden."
#: actions/grantrole.php:82
msgid "User already has this role."
@@ -1608,13 +1752,13 @@ msgstr "Nutzer hat diese Aufgabe bereits"
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Kein Profil angegeben."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Kein Benutzer-Profil mit dieser ID."
@@ -1635,11 +1779,11 @@ msgstr "Dieser Nutzer ist bereits von der Gruppe gesperrt"
msgid "User is not a member of group."
msgstr "Nutzer ist kein Mitglied dieser Gruppe."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Benutzerzugang zu der Gruppe blockieren"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1651,15 +1795,17 @@ msgstr ""
"abschicken und wird auch in Zukunft dieser Gruppe nicht mehr beitreten "
"können."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Diesen Benutzerzugang nicht für diese Gruppe blockieren."
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Diesen Nutzer von der Gruppe sperren"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Datenbank Fehler beim Versuch den Nutzer aus der Gruppe zu blockieren."
@@ -1704,10 +1850,6 @@ msgstr ""
"Du kannst ein Logo für Deine Gruppe hochladen. Die maximale Dateigröße ist %"
"s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Benutzer ohne passendes Profil"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Wähle eine quadratische Fläche aus dem Bild, um das Logo zu speichern."
@@ -1738,34 +1880,38 @@ msgstr "Liste der Benutzer in dieser Gruppe."
msgid "Admin"
msgstr "Admin"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blockieren"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Benutzer zu einem Admin dieser Gruppe ernennen"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Zum Admin ernennen"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Diesen Benutzer zu einem Admin ernennen"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s Zeitleiste"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Aktualisierungen von %1$s auf %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Gruppen"
@@ -1790,7 +1936,7 @@ msgstr ""
"suchen](%%%%action.groupsearch%%%%) oder deine eigene [Gruppe aufmachen!](%%%"
"%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Neue Gruppe erstellen"
@@ -1843,11 +1989,15 @@ msgstr "Dieser Nutzer ist nicht von der Gruppe gesperrt."
msgid "Error removing the block."
msgstr "Fehler beim Freigeben des Benutzers."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM-Einstellungen"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1856,15 +2006,24 @@ msgstr ""
"Du kannst Nachrichten mittels [Jabber/GTalk IM](%%doc.im%%) empfangen und "
"senden. Stelle deine Adresse und Einstellungen unten ein."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM ist nicht verfügbar."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM-Adresse"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Aktuelle bestätigte Jabber/GTalk-Adresse"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1874,11 +2033,9 @@ msgstr ""
"sollte in deinem Jabber/GTalk-Konto eingehen. (Hast du %s zu deiner "
"Freundesliste hinzugefügt?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM-Adresse"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1888,45 +2045,66 @@ msgstr ""
"Aber versichere dich zuerst, dass du %s in deine Kontaktliste in deinem IM-"
"Programm oder GTalk aufgenommen hast."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM Einstellungen"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Schicke mir Nachrichten mittels Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Schicke eine Nachricht, wenn sich mein Jabber/GTalk-Status verändert."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Schicke mir Antworten von Leuten, die ich nicht abonniert habe, mit Jabber/"
"GTalk."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "MicroID für meine Jabber/GTalk-Adresse veröffentlichen."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Einstellungen gesichert."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Keine Jabber-ID"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Konnte diese Jabber ID nicht normalisieren"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ungültige Jabber-ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Diese JabberID hast du schon angegeben."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Diese Jabber ID wird bereits von einem anderen Benutzer verwendet."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1935,10 +2113,32 @@ msgstr ""
"Ein Bestätigungscode wurde an die IM-Adresse geschickt, die du hinzugefügt "
"hast. Du musst zulassen, dass %s dir Nachrichten schicken darf."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Das ist die falsche IM-Adresse."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Konnte die IM Bestätigung nicht löschen."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "IM Bestätigung abgebrochen."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Dies ist nicht deine JabberID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Die IM Adresse wurde entfernt."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1961,7 +2161,7 @@ msgstr "Einladungen wurden deaktiviert."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr "Du musst angemeldet sein, um andere Benutzer zu %s einzuladen"
#: actions/invite.php:72
@@ -1981,7 +2181,9 @@ msgstr "Lade neue Leute ein"
msgid "You are already subscribed to these users:"
msgstr "Du hast diese Benutzer bereits abonniert:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2037,12 +2239,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Senden"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s hat Dich eingeladen, auch bei %2$s mitzumachen."
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2106,7 +2310,9 @@ msgstr "Du musst angemeldet sein, um Mitglied einer Gruppe zu werden."
msgid "No nickname or ID."
msgstr "Kein Benutzername oder ID"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s ist der Gruppe %2$s beigetreten"
@@ -2115,49 +2321,51 @@ msgstr "%1$s ist der Gruppe %2$s beigetreten"
msgid "You must be logged in to leave a group."
msgstr "Du musst angemeldet sein, um aus einer Gruppe auszutreten."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Du bist kein Mitglied dieser Gruppe."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s hat die Gruppe %2$s verlassen"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Bereits angemeldet."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Falscher Benutzername oder Passwort."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Fehler beim setzen des Benutzers. Du bist vermutlich nicht autorisiert."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Anmelden"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "An Seite anmelden"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Anmeldedaten merken"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Automatisch anmelden; nicht bei gemeinsam genutzten PCs einsetzen!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Passwort vergessen?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2165,14 +2373,17 @@ msgstr ""
"Bitte gebe aus Sicherheitsgründen deinen Benutzernamen und dein Passwort "
"ein, bevor die Änderungen an deinen Einstellungen übernommen werden."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Mit Nutzernamen und Passwort anmelden."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Melde dich mit Nutzernamen und Passwort an. Du hast noch keinen Nutzernamen? "
-"[Registriere](%%action.register%%) ein neues Konto."
+"Du hast noch keinen Nutzernamen? [Registriere](%%action.register%%) ein "
+"neues Konto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2184,9 +2395,9 @@ msgid "%1$s is already an admin for group \"%2$s\"."
msgstr "%1$s ist bereits Administrator der Gruppe \"%2$s\"."
#: actions/makeadmin.php:133
-#, fuzzy, php-format
+#, php-format
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 keinen Mitgliedseintrag für %1$s aus Gruppe %2$s empfangen."
#: actions/makeadmin.php:146
#, php-format
@@ -2194,8 +2405,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Konnte %1$s nicht zum Administrator der Gruppe %2$s machen"
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Kein aktueller Status"
+msgid "No current status."
+msgstr "Kein aktueller Status."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2229,12 +2440,12 @@ msgstr "Benutzer dieses Formular, um eine neue Gruppe zu erstellen."
msgid "New message"
msgstr "Neue Nachricht"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Du kannst diesem Benutzer keine Nachricht schicken."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Kein Inhalt!"
@@ -2242,7 +2453,7 @@ msgstr "Kein Inhalt!"
msgid "No recipient specified."
msgstr "Kein Empfänger angegeben."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2257,7 +2468,7 @@ msgstr "Nachricht gesendet"
msgid "Direct message to %s sent."
msgstr "Direkte Nachricht an %s abgeschickt"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax-Fehler"
@@ -2265,7 +2476,7 @@ msgstr "Ajax-Fehler"
msgid "New notice"
msgstr "Neue Nachricht"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Nachricht hinzugefügt"
@@ -2319,10 +2530,10 @@ msgstr "Alle Aktualisierungen, die den Suchbegriff „%s“ enthalten"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Dieser Benutzer erlaubt keine Stupser oder hat seine E-Mail-Adresse noch "
-"nicht bestätigt."
+"nicht bestätigt oder eingestellt."
#: actions/nudge.php:94
msgid "Nudge sent"
@@ -2364,11 +2575,11 @@ msgid "You are not a user of that application."
msgstr "Du bist kein Benutzer dieses Programms."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Kann Zugang dieses Programm nicht entfernen: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Kann Zugang dieses Programm nicht entfernen: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
"Du hast noch kein Programm die Erlaubnis gegeben dein Profil zu benutzen."
@@ -2378,25 +2589,30 @@ msgid "Developers can edit the registration settings for their applications "
msgstr ""
"Entwickler können die Registrierungseinstellungen ihrer Programme ändern "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
msgstr "Nachricht hat kein Profil"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s Status auf %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "Content-Typ "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Content-Typ %s wird nicht untersützt."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Nur "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Bitte nur %s URLs über einfaches HTTP."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Kein unterstütztes Datenformat."
@@ -2434,7 +2650,7 @@ msgstr "Profil-Einstellungen ansehen"
#: actions/othersettings.php:123
msgid "Show or hide profile designs."
-msgstr "Prifil-Designs anzeigen oder verstecken."
+msgstr "Profil-Designs anzeigen oder verstecken."
#: actions/othersettings.php:153
msgid "URL shortening service is too long (max 50 chars)."
@@ -2449,14 +2665,12 @@ msgid "No login token specified."
msgstr "Kein Zugangstoken angegeben."
#: actions/otp.php:90
-#, fuzzy
msgid "No login token requested."
-msgstr "Keine Profil-ID in der Anfrage."
+msgstr "Kein Login-Token angefordert."
#: actions/otp.php:95
-#, fuzzy
msgid "Invalid login token specified."
-msgstr "Token ungültig oder abgelaufen."
+msgstr "Login-Token ungültig oder abgelaufen."
#: actions/otp.php:104
msgid "Login token expired."
@@ -2502,7 +2716,7 @@ msgid "6 or more characters"
msgstr "6 oder mehr Zeichen"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Bestätigen"
@@ -2514,11 +2728,11 @@ msgstr "Gleiches Passwort wie zuvor"
msgid "Change"
msgstr "Ändern"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Das Passwort muss aus 6 oder mehr Zeichen bestehen."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Passwörter stimmen nicht überein."
@@ -2530,7 +2744,7 @@ msgstr "Altes Passwort falsch"
msgid "Error saving user; invalid."
msgstr "Fehler beim Speichern des Nutzers, ungültig."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Konnte neues Passwort nicht speichern"
@@ -2539,7 +2753,7 @@ msgid "Password saved."
msgstr "Passwort gespeichert."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Pfad"
@@ -2549,23 +2763,23 @@ msgstr "Pfad- und Serverangaben für diese StatusNet Seite."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Theme-Verzeichnis nicht lesbar: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Theme-Verzeichnis nicht lesbar: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Avatar-Verzeichnis ist nicht beschreibbar: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Avatar-Verzeichnis ist nicht beschreibbar: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Hintergrund Verzeichnis ist nicht beschreibbar: %s"
+msgid "Background directory not writable: %s."
+msgstr "Hintergrund-Verzeichnis ist nicht beschreibbar: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Sprachverzeichnis nicht lesbar: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Sprachverzeichnis nicht lesbar: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2705,19 +2919,19 @@ msgstr ""
msgid "People search"
msgstr "Suche nach anderen Nutzern"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Ungültiger Personen-Tag: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Ungültiger Personen-Tag: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Benutzer die sich selbst mit %1$s getagged haben - Seite %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Ungültiger Nachrichteninhalt"
+msgid "Invalid notice content."
+msgstr "Ungültiger Nachrichteninhalt."
#: actions/postnotice.php:101
#, php-format
@@ -2745,43 +2959,44 @@ msgstr "Profilinformation"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 Kleinbuchstaben oder Ziffern, keine Sonder- oder Leerzeichen"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Vollständiger Name"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Homepage"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
"URL deiner Homepage, deines Blogs, oder deines Profils auf einer anderen Site"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Beschreibe dich selbst und deine Interessen in %d Zeichen"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Beschreibe dich selbst und deine Interessen"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografie"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Aufenthaltsort"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Wo du bist, beispielsweise „Stadt, Gebiet, Land“"
@@ -2791,7 +3006,7 @@ msgstr "Teile meine aktuelle Position wenn ich Nachrichten sende"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Stichwörter"
@@ -2825,7 +3040,7 @@ msgstr ""
"Abonniere automatisch alle Kontakte, die mich abonnieren (sinnvoll für Nicht-"
"Menschen)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Die Biografie ist zu lang (max. %d Zeichen)"
@@ -2866,8 +3081,8 @@ msgstr "Einstellungen gespeichert."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Jenseits des Seitenlimits (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Jenseits des Seitenlimits (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3037,7 +3252,7 @@ msgstr "Passwort zurücksetzen"
msgid "Recover password"
msgstr "Stelle Passwort wieder her"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Wiederherstellung des Passworts angefordert"
@@ -3057,19 +3272,19 @@ msgstr "Zurücksetzen"
msgid "Enter a nickname or email address."
msgstr "Gib einen Spitznamen oder eine E-Mail-Adresse ein."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Kein Benutzer mit dieser E-Mail-Adresse oder mit diesem Nutzernamen."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Der Nutzer hat keine registrierte E-Mail-Adresse."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Fehler beim Speichern der Adressbestätigung."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3077,113 +3292,130 @@ msgstr ""
"Anweisungen für die Wiederherstellung deines Passworts wurden an deine "
"hinterlegte E-Mail-Adresse geschickt."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Unerwarteter Passwortreset."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Passwort muss mehr als 6 Zeichen enthalten"
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Passwort und seine Bestätigung stimmen nicht überein."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Fehler bei den Nutzereinstellungen."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Neues Passwort erfolgreich gespeichert. Du bist jetzt angemeldet."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Es tut uns leid, zum Registrieren benötigst du eine Einladung."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Entschuldigung, ungültiger Bestätigungscode."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registrierung erfolgreich"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrieren"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registrierung nicht gestattet"
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
"Du kannst dich nicht registrieren, wenn du die Lizenz nicht akzeptierst."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Diese E-Mail-Adresse existiert bereits."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Benutzername oder Passwort falsch."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-"Hier kannst du einen neuen Zugang einrichten. Danach kannst du Nachrichten "
-"und Links an deine Freunde und Kollegen schicken. "
+"Hier kannst du einen neuen Zugang einrichten. Anschließend kannst du "
+"Nachrichten und Links mit deinen Freunden und Kollegen teilen. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 kleingeschriebene Buchstaben oder Zahlen, keine Satz- oder Leerzeichen. "
"Pflicht."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 oder mehr Buchstaben. Pflicht."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Gleiches Passwort wie zuvor. Pflichteingabe."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-Mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Wird nur für Updates, wichtige Mitteilungen und zur "
"Passwortwiederherstellung verwendet"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Längerer Name, bevorzugt dein „echter“ Name"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Meine Texte und Daten sind verfügbar unter"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Mir ist bewusst, dass Inhalte und Daten von %1$s privat und vertraulich sind."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Meine Texte und Dateien sind urheberrechtlich geschützt durch %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Meine Texte und Dateien verbleiben unter meinem eigenen Urheberrecht."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Namensnennung 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Alle Rechte vorbehalten."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-"außer folgende private Daten: Passwort, E-Mail-Adresse, IM-Adresse und "
-"Telefonnummer."
+"Abgesehen von folgenden Daten: Passwort, Email Adresse, IM Adresse und "
+"Telefonnummer, sind all meine Texte und Dateien unter %s verfügbar."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3216,7 +3448,7 @@ msgstr ""
"\n"
"Danke für deine Anmeldung, wir hoffen das dir der Service gefällt."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3261,7 +3493,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Profil-URL bei einem anderen kompatiblen Microbloggingdienst"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Abonnieren"
@@ -3298,7 +3530,7 @@ msgstr "Du kannst deine eigene Nachricht nicht wiederholen."
msgid "You already repeated that notice."
msgstr "Nachricht bereits wiederholt"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Wiederholt"
@@ -3336,10 +3568,10 @@ msgstr "Feed der Nachrichten von %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
-"Dies ist die Zeitleiste für %1$s und Freunde aber bisher hat niemand etwas "
-"gepostet."
+"Dies ist die Zeitleiste für %1$s, aber %2$s hat noch keine Notiz dazu "
+"erhalten."
#: actions/replies.php:204
#, php-format
@@ -3347,16 +3579,17 @@ msgid ""
"You can engage other users in a conversation, subscribe to more people or "
"[join groups](%%action.groups%%)."
msgstr ""
+"Du kannst andere Nutzer ansprechen, mehr Leuten folgen oder [Gruppen "
+"beitreten](%%action.groups%%)."
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Du kannst [%1$s in seinem Profil einen Stups geben](../%s) oder [ihm etwas "
-"posten](%%%%action.newnotice%%%%?status_textarea=%s) um seine Aufmerksamkeit "
-"zu erregen."
+"Du kannst versuchen [%1$s einen Stups zu geben](../%s) oder [ihm etwas "
+"posten](%%%%action.newnotice%%%%?status_textarea=%s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3371,14 +3604,13 @@ msgstr "Du kannst die Rollen von Nutzern dieser Seite nicht widerrufen."
msgid "User doesn't have this role."
msgstr "Benutzer verfügt nicht über diese Rolle."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65
-#, fuzzy
msgid "You cannot sandbox users on this site."
-msgstr "Du kannst diesem Benutzer keine Nachricht schicken."
+msgstr "Du kannst Benutzer auf dieser Seite nicht auf den Spielplaz schicken."
#: actions/sandbox.php:72
msgid "User is already sandboxed."
@@ -3386,7 +3618,7 @@ msgstr "Benutzer ist schon blockiert."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sitzung"
@@ -3420,30 +3652,33 @@ msgid "You must be logged in to view an application."
msgstr "Du musst angemeldet sein, um aus dieses Programm zu betrachten."
#: actions/showapplication.php:157
-#, fuzzy
msgid "Application profile"
-msgstr "Nachricht hat kein Profil"
+msgstr "Anwendungsprofil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Symbol"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Name"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisation"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Beschreibung"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistiken"
@@ -3466,11 +3701,11 @@ msgstr "Programminformation"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Anwender Schlüssel"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Anwender Geheimnis"
#: actions/showapplication.php:273
msgid "Request token URL"
@@ -3525,21 +3760,29 @@ msgid ""
"You haven't chosen any favorite notices yet. Click the fave button on "
"notices you like to bookmark them for later or shed a spotlight on them."
msgstr ""
+"Du hast noch keine Lieblingsnachrichten gewählt. Klicke den Favorisieren-"
+"Button bei einer Nachricht, die dir gefällt um die Aufmerksamkeit auf sie zu "
+"richten und sie in deine Lesezeichen aufzunehmen."
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
+"%s hat noch keine Nachricht zu den Favoriten hinzugefügt. Sende du doch "
+"einfach eine interessante Nachricht, damit sich daran etwas ändert :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%s hat noch keine Nachrichten zu seinen Favoriten hinzugefügt. Warum "
+"[meldest du dich nicht an](%%%%action.register%%%%) und schreibst etwas, was "
+"%s hinzufügen kann!"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3555,67 +3798,67 @@ msgstr "%s Gruppe"
msgid "%1$s group, page %2$d"
msgstr "%1$s Gruppe, Seite %d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Gruppenprofil"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Nachricht"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Pseudonyme"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Gruppenaktionen"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Nachrichtenfeed der Gruppe %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Nachrichtenfeed der Gruppe %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Nachrichtenfeed der Gruppe %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Postausgang von %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Mitglieder"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Kein)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Alle Mitglieder"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Erstellt"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3624,8 +3867,13 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** ist eine Gruppe auf %%%%site.name%%%%, einem [micro-blogging](http://"
+"en.wikipedia.org/wiki/Micro-blogging) Dienst auf Basis der freien Software "
+"[StatusNet](http://status.net/). [Werde Mitglied](%%%%action.register%%%%) "
+"und werde Teil der Gruppe und vielen anderen! ([Mehr Informationen](%%%%doc."
+"help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3638,7 +3886,7 @@ msgstr ""
"Freien Software [StatusNet](http://status.net/). Seine Mitglieder erstellen "
"kurze Nachrichten über Ihr Leben und Interessen. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administratoren"
@@ -3717,11 +3965,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Du kannst %1$s in seinem Profil einen Stups geben oder [ihm etwas posten](%%%"
-"%action.newnotice%%%%?status_textarea=%s) um seine Aufmerksamkeit zu erregen."
+"%action.newnotice%%%%?status_textarea=%s)."
#: actions/showstream.php:243
#, php-format
@@ -3731,6 +3979,11 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** ist Mitglied bei %%%%site.name%%%%, einem [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) Dienst auf Basis der freien Software "
+"[StatusNet](http://status.net/). [Werde Mitglied](%%%%action.register%%%%) "
+"um **%s**'s und vielen anderen zu folgen! ([Mehr Informationen](%%%%doc.help%"
+"%%%))"
#: actions/showstream.php:248
#, php-format
@@ -3774,11 +4027,11 @@ msgid "Unknown language \"%s\"."
msgstr "Unbekannte Sprache „%s“"
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Minimale Textlänge ist 140 Zeichen."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Minimale Textlänge ist 0 Zeichen (unbegrenzt)"
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "Duplikatlimit muss mehr als 1 Sekunde sein"
#: actions/siteadminpanel.php:221
@@ -3816,9 +4069,8 @@ msgid "Contact email address for your site"
msgstr "Kontakt-E-Mail-Adresse für Deine Site."
#: actions/siteadminpanel.php:245
-#, fuzzy
msgid "Local"
-msgstr "Lokale Ansichten"
+msgstr "Lokal"
#: actions/siteadminpanel.php:256
msgid "Default timezone"
@@ -3835,6 +4087,8 @@ msgstr "Bevorzugte Sprache"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Sprache der Seite für den Fall, dass die automatische Erkennung anhand der "
+"Browser-Einstellungen nicht verfügbar ist."
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3871,8 +4125,8 @@ msgid "Unable to save site notice."
msgstr "Konnte Seitenbenachrichtigung nicht speichern"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "Maximale Länge von Systembenachrichtigungen ist 255 Zeichen"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Maximale Länge von Systembenachrichtigungen ist 255 Zeichen."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3886,44 +4140,71 @@ msgstr "Systembenachrichtigung (max. 255 Zeichen; HTML erlaubt)"
msgid "Save site notice"
msgstr "Systemnachricht speichern"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS-Einstellungen"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Du kannst SMS per E-Mail empfangen von %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS ist nicht verfügbar."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS Adresse"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Aktuelle für den SMS-Dienst bestätigte Telefonnummer."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Warte auf die Bestätigung dieser Telefonnummer."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Bestätigungscode"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Gib den Code ein, den du auf deinem Handy via SMS bekommen hast."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Bestätigen"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "SMS-Telefonnummer"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Telefonnummer, keine Sonder- oder Leerzeichen mit Vorwahl"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS Einstellungen"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3931,23 +4212,33 @@ msgstr ""
"Schicke mir Nachrichten per SMS; ich weiss, dass mir dadurch hohe Kosten bei "
"meinem Netzbetreiber entstehen können."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "SMS Einstellungen gesichert."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Keine Telefonnummer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Kein Netzanbieter ausgewählt."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Dies ist bereits deine Telefonnummer."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Diese Telefonnummer wird bereits von einem anderen Benutzer verwendet."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3956,23 +4247,40 @@ msgstr ""
"gesandt. Überprüfen Sie bitte Ihren Posteingang (auch den Spamordner!) auf "
"den Code und die Anweisungen, um ihn zu benutzen."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Die Bestätigungsnummer ist falsch."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS Bestätigung abgebrochen."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Dies ist nicht deine Telefonnummer."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "SMS Telefonnummer wurde entfernt."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Netzanbieter"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Wähle einen Netzanbieter"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3982,44 +4290,44 @@ msgstr ""
"Email beherrscht, aber noch in der Liste fehlt, schicke uns eine Mail unter %"
"s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Kein Code eingegeben"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
-msgstr ""
+msgstr "Snapshots"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Hauptnavigation"
+msgstr "Verwalten Snapshot-Konfiguration"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
-msgstr ""
+msgstr "Der Wert zum Ausführen von Snapshots ist ungültig."
#: actions/snapshotadminpanel.php:133
msgid "Snapshot frequency must be a number."
-msgstr ""
+msgstr "Die Snapshot-Frequenz muss eine Zahl sein."
#: actions/snapshotadminpanel.php:144
msgid "Invalid snapshot report URL."
-msgstr ""
+msgstr "Ungültige Snapshot-Berichts-URL."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr ""
+msgid "Randomly during web hit"
+msgstr "Zufällig während Webseitenbesuchen"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
-msgstr ""
+msgstr "Als zeitlich geplanten Auftrag"
#: actions/snapshotadminpanel.php:206
msgid "Data snapshots"
-msgstr ""
+msgstr "Daten-Snapshot"
#: actions/snapshotadminpanel.php:208
msgid "When to send statistical data to status.net servers"
@@ -4031,7 +4339,7 @@ msgstr "Frequenz"
#: actions/snapshotadminpanel.php:218
msgid "Snapshots will be sent once every N web hits"
-msgstr ""
+msgstr "Snapshots werden all N Webseitenbesuche gesendet"
#: actions/snapshotadminpanel.php:226
msgid "Report URL"
@@ -4039,19 +4347,18 @@ msgstr "URL melden"
#: actions/snapshotadminpanel.php:227
msgid "Snapshots will be sent to this URL"
-msgstr ""
+msgstr "An diese Adresse werden Snapshots gesendet"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Site-Einstellungen speichern"
+msgstr "Snapshot-Einstellungen speichern"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Du hast dieses Profil nicht abonniert."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Konnte Abonnement nicht erstellen."
@@ -4140,17 +4447,22 @@ msgid ""
"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
"automatically subscribe to people you already follow there."
msgstr ""
+"Du hast momentan noch niemanden abonniert. Benutze die [Personensuche](%%"
+"action.peoplesearch%%) um nach Freunden zu suchen oder besuche die [Beliebte "
+"Benutzer](%%action.featured%%) Seite. Wenn du ein [Twitter Benutzer](%%"
+"action.twittersettings%%) bist kannst du auch automatisch deine Twitter "
+"Freunde abonnieren."
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
msgstr "%s hat niemanden abonniert."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4183,12 +4495,12 @@ msgstr "Kein ID Argument."
msgid "Tag %s"
msgstr "Tag %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Benutzerprofil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4225,10 +4537,6 @@ msgstr ""
msgid "No such tag."
msgstr "Stichwort nicht vorhanden."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-Methode im Aufbau."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Du hast diesen Benutzer nicht blockiert."
@@ -4242,7 +4550,7 @@ msgid "User is not silenced."
msgstr "Der Benutzer ist nicht ruhig gestellt."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Keine Profil-ID in der Anfrage."
#: actions/unsubscribe.php:98
@@ -4280,7 +4588,8 @@ msgstr "Willkommens-Nachricht ungültig. Maximale Länge sind 255 Zeichen."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Ungültiges Abonnement: '%1$s' ist kein Benutzer"
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4339,7 +4648,7 @@ msgstr ""
"dieses Nutzers abonnieren möchtest. Wenn du das nicht wolltest, klicke auf "
"„Abbrechen“."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Lizenz"
@@ -4395,17 +4704,17 @@ msgstr ""
#: actions/userauthorization.php:303
#, php-format
msgid "Listener URI ‘%s’ not found here."
-msgstr ""
+msgstr "Eine Listener-URI „%s“ wurde hier nicht gefunden."
#: actions/userauthorization.php:308
#, php-format
msgid "Listenee URI ‘%s’ is too long."
-msgstr ""
+msgstr "Die URI „%s“ für den Stream ist zu lang."
#: actions/userauthorization.php:314
#, php-format
msgid "Listenee URI ‘%s’ is a local user."
-msgstr ""
+msgstr "Die URI „%s“ für den Stream ist ein lokaler Benutzer."
#: actions/userauthorization.php:329
#, php-format
@@ -4415,7 +4724,7 @@ msgstr "Profiladresse '%s' ist für einen lokalen Benutzer."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "Avatar Adresse '%s' ist nicht gültig."
#: actions/userauthorization.php:350
#, php-format
@@ -4443,38 +4752,44 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Hab Spaß!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "%1$s Gruppen, Seite %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Suche nach weiteren Gruppen"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s ist in keiner Gruppe Mitglied."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Versuche [Gruppen zu finden](%%action.groupsearch%%) und diesen beizutreten."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Aktualisierungen von %1$s auf %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4483,11 +4798,11 @@ msgstr ""
"Die Seite wird mit %1$s Version %2$s betrieben. Copyright 2008-2010 "
"StatusNet, Inc. und Mitarbeiter"
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Mitarbeiter"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4499,15 +4814,19 @@ msgstr ""
"wie veröffentlicht durch die Free Software Foundation, entweder Version 3 "
"der Lizenz, oder jede höhere Version."
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"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. "
msgstr ""
+"Dieses Programm wird in der Hoffnung vertrieben, dass es nützlich sein wird, "
+"aber OHNE IRGENDEINE GARANTIE, sogar ohne die implizite Garantie der "
+"MARKTREIFE oder der EIGNUNG FÃœR EINEN BESTIMMTEN ZWECK. Lesen Sie die GNU "
+"Affero General Public License für weitere Details. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4516,93 +4835,142 @@ msgstr ""
"Du hast eine Kopie der GNU Affero General Public License zusammen mit diesem "
"Programm erhalten. Wenn nicht, siehe %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Erweiterungen"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Version"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autor(en)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Die URL „%s“ konnte nicht verarbeitet werden"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin denkt, dass etwas unmöglich ist."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"Keine Datei darf größer als %d Bytes sein und die Datei die du verschicken "
-"wolltest ist %d Bytes groß. Bitte eine kleinere Datei hoch laden."
+"wolltest war %d Bytes groß. Bitte eine kleinere Version hochladen."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Eine Datei dieser Größe überschreitet deine User Quota von %d Byte."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
"Eine Datei dieser Größe würde deine monatliche Quota von %d Byte "
"überschreiten."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ungültiger Dateiname."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Konnte Gruppe nicht beitreten"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Nicht Mitglied der Gruppe"
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Konnte Gruppe nicht verlassen"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Konnte Gruppe nicht aktualisieren."
-#: classes/Login_token.php:76
-#, fuzzy, php-format
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
msgid "Could not create login token for %s"
-msgstr "Konnte keinen Favoriten erstellen."
+msgstr "Konnte keinen Login-Token für %s erstellen"
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Nirgedwo einen Datenbanknamen oder DSN gefunden."
-#: classes/Message.php:45
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Direktes senden von Nachrichten wurde blockiert"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Konnte Nachricht nicht einfügen."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Konnte Nachricht nicht mit neuer URI versehen."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Kein Profil (%1$d) für eine Notiz gefunden (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Datenbankfehler beim Einfügen des Hashtags: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problem bei Speichern der Nachricht. Sie ist zu lang."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problem bei Speichern der Nachricht. Unbekannter Benutzer."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Zu schnell zu viele Nachrichten; atme kurz durch und schicke sie erneut in "
"ein paar Minuten ab."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4610,291 +4978,372 @@ msgstr ""
"Zu schnell zu viele Nachrichten; atme kurz durch und schicke sie erneut in "
"ein paar Minuten ab."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
"Du wurdest für das Schreiben von Nachrichten auf dieser Seite gesperrt."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problem bei Speichern der Nachricht."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+"Der Methode saveKnownGroups wurde ein schlechter Wert zur Verfügung gestellt"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problem bei Speichern der Nachricht."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Die Rolle „%1$s“ kann nicht für Benutzer #%2$d widerrufen werden. Benutzer "
+"existiert nicht."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Die Rolle „%1$s“ kann nicht für Benutzer #%2$d widerrufen werden. "
+"Datenbankfehler."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Benutzer hat kein Profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Konnte Seitenbenachrichtigung nicht speichern."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Dieser Benutzer erlaubt dir nicht ihn zu abonnieren."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Bereits abonniert!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Dieser Benutzer hat dich blockiert."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Nicht abonniert!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr "Konnte Abonnement nicht löschen."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "Konnte Selbst-Abonnement nicht löschen."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
-msgstr "Konnte OMB-Abonnement nicht löschen."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Konnte OMB-Abonnement-Token nicht löschen."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Konnte Abonnement nicht löschen."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Herzlich willkommen bei %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Konnte Gruppe nicht erstellen."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Konnte Gruppenmitgliedschaft nicht setzen."
+msgstr "Konnte die Gruppen URI nicht setzen."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Konnte Gruppenmitgliedschaft nicht setzen."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Konnte Abonnement nicht erstellen."
+msgstr "Konnte die lokale Gruppen Information nicht speichern."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Ändern der Profileinstellungen"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Avatar hochladen"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Ändere dein Passwort"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Ändere die E-Mail-Verarbeitung"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Passe dein Profil an"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Sonstige"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Sonstige Optionen"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Sonstige"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Seite ohne Titel"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Hauptnavigation"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Persönliches Profil und Freundes-Zeitleiste"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Eigene"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Ändere deine E-Mail, Avatar, Passwort und Profil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Zum Dienst verbinden"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Verbinden"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Seiteneinstellung ändern"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administrator"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Lade Freunde und Kollegen ein dir auf %s zu folgen"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Einladen"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Von der Seite abmelden"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Abmelden"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Neues Konto erstellen"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrieren"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Auf der Seite anmelden"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Anmelden"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hilf mir!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Hilfe"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Suche nach Leuten oder Text"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Suchen"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Seitennachricht"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Lokale Ansichten"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Neue Nachricht"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Unternavigation"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hilfe"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Ãœber"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "AGB"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privatsphäre"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Quellcode"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Plakette"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet-Software-Lizenz"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** ist ein Microbloggingdienst von [%%site.broughtby%%](%%"
"site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** ist ein Microbloggingdienst."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4905,69 +5354,85 @@ msgstr ""
"(Version %s) betrieben, die unter der [GNU Affero General Public License]"
"(http://www.fsf.org/licensing/licenses/agpl-3.0.html) erhältlich ist."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "StatusNet-Software-Lizenz"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
-msgstr ""
+msgstr "Inhalte und Daten von %1$s sind privat und vertraulich."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"Inhalt und Daten urheberrechtlich geschützt durch %1$s. Alle Rechte "
"vorbehalten."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
+"Urheberrecht von Inhalt und Daten liegt bei den Beteiligten. Alle Rechte "
+"vorbehalten."
-#: lib/action.php:847
-msgid "All "
-msgstr "Alle "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "Lizenz."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Alle Inhalte und Daten von %1$s sind unter der %2$s Lizenz verfügbar."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Seitenerstellung"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Später"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Vorher"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "root-Element eines Feeds erwartet aber ganzes XML Dokument erhalten."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
-msgstr ""
+msgstr "Fremdinhalt kann noch nicht eingebunden werden."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Kann eingebundenen XML Inhalt nicht verarbeiten."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "Eingebundener Base64 Inhalt kann noch nicht verarbeitet werden."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Du kannst keine Änderungen an dieser Seite vornehmen."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Änderungen an dieser Seite sind nicht erlaubt."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() noch nicht implementiert."
@@ -4977,154 +5442,191 @@ msgstr "showForm() noch nicht implementiert."
msgid "saveSettings() not implemented."
msgstr "saveSettings() noch nicht implementiert."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Konnte die Design Einstellungen nicht löschen."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Basis Seiteneinstellungen"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Seite"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Motiv-Konfiguration"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Design"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Benutzereinstellung"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Benutzer"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Zugangskonfiguration"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Pfadkonfiguration"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Sitzungseinstellungen"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Seitennachricht bearbeiten"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "SMS-Konfiguration"
+msgstr "Snapshot Konfiguration"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
-msgstr ""
-
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
+msgstr "API-Ressource erfordert lesen/schreib Zugriff; du hast nur Leserechte."
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Programm bearbeiten"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Programmsymbol"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Beschreibe dein Programm in %d Zeichen"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Beschreibe dein Programm"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Quelladresse"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "Adresse der Homepage dieses Programms"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Quelladresse"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "Für diese Anwendung verantwortliche Organisation"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "Homepage der Gruppe oder des Themas"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "aufzurufende Adresse nach der Authentifizierung"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Browser"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Arbeitsfläche"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Typ der Anwendung, Browser oder Arbeitsfläche"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Schreibgeschützt"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Lese/Schreibzugriff"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Standardeinstellung dieses Programms: Schreibgeschützt oder Lese/"
"Schreibzugriff"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Abbrechen"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "Lese/Schreibzugriff"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "Schreibgeschützt"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Genehmigte %1$s - \"%2$s\" Zugriff."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr "Entfernen"
+msgstr "Widerrufen"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Anhänge"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Anbieter"
@@ -5136,45 +5638,64 @@ msgstr "Nachrichten in denen dieser Anhang erscheint"
msgid "Tags for this attachment"
msgstr "Stichworte für diesen Anhang"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Passwort konnte nicht geändert werden"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Passwort kann nicht geändert werden"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Befehl-Ergebnisse"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Befehl ausgeführt"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Befehl fehlgeschlagen"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Leider ist dieser Befehl noch nicht implementiert."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Nachricht mit dieser ID existiert nicht"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Benutzer hat keine letzte Nachricht"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Die bestätigte E-Mail-Adresse konnte nicht gespeichert werden."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Konnte keinen lokalen Nutzer mit dem Nick %s finden"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Leider ist dieser Befehl noch nicht implementiert."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Es macht keinen Sinn dich selbst anzustupsen!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Stups an %s geschickt"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5185,195 +5706,202 @@ msgstr ""
"Abonnenten: %2$s\n"
"Mitteilungen: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Nachricht mit dieser ID existiert nicht"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Benutzer hat keine letzte Nachricht"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Nachricht als Favorit markiert."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Du bist bereits Mitglied dieser Gruppe"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Konnte Benutzer %s nicht der Gruppe %s hinzufügen"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s ist der Gruppe %s beigetreten"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Konnte Benutzer %s aus der Gruppe %s nicht entfernen"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Konnte Benutzer %s nicht der Gruppe %s hinzufügen."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s hat die Gruppe %s verlassen"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Konnte Benutzer %1$s nicht aus der Gruppe %2$s entfernen."
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Vollständiger Name: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Standort: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Homepage: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Ãœber: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s ist ein entferntes Profil; man kann direkte Nachrichten nur an Nutzer auf "
+"dem selben Server senden."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Nachricht zu lang - maximal %d Zeichen erlaubt, du hast %d gesendet"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Nachricht zu lang - maximal %1$d Zeichen erlaubt, du hast %2$d gesendet."
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Direkte Nachricht an %s abgeschickt"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Fehler beim Senden der Nachricht"
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Du kannst deine eigenen Nachrichten nicht wiederholen."
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Nachricht bereits wiederholt"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Nachricht von %s wiederholt"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Fehler beim Wiederholen der Nachricht"
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Nachricht zu lange - maximal %d Zeichen erlaubt, du hast %d gesendet"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Antwort an %s gesendet"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Problem beim Speichern der Nachricht."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Gib den Namen des Benutzers an, den du abonnieren möchtest"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Unbekannter Benutzer."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "OMB Profile können nicht mit einem Kommando abonniert werden."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "%s abonniert"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Gib den Namen des Benutzers ein, den du nicht mehr abonnieren möchtest"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "%s nicht mehr abonniert"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Befehl noch nicht implementiert."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Benachrichtigung deaktiviert."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Konnte Benachrichtigung nicht deaktivieren."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Benachrichtigung aktiviert."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Konnte Benachrichtigung nicht aktivieren."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Anmeldung ist abgeschaltet"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr "Der Link ist nur einmal benutzbar und für eine Dauer von 2 Minuten: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "%s nicht mehr abonniert"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Du hast niemanden abonniert."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Du hast diese Benutzer bereits abonniert:"
msgstr[1] "Du hast diese Benutzer bereits abonniert:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Niemand hat Dich abonniert."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Die Gegenseite konnte Dich nicht abonnieren."
msgstr[1] "Die Gegenseite konnte Dich nicht abonnieren."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Du bist in keiner Gruppe Mitglied."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Du bist Mitglied dieser Gruppe:"
msgstr[1] "Du bist Mitglied dieser Gruppen:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5414,20 +5942,58 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
+"Befehle:\n"
+"on - Benachrichtigung einschalten\n"
+"off - Benachrichtigung ausschalten\n"
+"help - diese Hilfe anzeigen\n"
+"follow <nickname> - einem Nutzer folgen\n"
+"groups - Gruppen auflisten in denen du Mitglied bist\n"
+"subscriptions - Leute auflisten denen du folgst\n"
+"subscribers - Leute auflisten die dir folgen\n"
+"leave <nickname> - einem Nutzer nicht mehr folgen\n"
+"d <nickname> <text> - Direkte Nachricht an einen Nutzer schicken\n"
+"get <nickname> - letzte Nachricht eines Nutzers abrufen\n"
+"whois <nickname> - Profil eines Nutzers abrufen\n"
+"lose <nickname> - Nutzer zwingen dir nicht mehr zu folgen\n"
+"fav <nickname> - letzte Nachricht eines Nutzers als Favorit markieren\n"
+"fav #<notice_id> - Nachricht mit bestimmter ID als Favorit markieren\n"
+"repeat #<notice_id> - Nachricht mit bestimmter ID wiederholen\n"
+"repeat <nickname> - letzte Nachricht eines Nutzers wiederholen\n"
+"reply #<notice_id> - Nachricht mit bestimmter ID beantworten\n"
+"reply <nickname> - letzte Nachricht eines Nutzers beantworten\n"
+"join <group> - Gruppe beitreten\n"
+"login - Link zum Anmelden auf der Webseite anfordern\n"
+"drop <group> - Gruppe verlassen\n"
+"stats - deine Statistik abrufen\n"
+"stop - Äquivalent zu 'off'\n"
+"quit - Äquivalent zu 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Keine Konfigurationsdatei gefunden."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Ich habe an folgenden Stellen nach Konfigurationsdateien gesucht: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Bitte die Installation erneut starten um das Problem zu beheben."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Zur Installation gehen."
@@ -5554,6 +6120,8 @@ msgstr ""
#, php-format
msgid "Extra nicknames for the group, comma- or space- separated, max %d"
msgstr ""
+"Zusätzliche Spitznamen für die Gruppe, Komma oder Leerzeichen getrennt, max %"
+"d"
#: lib/groupnav.php:85
msgid "Group"
@@ -5600,56 +6168,57 @@ msgstr "Gruppen mit den meisten Beiträgen"
msgid "Tags in %s group's notices"
msgstr "Stichworte in den Nachrichten der Gruppe %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Dies Seite liegt in keinem von dir akzeptierten Mediatype vor."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Bildformat wird nicht unterstützt."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Du kannst ein Logo für Deine Gruppe hochladen."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Unvollständiges Hochladen."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Systemfehler beim hochladen der Datei."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Kein Bild oder defekte Datei."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Bildformat wird nicht unterstützt."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Daten verloren."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Unbekannter Dateityp"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
-#, fuzzy, php-format
+#: lib/jabber.php:567
+#, php-format
msgid "Unknown inbox source %d."
-msgstr "Unbekannte Sprache „%s“"
+msgstr "Unbekannte inbox Quelle %d."
#: lib/joinform.php:114
msgid "Join"
@@ -5667,11 +6236,13 @@ msgstr "Mit Nutzernamen und Passwort anmelden"
msgid "Sign up for a new account"
msgstr "Registriere ein neues Nutzerkonto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Bestätigung der E-Mail-Adresse"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5701,12 +6272,24 @@ msgstr ""
"Vielen Dank!\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s hat deine Nachrichten auf %2$s abonniert."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Wenn du dir sicher bist, das dieses Benutzerkonto missbräuchlich benutzt "
+"wurde, kannst du das Benutzerkonto von deiner Liste der Abonnenten sperren "
+"und es den Seitenadministratoren unter %s als Spam melden."
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5732,17 +6315,20 @@ msgstr ""
"Du kannst Deine E-Mail-Adresse und die Benachrichtigungseinstellungen auf %8"
"$s ändern.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Biografie: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Neue E-Mail-Adresse um auf %s zu schreiben"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5763,21 +6349,33 @@ msgstr ""
"Viele Grüße,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s Status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS-Konfiguration"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s: bestätige mit folgendem Code, dass es sich um deine Telefonnummer "
+"handelt:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Du wurdest von %s angestupst"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5804,12 +6402,14 @@ msgstr ""
"Mit freundlichen Grüßen,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Neue private Nachricht von %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5842,12 +6442,14 @@ msgstr ""
"Mit freundlichen Grüßen,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) hat deine Nachricht als Favorit gespeichert"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5867,14 +6469,37 @@ msgid ""
"Faithfully yours,\n"
"%6$s\n"
msgstr ""
+"%1$s (@%7$s) hat gerade deine Mitteilung von %2$s als Favorit hinzugefügt.\n"
+"Die Adresse der Nachricht ist:\n"
+"%3$s\n"
+"Der Text der Nachricht ist:\n"
+"%4$s\n"
+"Die Favoritenliste von %1$s ist hier:\n"
+"%5$s\n"
+"\n"
+"Gruß,\n"
+"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Die komplette Unterhaltung kann hier gelesen werden:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
"%s (@%s) hat dir eine Nachricht gesendet um deine Aufmerksamkeit zu erlangen"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5887,7 +6512,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
+"%1$s (@%9$s) hat dir gerade eine Nachricht (eine '@-Antwort') auf %2$s "
+"gesendet.\n"
+"\n"
+"Die Nachricht findest du hier:\n"
+"\n"
+"%3$s\n"
+"\n"
+"Sie lautet:\n"
+"\n"
+"%4$s\n"
+"\n"
+"%5$sHier kannst du auf die Nachricht antworten:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Eine Liste aller @-Antworten an dich findest du hier:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Hochachtungsvoll dein,\n"
+"%2$s\n"
+"\n"
+"P.S. Diese E-Mail Benachrichtigung kannst du hier deaktivieren: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5902,7 +6562,7 @@ msgstr ""
"schicken, um sie in eine Konversation zu verwickeln. Andere Leute können Dir "
"Nachrichten schicken, die nur Du sehen kannst."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "von"
@@ -5963,25 +6623,24 @@ msgstr "Konnte die Datei nicht auf die Festplatte schreiben."
msgid "File upload stopped by extension."
msgstr "Upload der Datei wurde wegen der Dateiendung gestoppt."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Dateigröße liegt über dem Benutzerlimit"
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Datei konnte nicht in das Zielverzeichnis verschoben werden."
-#: lib/mediafile.php:201 lib/mediafile.php:237
-#, fuzzy
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
-msgstr "Konnte öffentlichen Stream nicht abrufen."
+msgstr "Konnte den MIME-Typ nicht feststellen."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr "Versuche ein anderes %s Format."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s ist kein unterstütztes Dateiformat auf diesem Server."
@@ -6036,48 +6695,52 @@ msgstr ""
"Es tut uns Leid, aber die Abfrage deiner GPS Position hat zu lange gedauert. "
"Bitte versuche es später wieder."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "O"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "W"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "in"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "im Zusammenhang"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Wiederholt von"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Auf diese Nachricht antworten"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Antworten"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Nachricht wiederholt"
@@ -6101,6 +6764,10 @@ msgstr "Neues Profil konnte nicht angelegt werden"
msgid "Error inserting avatar"
msgstr "Fehler beim Einfügen des Avatars"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Fehler beim Aktualisieren des entfernten Profils"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Fehler beim Einfügen des entfernten Profils"
@@ -6115,7 +6782,7 @@ msgstr "Konnte neues Abonnement nicht eintragen."
#: lib/personalgroupnav.php:99
msgid "Personal"
-msgstr "Eigene"
+msgstr "Meine Zeitleiste"
#: lib/personalgroupnav.php:104
msgid "Replies"
@@ -6146,11 +6813,11 @@ msgstr "Deine gesendeten Nachrichten"
msgid "Tags in %s's notices"
msgstr "Stichworte in %ss Nachrichten"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Unbekannter Befehl"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonnements"
@@ -6158,38 +6825,38 @@ msgstr "Abonnements"
msgid "All subscriptions"
msgstr "Alle Abonnements"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abonnenten"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Alle Abonnenten"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Nutzer ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Mitglied seit"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Tagesdurchschnitt"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Alle Gruppen"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Kein id Argument."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Nicht unterstützte Methode."
#: lib/publicgroupnav.php:78
msgid "Public"
-msgstr "Öffentlich"
+msgstr "Zeitleiste"
#: lib/publicgroupnav.php:82
msgid "User groups"
@@ -6207,11 +6874,19 @@ msgstr "Beliebte Benutzer"
msgid "Popular"
msgstr "Beliebte Beiträge"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Kein Rückkehr Argument."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Diese Nachricht wiederholen?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ja"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Diese Nachricht wiederholen"
@@ -6220,9 +6895,9 @@ msgstr "Diese Nachricht wiederholen"
msgid "Revoke the \"%s\" role from this user"
msgstr "Widerrufe die \"%s\" Rolle von diesem Benutzer"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "Kein einzelner Nutzer für den Ein-Benutzer-Modus ausgewählt."
#: lib/sandboxform.php:67
msgid "Sandbox"
@@ -6238,7 +6913,7 @@ msgstr "Site durchsuchen"
#: lib/searchaction.php:126
msgid "Keyword(s)"
-msgstr "Stichwort/Stichwörter"
+msgstr "Suchbegriff"
#: lib/searchaction.php:127
msgid "Search"
@@ -6307,17 +6982,61 @@ msgstr "Lade Freunde und Kollegen ein dir auf %s zu folgen"
#: lib/subscriberspeopleselftagcloudsection.php:48
#: lib/subscriptionspeopleselftagcloudsection.php:48
msgid "People Tagcloud as self-tagged"
-msgstr ""
+msgstr "Personen-Tagwolke, wie man sich selbst markiert hat."
#: lib/subscriberspeopletagcloudsection.php:48
#: lib/subscriptionspeopletagcloudsection.php:48
msgid "People Tagcloud as tagged"
-msgstr ""
+msgstr "Personen-Tag, wie markiert wurde"
#: lib/tagcloudsection.php:56
msgid "None"
msgstr "Nichts"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "Dieser Server kann nicht mit Theme-Uploads ohne ZIP-Support umgehen."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Die Theme-Datei fehlt oder das Hochladen ist fehlgeschlagen."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Speicherung des Themes fehlgeschlagen."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Ungültiger Theme: schlechte Ordner-Struktur."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr "Der hochgeladene Theme ist zu groß; er muss unter %d Bytes sein."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Ungültigges Theme-Archiv: fehlende Datei css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Der Theme enthält einen ungültigen Datei- oder Ordnernamen. Bleib bei ASCII-"
+"Buchstaben, Zahlen, Unterstrichen und Minuszeichen."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Das Theme enthält Dateien des Types „.%s“, die nicht erlaubt sind."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Fehler beim Öffnen des Theme-Archives."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Top-Schreiber"
@@ -6346,89 +7065,108 @@ msgstr "Lösche dein Abonnement von diesem Benutzer"
msgid "Unsubscribe"
msgstr "Abbestellen"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Benutzer %s (%d) hat kein Profil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Avatar bearbeiten"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Benutzeraktionen"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Löschung des Nutzers in Arbeit..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Profil Einstellungen ändern"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Bearbeiten"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Direkte Nachricht an Benutzer verschickt"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Nachricht"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderieren"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Benutzerrolle"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "vor wenigen Sekunden"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "vor einer Minute"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "vor %d Minuten"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "vor einer Stunde"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "vor %d Stunden"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "vor einem Tag"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "vor %d Tagen"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "vor einem Monat"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "vor %d Monaten"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "vor einem Jahr"
@@ -6442,7 +7180,7 @@ msgstr "%s ist keine gültige Farbe!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s ist keine gültige Farbe! Verwenden Sie 3 oder 6 Hex-Zeichen."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/el/LC_MESSAGES/statusnet.po b/locale/el/LC_MESSAGES/statusnet.po
index 0ebe84fe7..841e3172c 100644
--- a/locale/el/LC_MESSAGES/statusnet.po
+++ b/locale/el/LC_MESSAGES/statusnet.po
@@ -1,6 +1,7 @@
# Translation of StatusNet to Greek
#
# Author@translatewiki.net: Crazymadlover
+# Author@translatewiki.net: Dead3y3
# Author@translatewiki.net: Omnipaedista
# --
# This file is distributed under the same license as the StatusNet package.
@@ -9,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:37+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:18+0000\n"
"Language-Team: Greek\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: el\n"
"X-Message-Group: out-statusnet\n"
@@ -22,217 +23,226 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "ΠÏόσβαση"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "Ρυθμίσεις OpenID"
+msgstr "Ρυθμίσεις Ï€Ïόσβασης ιστοτόπου"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
-msgstr "ΠεÏιγÏαφή"
+msgstr "ΕγγÏαφή"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
msgstr ""
+"ΑπαγόÏευση ανωνÏμων χÏηστών (μη συνδεδεμένων) από το να βλέπουν τον ιστότοπο;"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
msgctxt "LABEL"
msgid "Private"
-msgstr ""
+msgstr "Ιδιωτικό"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
msgid "Make registration invitation only."
-msgstr ""
+msgstr "Κάντε την εγγÏαφή να είναι με Ï€Ïόσκληση μόνο."
#. TRANS: Checkbox label for configuring site as invite only.
#: actions/accessadminpanel.php:176
msgid "Invite only"
-msgstr ""
+msgstr "Μόνο με Ï€Ïόσκληση"
#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
#: actions/accessadminpanel.php:183
msgid "Disable new registrations."
-msgstr ""
+msgstr "ΑπενεÏγοποίηση των νέων εγγÏαφών"
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
msgid "Closed"
-msgstr ""
+msgstr "Κλειστό"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "Ρυθμίσεις OpenID"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "Αποθήκευση Ïυθμίσεων Ï€Ïόσβασης"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
-msgstr "ΑποχώÏηση"
+msgstr "Αποθήκευση"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+#, fuzzy
+msgid "No such page."
msgstr "Δεν υπάÏχει τέτοια σελίδα"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Κανένας τέτοιος χÏήστης."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%s και οι φίλοι του/της"
+msgstr "%1$s και φίλοι, σελίδα 2%$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s και οι φίλοι του/της"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Ροή φίλων του/της %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Ροή φίλων του/της %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Ροή φίλων του/της %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
+"Αυτό είναι το χÏονοδιάγÏαμμα για %s και φίλους, αλλά κανείς δεν έχει κάνει "
+"καμία αποστολή ακόμα."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
"something yourself."
msgstr ""
+"Δοκιμάστε την εγγÏαφή σε πεÏισσότεÏους ανθÏώπους, [ενταχθείτε σε μια ομάδα] "
+"(%%action.groups%%) ή αποστείλετε κάτι ο ίδιος."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Εσείς και οι φίλοι σας"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Η μέθοδος του ΑΡΙ δε βÏέθηκε!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
@@ -242,7 +252,7 @@ msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr ""
@@ -253,9 +263,9 @@ msgid "Could not save profile."
msgstr "Απέτυχε η αποθήκευση του Ï€Ïοφίλ."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -312,46 +322,47 @@ msgstr ""
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr ""
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr ""
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr ""
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr ""
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Δε μποÏÏŽ να ακολουθήσω το χÏήστη: ο χÏήστης δε βÏέθηκε."
#: actions/apifriendshipscreate.php:118
@@ -370,8 +381,8 @@ msgstr "Δε μποÏÏŽ να ακολουθήσω το χÏήστη: ο χÏήσ
msgid "You cannot unfollow yourself."
msgstr "Δεν μποÏείτε να εμποδίσετε τον εαυτό σας!"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -384,115 +395,129 @@ msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
msgid "Could not find target user."
msgstr "Απέτυχε η εÏÏεση οποιασδήποτε κατάστασης."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Το ψευδώνυμο Ï€Ïέπει να έχει μόνο πεζοÏÏ‚ χαÏακτήÏες και χωÏίς κενά."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Το ψευδώνυμο είναι ήδη σε χÏήση. Δοκιμάστε κάποιο άλλο."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr ""
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Το ονοματεπώνυμο είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ (μέγιστο 255 χαÏακτ.)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Η πεÏιγÏαφή είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î· (μέγιστο %d χαÏακτ.)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Η τοποθεσία είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î· (μέγιστο 255 χαÏακτ.)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr ""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr "Μήνυμα"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Το ψευδώνυμο είναι ήδη σε χÏήση. Δοκιμάστε κάποιο άλλο."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#, fuzzy
+msgid "Group not found."
msgstr "Η ομάδα δεν βÏέθηκε!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr ""
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr ""
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "ομάδες των χÏηστών %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Δεν είστε μέλος καμίας ομάδας."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "ομάδες του χÏήστη %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -503,17 +528,17 @@ msgid "Invalid token."
msgstr "Μήνυμα"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -546,12 +571,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr ""
@@ -571,20 +599,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "ΛογαÏιασμός"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Ψευδώνυμο"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Κωδικός"
@@ -594,17 +624,17 @@ msgstr ""
#: actions/apioauthauthorize.php:334
msgid "Allow"
-msgstr ""
+msgstr "Îα επιτÏαπεί"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -623,59 +653,63 @@ msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος
msgid "Already repeated that notice."
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Η κατάσταση διεγÏάφη."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
msgstr ""
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr ""
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr ""
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr ""
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr ""
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -690,19 +724,19 @@ msgstr ""
msgid "Repeats of %s"
msgstr ""
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr ""
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr ""
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Η μέθοδος του ΑΡΙ είναι υπό κατασκευή."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -723,8 +757,9 @@ msgstr ""
msgid "Invalid size."
msgstr ""
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr ""
@@ -734,9 +769,9 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr ""
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -755,7 +790,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "ΔιαγÏαφή"
@@ -767,23 +802,27 @@ msgstr ""
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr ""
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr ""
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr ""
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "Ρυθμίσεις OpenID"
@@ -793,39 +832,56 @@ msgstr "Ρυθμίσεις OpenID"
msgid "You already blocked that user."
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr ""
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Όχι"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Îαι"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr ""
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -838,8 +894,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
@@ -870,9 +926,11 @@ msgstr ""
msgid "Unblock this user"
msgstr ""
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "ομάδες του χÏήστη %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -886,34 +944,44 @@ msgstr "Ο κωδικός επιβεβαίωσης δεν βÏέθηκε."
msgid "That confirmation code is not for you!"
msgstr ""
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
+msgid "Unrecognized address type %s."
msgstr ""
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr ""
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Απέτυχε η διαγÏαφή email επιβεβαίωσης."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Επιβεβαίωση διεÏθυνσης"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr ""
@@ -923,7 +991,7 @@ msgid "Conversation"
msgstr "Συζήτηση"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr ""
@@ -945,7 +1013,7 @@ msgstr "Ομάδες με τα πεÏισσότεÏα μέλη"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -961,23 +1029,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "ΠεÏιγÏάψτε την ομάδα ή το θέμα"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr ""
@@ -1001,12 +1071,14 @@ msgstr "ΔιαγÏαφή μηνÏματος"
msgid "Are you sure you want to delete this notice?"
msgstr "Είσαι σίγουÏος ότι θες να διαγÏάψεις αυτό το μήνυμα;"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr ""
@@ -1029,128 +1101,149 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "ΔιαγÏάψτε αυτόν τον χÏήστη"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr ""
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Αλλάξτε τον κωδικό σας"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr ""
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Αλλαγή"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Αλλαγή"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Αλλαγή"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr ""
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Αλλαγή χÏωμάτων"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "ΠεÏιεχόμενο"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr ""
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr ""
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "ΣÏνδεσμοι"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr ""
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1263,12 +1356,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "Το βιογÏαφικό είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ (μέγιστο 140 χαÏακτ.)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr ""
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
@@ -1277,32 +1376,44 @@ msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
msgid "Options saved."
msgstr ""
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Ρυθμίσεις Email"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ΔιεÏθυνση"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "ΔιευθÏνσεις email"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "ΤÏέχουσα επιβεβαιωμένη email διεÏθυνση."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr ""
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
#, fuzzy
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
@@ -1311,107 +1422,140 @@ msgstr ""
"Αναμένωντας επιβεβαίωση σε αυτή τη διεÏθυνση. Έλεγξε το mail σου (και το "
"φάκελο spam!) για μήνυμα με πεÏαιτέÏω οδηγίες. "
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "ΑκÏÏωση"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "ΔιευθÏνσεις email"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "ΔιεÏθυνση email, Ï€.χ: \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "ΠÏοσθήκη"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "ΕισεÏχόμενο email"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr ""
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "ΠÏοτιμήσεις"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Θέλω να δημοσιεÏω ενημεÏώσεις μέσω email"
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Οι Ï€Ïοτιμήσεις αποθηκεÏτηκαν"
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr ""
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Αδυναμία κανονικοποίησης αυτής της email διεÏθυνσης"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr ""
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr ""
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Απέτυχε η εισαγωγή ÎºÏ‰Î´Î¹ÎºÎ¿Ï ÎµÏ€Î¹Î²ÎµÎ²Î±Î¯Ï‰ÏƒÎ·Ï‚."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1420,43 +1564,56 @@ msgstr ""
"Ï€Ïοσθέσατε. Ελέγξτε τα εισεÏχόμενα (και τον φάκελο ανεπιθÏμητης "
"αλληλογÏαφίας) για τον κωδικό και για το πως να τον χÏησιμοποιήσετε."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr ""
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
+msgstr "Εισάγετε ψευδώνυμο ή διεÏθυνση email."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Η επιβεβαίωση ακυÏώθηκε."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr ""
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr ""
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
+msgstr "Η διεÏθυνση του εισεÏχόμενου email αφαιÏέθηκε."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Απέτυχε η ενημέÏωση εγγÏαφής του χÏήστη."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Η διεÏθυνση του εισεÏχόμενου email αφαιÏέθηκε."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1572,9 +1729,10 @@ msgstr "Απέτυχε η μετατÏοπή αιτοÏμενων tokens σε to
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr ""
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
+msgstr "Απέτυχε η αποθήκευση του Ï€Ïοφίλ."
#: actions/getfile.php:79
#, fuzzy
@@ -1606,13 +1764,13 @@ msgstr ""
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
@@ -1633,11 +1791,11 @@ msgstr ""
msgid "User is not a member of group."
msgstr ""
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr ""
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1645,15 +1803,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr ""
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr ""
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1696,10 +1856,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr ""
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1731,35 +1887,39 @@ msgstr ""
msgid "Admin"
msgstr "ΔιαχειÏιστής"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
#, fuzzy
msgid "Make Admin"
msgstr "ΔιαχειÏιστής"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "χÏονοδιάγÏαμμα του χÏήστη %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr ""
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr ""
@@ -1779,7 +1939,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "ΔημιουÏγία νέου λογαÏιασμοÏ"
@@ -1826,28 +1986,42 @@ msgstr ""
msgid "Error removing the block."
msgstr ""
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Ρυθμίσεις ΙΜ"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "ΔιεÏθυνση ΙΜ"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "ΤÏέχουσα επιβεβαιωμένη Jabber/GTalk διεÏθυνση."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, fuzzy, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1857,55 +2031,74 @@ msgstr ""
"λογαÏιασμό σου για μήνυμα με πεÏαιτέÏω οδηγίες. (ΠÏόσθεσες το χÏήστη %s στη "
"λίστα φίλων?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "ΔιεÏθυνση ΙΜ"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "ΠÏοτιμήσεις"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Οι Ï€Ïοτιμήσεις αποθηκεÏτηκαν"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr ""
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Αδυναμία κανονικοποίησης του Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr ""
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr ""
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr ""
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1914,10 +2107,35 @@ msgstr ""
"Έχει αποσταλεί ένας κωδικός επιβεβαίωσης στην διεÏθυνση IM που Ï€Ïοσθέσατε. "
"ΠÏέπει να αποδεχτείτε τον/την %s για αποστολή μηνυμάτων Ï€Ïος εσας. "
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr ""
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Απέτυχε η διαγÏαφή email επιβεβαίωσης."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Η επιβεβαίωση ακυÏώθηκε."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr ""
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Η διεÏθυνση του εισεÏχόμενου email αφαιÏέθηκε."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1937,9 +2155,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
#: actions/invite.php:72
#, php-format
@@ -1958,7 +2176,9 @@ msgstr ""
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2005,12 +2225,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr ""
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2050,7 +2272,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "Μήνυμα"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr ""
@@ -2059,48 +2283,50 @@ msgstr ""
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr ""
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr ""
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Ήδη συνδεδεμένος."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Λάθος όνομα χÏήστη ή κωδικός"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "ΣÏνδεση"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr ""
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Αυτόματη σÏνδεση στο μέλλον. ΟΧΙ για κοινόχÏηστους υπολογιστές!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Χάσατε ή ξεχάσατε τον κωδικό σας;"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2108,11 +2334,15 @@ msgstr ""
"Για λόγους ασφαλείας, παÏακαλώ εισάγετε ξανά το όνομα χÏήστη και τον κωδικό "
"σας, Ï€Ïιν αλλάξετε τις Ïυθμίσεις σας."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "ΣÏνδεση με όνομα χÏήστη και κωδικό"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Συνδεθείτε με το όνομα χÏήστη και τον κωδικό σας. Δεν έχετε όνομα χÏήστη "
"ακόμα; Κάντε [εγγÏαφή](%%action.register%%) για ένα νέο λογαÏιασμό ή "
@@ -2138,7 +2368,7 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
#: actions/microsummary.php:69
-msgid "No current status"
+msgid "No current status."
msgstr ""
#: actions/newapplication.php:52
@@ -2175,12 +2405,12 @@ msgstr ""
msgid "New message"
msgstr ""
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr ""
@@ -2188,7 +2418,7 @@ msgstr ""
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2202,7 +2432,7 @@ msgstr ""
msgid "Direct message to %s sent."
msgstr ""
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr ""
@@ -2210,7 +2440,7 @@ msgstr ""
msgid "New notice"
msgstr ""
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr ""
@@ -2256,7 +2486,7 @@ msgstr "Όλες οι ενημεÏώσεις που ταιÏιάζουν με Ï„
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2298,11 +2528,11 @@ msgid "You are not a user of that application."
msgstr "Δεν είστε μέλος καμίας ομάδας."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2310,26 +2540,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
+msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr ""
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "ΣÏνδεση"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2439,7 +2674,7 @@ msgid "6 or more characters"
msgstr "6 ή πεÏισσότεÏοι χαÏακτήÏες"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Επιβεβαίωση"
@@ -2451,11 +2686,11 @@ msgstr ""
msgid "Change"
msgstr "Αλλαγή"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr ""
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Οι κωδικοί δεν ταυτίζονται."
@@ -2467,7 +2702,7 @@ msgstr "Λάθος παλιός κωδικός"
msgid "Error saving user; invalid."
msgstr ""
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "ΑδÏνατη η αποθήκευση του νέου κωδικοÏ"
@@ -2476,7 +2711,7 @@ msgid "Password saved."
msgstr "Ο κωδικός αποθηκεÏτηκε."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2486,23 +2721,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2646,19 +2881,20 @@ msgstr ""
msgid "People search"
msgstr ""
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr ""
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr ""
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr ""
+#, fuzzy
+msgid "Invalid notice content."
+msgstr "Μήνυμα"
#: actions/postnotice.php:101
#, php-format
@@ -2682,43 +2918,44 @@ msgstr ""
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 μικÏά γÏάμματα ή αÏιθμοί, χωÏίς σημεία στίξης ή κενά"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Ονοματεπώνυμο"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "ΑÏχική σελίδα"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "ΠεÏιέγÏαψε τον εαυτό σου και τα ενδιαφέÏοντά σου σε 140 χαÏακτήÏες"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "ΠεÏιέγÏαψε τον εαυτό σου και τα ενδιαφέÏοντά σου σε 140 χαÏακτήÏες"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "ΒιογÏαφικό"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Τοποθεσία"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr ""
@@ -2728,7 +2965,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2761,7 +2998,7 @@ msgstr ""
"Αυτόματα γίνε συνδÏομητής σε όσους γίνονται συνδÏομητές σε μένα (χÏήση "
"κυÏίως από λογισμικό και όχι ανθÏώπους)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Το βιογÏαφικό είναι Ï€Î¿Î»Ï Î¼ÎµÎ³Î¬Î»Î¿ (μέγιστο 140 χαÏακτ.)."
@@ -2804,7 +3041,7 @@ msgstr ""
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2958,7 +3195,7 @@ msgstr ""
msgid "Recover password"
msgstr ""
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr ""
@@ -2978,19 +3215,19 @@ msgstr ""
msgid "Enter a nickname or email address."
msgstr "Εισάγετε ψευδώνυμο ή διεÏθυνση email."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr ""
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr ""
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -2998,107 +3235,122 @@ msgstr ""
"Οδηγίες για την ανάκτηση του ÎºÏ‰Î´Î¹ÎºÎ¿Ï ÏƒÎ±Ï‚ έχουν σταλεί στην διεÏθυνση email "
"που έχετε καταχωÏίσει στον λογαÏιασμό σας."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Ο κωδικός Ï€Ïέπει να είναι 6 χαÏακτήÏες ή πεÏισσότεÏοι."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Ο κωδικός και η επιβεβαίωση του δεν ταυτίζονται."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr ""
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr ""
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr ""
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr ""
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr ""
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Η διεÏθυνση email υπάÏχει ήδη."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr ""
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1-64 μικÏά γÏάμματα ή αÏιθμοί, χωÏίς σημεία στίξης ή κενά. ΑπαÏαίτητο."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 ή πεÏισσότεÏοι χαÏακτήÏες. ΑπαÏαίτητο."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr ""
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Email"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
"εκτός από τα εξής Ï€Ïοσωπικά δεδομένα: κωδικός Ï€Ïόσβασης, διεÏθυνση email, "
"διεÏθυνση IM, τηλεφωνικό νοÏμεÏο."
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3132,7 +3384,7 @@ msgstr ""
"ΕυχαÏιστοÏμε που εγγÏάφηκες και ευχόμαστε να πεÏάσεις καλά με την υπηÏεσία "
"μας."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3174,7 +3426,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr ""
@@ -3213,7 +3465,7 @@ msgstr ""
msgid "You already repeated that notice."
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "ΔημιουÏγία"
@@ -3250,11 +3502,13 @@ msgid "Replies feed for %s (Atom)"
msgstr "Ροή φίλων του/της %s"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
+"Αυτό είναι το χÏονοδιάγÏαμμα για %s και φίλους, αλλά κανείς δεν έχει κάνει "
+"καμία αποστολή ακόμα."
#: actions/replies.php:204
#, php-format
@@ -3266,8 +3520,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3284,7 +3538,7 @@ msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
msgid "User doesn't have this role."
msgstr ""
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Η κατάσταση διαγÏάφεται."
@@ -3299,7 +3553,7 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3337,28 +3591,32 @@ msgstr ""
msgid "Application profile"
msgstr ""
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Ψευδώνυμο"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "ΠÏοσκλήσεις"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "ΠεÏιγÏαφή"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr ""
@@ -3443,16 +3701,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3469,68 +3727,68 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr ""
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Μέλη"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "ΔημιουÏγημένος"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3540,7 +3798,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3549,7 +3807,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "ΔιαχειÏιστές"
@@ -3625,8 +3883,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3678,11 +3936,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3772,7 +4030,7 @@ msgid "Unable to save site notice."
msgstr ""
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3789,68 +4047,109 @@ msgstr ""
msgid "Save site notice"
msgstr "Ρυθμίσεις OpenID"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "Ρυθμίσεις ΙΜ"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Η αÏχική σελίδα δεν είναι έγκυÏο URL."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "ΔιεÏθυνση ΙΜ"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "ΤÏέχων επιβεβαιωμένο, μέσω SMS, νοÏμεÏο ÎºÎ¹Î½Î·Ï„Î¿Ï Ï„Î·Î»ÎµÏ†ÏŽÎ½Î¿Ï…."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Αναμένωντας επιβεβαίωση σ' αυτό το νοÏμεÏο τηλεφώνου."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr ""
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Επιβεβαίωση"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr ""
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "ΠÏοτιμήσεις"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Οι Ï€Ïοτιμήσεις αποθηκεÏτηκαν"
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr ""
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -3860,36 +4159,55 @@ msgstr ""
"Ï€Ïοσθέσατε. Ελέγξτε τα εισεÏχόμενα (και τον φάκελο ανεπιθÏμητης "
"αλληλογÏαφίας) για τον κωδικό και για το πως να τον χÏησιμοποιήσετε."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Η επιβεβαίωση ακυÏώθηκε."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr ""
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr ""
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3911,7 +4229,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3951,8 +4269,8 @@ msgstr "Ρυθμίσεις OpenID"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
@@ -4045,11 +4363,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr ""
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr ""
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr ""
@@ -4082,12 +4400,12 @@ msgstr ""
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "ΠÏοφίλ χÏήστη"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4119,10 +4437,6 @@ msgstr ""
msgid "No such tag."
msgstr ""
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Η μέθοδος του ΑΡΙ είναι υπό κατασκευή."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4137,7 +4451,7 @@ msgid "User is not silenced."
msgstr ""
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr ""
#: actions/unsubscribe.php:98
@@ -4173,7 +4487,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr ""
@@ -4233,7 +4548,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4330,48 +4645,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr ""
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr ""
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4379,7 +4700,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4387,404 +4708,535 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "ΠÏοσωπικά"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Μήνυμα"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Σφάλμα στη βάση δεδομένων κατά την εισαγωγή hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr ""
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr ""
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr ""
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr ""
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ΠÏοφίλ χÏήστη"
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr ""
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Απέτυχε η συνδÏομή."
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Απέτυχε η διαγÏαφή συνδÏομής."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Απέτυχε η διαγÏαφή συνδÏομής."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Απέτυχε η διαγÏαφή συνδÏομής."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Δεν ήταν δυνατή η δημιουÏγία ομάδας."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Αλλάξτε τις Ïυθμίσεις του Ï€Ïοφίλ σας"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr ""
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Αλλάξτε τον κωδικό σας"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Σχεδιάστε το Ï€Ïοφίλ σας"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
msgstr ""
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr ""
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "ΠÏοσωπικά"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Αλλάξτε τον κωδικό σας"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Αδυναμία ανακατεÏθηνσης στο διακομιστή: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "ΣÏνδεση"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "ΔιαχειÏιστής"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "ΠÏοσκάλεσε φίλους και συναδέλφους σου να γίνουν μέλη στο %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Μήνυμα"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "ΑποσÏνδεση"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "ΔημιουÏγία ενός λογαÏιασμοÏ"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "ΠεÏιγÏαφή"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "ΣÏνδεση"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Βοηθήστε με!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Βοήθεια"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr ""
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr ""
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr ""
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Βοήθεια"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "ΠεÏί"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Συχνές εÏωτήσεις"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr ""
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr ""
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Επικοινωνία"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"To **%%site.name%%** είναι μία υπηÏεσία microblogging (μικÏο-ιστολογίου) που "
"έφεÏε κοντά σας το [%%site.broughtby%%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
-#, fuzzy, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
+#, php-format
+msgid "**%%site.name%%** is a microblogging service."
msgstr ""
-"Το **%%site.name%%** είναι μία υπηÏεσία microblogging (μικÏο-ιστολογίου). "
+"Το **%%site.name%%** είναι μία υπηÏεσία microblogging (μικÏο-ιστολογίου)."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4792,67 +5244,81 @@ msgid ""
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr ""
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr ""
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr ""
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4862,161 +5328,199 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "ΠÏοσωπικά"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "ΔιαγÏαφή μηνÏματος"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "Επιβεβαίωση διεÏθυνσης email"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "ΠεÏιγÏάψτε την ομάδα ή το θέμα μέχÏι %d χαÏακτήÏες"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "ΠεÏιγÏάψτε την ομάδα ή το θέμα"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
msgstr ""
-#: lib/applicationeditform.php:218
-msgid "URL of the homepage of this application"
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
msgstr ""
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr ""
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "ΑκÏÏωση"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr ""
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr ""
@@ -5028,47 +5532,66 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Ο κωδικός αποθηκεÏτηκε."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Ο κωδικός αποθηκεÏτηκε."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr ""
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr ""
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
msgstr ""
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr ""
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Απέτυχε η ενημέÏωση χÏήστη μέσω επιβεβαιωμένης email διεÏθυνσης."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Απέτυχε η ενημέÏωση χÏήστη μέσω επιβεβαιωμένης email διεÏθυνσης."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr ""
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5076,201 +5599,204 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr ""
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr ""
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "Ομάδες με τα πεÏισσότεÏα μέλη"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "ΑδÏνατη η αποθήκευση των νέων πληÏοφοÏιών του Ï€Ïοφίλ"
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "ομάδες των χÏηστών %s"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "ομάδες των χÏηστών %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "Ονοματεπώνυμο"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr ""
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr ""
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr ""
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr ""
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Ρυθμίσεις OpenID"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr ""
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr ""
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr ""
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "Κανένας τέτοιος χÏήστης."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Απέτυχε η συνδÏομή."
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
msgstr[1] "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
msgstr[1] "Δεν επιτÏέπεται να κάνεις συνδÏομητές του λογαÏÎ¹Î±ÏƒÎ¼Î¿Ï ÏƒÎ¿Ï… άλλους."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Δεν είστε μέλος καμίας ομάδας."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Ομάδες με τα πεÏισσότεÏα μέλη"
msgstr[1] "Ομάδες με τα πεÏισσότεÏα μέλη"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5312,20 +5838,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Ο κωδικός επιβεβαίωσης δεν βÏέθηκε."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5497,29 +6023,30 @@ msgstr "Ομάδες με τις πεÏισσότεÏες δημοσιεÏσει
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr ""
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
-
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
+msgid "Not an image or corrupt file."
msgstr ""
#: lib/imagefile.php:122
@@ -5527,24 +6054,24 @@ msgstr ""
msgid "Lost our file."
msgstr "ΑδÏνατη η αποθήκευση του Ï€Ïοφίλ."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr ""
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5565,11 +6092,13 @@ msgstr "ΣÏνδεση με όνομα χÏήστη και κωδικό"
msgid "Sign up for a new account"
msgstr "ΕγγÏαφή για ένα νέο λογαÏιασμό"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Επιβεβαίωση διεÏθυνσης email"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5586,12 +6115,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr ""
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5606,19 +6144,22 @@ msgid ""
"Change your email address or notification options at %8$s\n"
msgstr ""
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"ΒιογÏαφικό: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5631,21 +6172,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Κατάσταση του/της %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Αναμένωντας επιβεβαίωση σ' αυτό το νοÏμεÏο τηλεφώνου."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5661,12 +6212,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr ""
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5685,12 +6238,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr ""
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5711,12 +6266,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5729,6 +6294,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5741,7 +6318,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "από"
@@ -5796,25 +6373,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Απέτυχε η ενημέÏωση του χÏήστη."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5869,48 +6446,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr ""
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr ""
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Επαναλαμβάνεται από"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr ""
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr ""
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Ρυθμίσεις OpenID"
@@ -5935,6 +6516,10 @@ msgstr ""
msgid "Error inserting avatar"
msgstr ""
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr ""
@@ -5981,11 +6566,11 @@ msgstr ""
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr ""
@@ -5993,31 +6578,32 @@ msgstr ""
msgid "All subscriptions"
msgstr "Όλες οι συνδÏομές"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr ""
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr ""
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Μέλος από"
-#: lib/profileaction.php:247
-msgid "All groups"
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
msgstr ""
-#: lib/profileformaction.php:123
-msgid "No return-to arguments."
+#: lib/profileaction.php:264
+msgid "All groups"
msgstr ""
-#: lib/profileformaction.php:137
+#: lib/profileformaction.php:123
msgid "Unimplemented method."
msgstr ""
@@ -6041,12 +6627,20 @@ msgstr "ΠÏοτεινόμενα"
msgid "Popular"
msgstr "Δημοφιλή"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Îαι"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος."
@@ -6056,7 +6650,7 @@ msgstr "Αδυναμία διαγÏαφής Î±Ï…Ï„Î¿Ï Ï„Î¿Ï… μηνÏματος
msgid "Revoke the \"%s\" role from this user"
msgstr ""
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6156,6 +6750,49 @@ msgstr ""
msgid "None"
msgstr "Κανένα"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr ""
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Απέτυχε η αποθήκευση του Ï€Ïοφίλ."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "ΚοÏυφαίοι δημοσιευτές"
@@ -6186,91 +6823,109 @@ msgstr ""
msgid "Unsubscribe"
msgstr ""
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr ""
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr ""
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr ""
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "ΕπεξεÏγασία Ïυθμίσεων Ï€Ïοφίλ"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "ΕπεξεÏγασία"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr ""
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Μήνυμα"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "ΠÏοφίλ χÏήστη"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "ΔιαχειÏιστές"
+msgstr "ΔιαχειÏιστής"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "Συντονιστής"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr ""
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr ""
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr ""
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr ""
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr ""
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr ""
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr ""
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr ""
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr ""
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr ""
@@ -6284,7 +6939,7 @@ msgstr "Το %s δεν είναι ένα έγκυÏο χÏώμα!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/statusnet.po b/locale/en/LC_MESSAGES/statusnet.po
index 61d902a1a..61d902a1a 100644
--- a/locale/statusnet.po
+++ b/locale/en/LC_MESSAGES/statusnet.po
diff --git a/locale/en_GB/LC_MESSAGES/statusnet.po b/locale/en_GB/LC_MESSAGES/statusnet.po
index 8d846c4e2..6eee49858 100644
--- a/locale/en_GB/LC_MESSAGES/statusnet.po
+++ b/locale/en_GB/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to British English
#
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: Bruce89
# Author@translatewiki.net: CiaranG
# Author@translatewiki.net: Reedy
@@ -10,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:40+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:20+0000\n"
"Language-Team: British English\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: en-gb\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Access"
@@ -44,7 +45,6 @@ msgstr "Prohibit anonymous users (not logged in) from viewing site?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Private"
@@ -74,86 +74,90 @@ msgstr "Closed"
msgid "Save access settings"
msgstr "Save access settings"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Save"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "No such page"
+msgid "No such page."
+msgstr "No such page."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "No such user."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s and friends, page %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s and friends"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed for friends of %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed for friends of %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed for friends of %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
"This is the timeline for %s and friends but no one has posted anything yet."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,83 +167,85 @@ msgstr ""
"something yourself."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
"post a notice to his or her attention."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "You and friends"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Updates from %1$s and friends on %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API method not found."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "This method requires a POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Couldn't update user."
@@ -249,7 +255,7 @@ msgstr "Couldn't update user."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "User has no profile."
@@ -260,9 +266,9 @@ msgid "Could not save profile."
msgstr "Couldn't save profile."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -320,46 +326,47 @@ msgstr "Direct messages to %s"
msgid "All the direct messages sent to %s"
msgstr "All the direct messages sent to %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "No message text!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "That's too long. Max message size is %d chars."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Recipient user not found."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Can't send direct messages to users who aren't your friend."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "No status found with that ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "This status is already a favourite."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Could not create favourite."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "That status is not a favourite."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Could not delete favourite."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Could not follow user: User not found."
#: actions/apifriendshipscreate.php:118
@@ -375,8 +382,9 @@ msgstr "Could not unfollow user: User not found."
msgid "You cannot unfollow yourself."
msgstr "You cannot unfollow yourself."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Two user ids or screen_names must be supplied."
#: actions/apifriendshipsshow.php:134
@@ -387,115 +395,128 @@ msgstr "Could not determine source user."
msgid "Could not find target user."
msgstr "Could not find target user."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Nickname must have only lowercase letters and numbers, and no spaces."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Nickname already in use. Try another one."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Not a valid nickname."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Homepage is not a valid URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Full name is too long (max 255 chars)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Description is too long (max %d chars)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Location is too long (max 255 chars)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Too many aliases! Maximum %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Invalid alias: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias \"%s\" already in use. Try another one."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias can't be the same as nickname."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Group not found."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "You are already a member of that group."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "You have been blocked from that group by the admin."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Could not join user %1$s to group %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "You are not a member of this group."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Could not remove user %1$s to group %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s's groups"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s groups %2$s is a member of."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s groups"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "groups on %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Upload file"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "No oauth_token parameter provided."
@@ -505,17 +526,17 @@ msgid "Invalid token."
msgstr "Invalid token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -548,12 +569,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "The request token %s has been denied and revoked."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Unexpected form submission."
@@ -576,20 +600,22 @@ msgstr ""
"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."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Account"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Nickname"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Password"
@@ -605,11 +631,11 @@ msgstr "Allow"
msgid "Allow or deny access to your account information."
msgstr "Allow or deny access to your account information."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "This method requires a POST or DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "You may not delete another user's status."
@@ -626,59 +652,63 @@ msgstr "Cannot repeat your own notice."
msgid "Already repeated that notice."
msgstr "Already repeated that notice."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status deleted."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "No status with that ID found."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "That's too long. Max notice size is %d chars."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Not found."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "Max notice size is %d chars, including attachment URL."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Unsupported format."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favourites from %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s updates favourited by %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Updates mentioning %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
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."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s public timeline"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s updates from everyone!"
@@ -693,19 +723,19 @@ msgstr "Repeated to %s"
msgid "Repeats of %s"
msgstr "Repeats of %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notices tagged with %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Updates tagged with %1$s on %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Not found."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API method under construction."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -726,8 +756,9 @@ msgstr "No size."
msgid "Invalid size."
msgstr "Invalid size."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -737,10 +768,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "You can upload your personal avatar. The maximum file size is %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "User without matching profile."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -758,7 +789,7 @@ msgid "Preview"
msgstr "Preview"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Delete"
@@ -770,23 +801,27 @@ msgstr "Upload"
msgid "Crop"
msgstr "Crop"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "No file uploaded."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Pick a square area of the image to be your avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Lost our file data."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar updated."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Failed updating avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar deleted."
@@ -794,11 +829,11 @@ msgstr "Avatar deleted."
msgid "You already blocked that user."
msgstr "You already blocked that user."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Block user"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -808,27 +843,42 @@ msgstr ""
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Do not block this user"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Yes"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Block this user"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Failed to save block information."
@@ -841,8 +891,8 @@ msgstr "Failed to save block information."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "No such group."
@@ -872,9 +922,11 @@ msgstr "Unblock"
msgid "Unblock this user"
msgstr "Unblock this user"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Post to %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -888,33 +940,43 @@ msgstr "Confirmation code not found."
msgid "That confirmation code is not for you!"
msgstr "That confirmation code is not for you!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Unrecognised address type %s"
+msgid "Unrecognized address type %s."
+msgstr "Unrecognized address type %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "That address has already been confirmed."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Couldn't update user."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Couldn't delete e-mail confirmation."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Confirm address"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "The address \"%s\" has been confirmed for your account."
@@ -924,7 +986,7 @@ msgid "Conversation"
msgstr "Conversation"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notices"
@@ -943,7 +1005,7 @@ msgstr "You are not the owner of this application."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "There was a problem with your session token."
@@ -961,21 +1023,23 @@ msgstr ""
"about the application from the database, including all existing user "
"connections."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Do not delete this application"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Delete this application"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Not logged in."
@@ -1000,11 +1064,13 @@ msgstr "Delete notice"
msgid "Are you sure you want to delete this notice?"
msgstr "Are you sure you want to delete this notice?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Do not delete this notice"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Delete this notice"
@@ -1028,58 +1094,70 @@ msgstr ""
"Are you sure you want to delete this user? This will clear all data about "
"the user from the database, without a backup."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Delete this user"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Design"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Design settings for this StausNet site."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "nvalid logo URL."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Theme not available: %s"
+msgid "Theme not available: %s."
+msgstr "Theme not available: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Change logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Site logo"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Change theme"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Site theme"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Theme for the site."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Site theme"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Change background image"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Background"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1088,67 +1166,76 @@ msgstr ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "On"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Off"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Turn background image on or off."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Tile background image"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Change colours"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Content"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Sidebar"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Text"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Links"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Use defaults"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Restore default designs"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Reset back to default"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Save"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Save design"
@@ -1253,11 +1340,17 @@ msgstr "Use this form to edit the group."
msgid "description is too long (max %d chars)."
msgstr "description is too long (max %d chars)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Invalid alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Could not update group."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Could not create aliases"
@@ -1265,31 +1358,42 @@ msgstr "Could not create aliases"
msgid "Options saved."
msgstr "Options saved."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-mail settings"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Manage how you get e-mail from %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Address"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-mail address"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Current confirmed e-mail address."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Remove"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1297,106 +1401,136 @@ msgstr ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancel"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-mail address"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-mail address, like \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Add"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Incoming e-mail"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Send e-mail to this address to post new notices."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Make a new e-mail address for posting to - cancels the old one."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "New"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Email preferences"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Send me notices of new subscriptions through e-mail."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Send me e-mail when someone adds my notice as a favourite."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Send me e-mail when someone sends me a private message."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Send me e-mail when someone sends me an \"@-reply\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Allow friends to nudge me and send me an e-mail."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "I want to post notices by e-mail."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publish a MicroID for my e-mail address."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Email preferences saved."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "No e-mail address."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Cannot normalise that e-mail address"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Not a valid e-mail address."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "That is already your e-mail address."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "That e-mail address already belongs to another user."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Couldn't insert confirmation code."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1404,43 +1538,53 @@ msgstr ""
"A confirmation code was sent to the e-mail address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "No pending confirmation to cancel."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "That is the wrong email address."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Email confirmation cancelled."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "That is not your e-mail address."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "The email address was removed."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "No incoming e-mail address."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Couldn't update user record."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Incoming e-mail address removed."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "New incoming e-mail address added."
@@ -1558,8 +1702,8 @@ msgstr "Couldn't convert request tokens to access tokens."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Remote service uses unknown version of OMB protocol."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
msgstr "Error updating remote profile."
#: actions/getfile.php:79
@@ -1571,33 +1715,30 @@ msgid "Cannot read file."
msgstr "Cannot read file."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Invalid token."
+msgstr "Invalid role."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "This role is reserved and cannot be set."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "You cannot sandbox users on this site."
+msgstr "You cannot grant user roles on this site."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "User is already silenced."
+msgstr "User already has this role."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "No profile specified."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "No profile with that ID."
@@ -1618,11 +1759,11 @@ msgstr "User is already blocked from group."
msgid "User is not a member of group."
msgstr "User is not a member of group."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Block user from group"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1633,15 +1774,17 @@ msgstr ""
"will be removed from the group, unable to post and unable to subscribe to "
"the group in the future."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Do not block this user from this group"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Block this user from this group"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Database error blocking user from group."
@@ -1685,10 +1828,6 @@ msgid ""
msgstr ""
"You can upload a logo image for your group. The maximum file size is %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "User without matching profile."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Pick a square area of the image to be the logo."
@@ -1719,34 +1858,38 @@ msgstr "A list of the users in this group."
msgid "Admin"
msgstr "Admin"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Block"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Make user an admin of the group"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Make admin"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Make this user an admin"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s timeline"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Updates from members of %1$s on %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Groups"
@@ -1771,7 +1914,7 @@ msgstr ""
"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
"%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Create a new group"
@@ -1799,6 +1942,8 @@ msgid ""
"If you can't find the group you're looking for, you can [create it](%%action."
"newgroup%%) yourself."
msgstr ""
+"If you can't find the group you're looking for, you can [create it](%%action."
+"newgroup%%) yourself."
#: actions/groupsearch.php:85
#, php-format
@@ -1806,10 +1951,12 @@ msgid ""
"Why not [register an account](%%action.register%%) and [create the group](%%"
"action.newgroup%%) yourself!"
msgstr ""
+"Why not [register an account](%%action.register%%) and [create the group](%%"
+"action.newgroup%%) yourself!"
#: actions/groupunblock.php:91
msgid "Only an admin can unblock group members."
-msgstr ""
+msgstr "Only an admin can unblock group members."
#: actions/groupunblock.php:95
msgid "User is not blocked from group."
@@ -1819,11 +1966,15 @@ msgstr "User is not blocked from group."
msgid "Error removing the block."
msgstr "Error removing the block."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM settings"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1832,15 +1983,24 @@ msgstr ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM is not available."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM address"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Current confirmed Jabber/GTalk address."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1849,11 +2009,9 @@ msgstr ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM address"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1862,44 +2020,65 @@ msgstr ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM preferences"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Send me notices through Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Post a notice when my Jabber/GTalk status changes."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Send me replies through Jabber/GTalk from people I'm not subscribed to."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publish a MicroID for my Jabber/GTalk address."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferences saved."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "No Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Cannot normalise Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Not a valid Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "That is already your Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID already belongs to another user."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1908,10 +2087,32 @@ msgstr ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "That is the wrong IM address."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Couldn't delete IM confirmation."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "IM confirmation cancelled."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "That is not your Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "The IM address was removed."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1932,8 +2133,8 @@ msgstr ""
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "You must be logged in to invite other users to use %s."
#: actions/invite.php:72
#, php-format
@@ -1952,7 +2153,9 @@ msgstr "Invite new users"
msgid "You are already subscribed to these users:"
msgstr "You are already subscribed to these users:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1999,17 +2202,18 @@ msgstr "Optionally add a personal message to the invitation."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Send"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s has invited you to join them on %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2074,7 +2278,9 @@ msgstr "You must be logged in to join a group."
msgid "No nickname or ID."
msgstr "No nickname or ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s joined group %2$s"
@@ -2083,48 +2289,50 @@ msgstr "%1$s joined group %2$s"
msgid "You must be logged in to leave a group."
msgstr "You must be logged in to leave a group."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "You are not a member of that group."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s left group %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Already logged in."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Incorrect username or password."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Error setting user. You are probably not authorised."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Login"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Login to site"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Remember me"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Automatically login in the future; not for shared computers!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Lost or forgotten password?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2132,18 +2340,20 @@ msgstr ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Login with your username and password."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
-msgstr ""
+msgstr "Only and admin can make another user an admin."
#: actions/makeadmin.php:96
#, php-format
@@ -2161,8 +2371,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Can't make %1$s an admin for group %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "No current status"
+msgid "No current status."
+msgstr "No current status."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2196,12 +2406,12 @@ msgstr "Use this form to create a new group."
msgid "New message"
msgstr "New message"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "You can't send a message to this user."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "No content!"
@@ -2209,7 +2419,7 @@ msgstr "No content!"
msgid "No recipient specified."
msgstr "No recipient specified."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2224,7 +2434,7 @@ msgstr "Message sent"
msgid "Direct message to %s sent."
msgstr "Could not create application."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax Error"
@@ -2232,7 +2442,7 @@ msgstr "Ajax Error"
msgid "New notice"
msgstr "New notice"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Notice posted"
@@ -2283,8 +2493,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Updates matching search term \"%1$s\" on %2$s!"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"This user doesn't allow nudges or hasn't confirmed or set his e-mail yet."
@@ -2306,16 +2517,16 @@ msgstr "OAuth applications"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "Applications you have registered"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "You have not registered any applications yet."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "Connected applications"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
@@ -2326,11 +2537,11 @@ msgid "You are not a user of that application."
msgstr "You are not a user of that application."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "You have not authorised any applications to use your account."
@@ -2338,25 +2549,30 @@ msgstr "You have not authorised any applications to use your account."
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Notice has no profile."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s's status on %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Content type %s not supported."
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Not a supported data format."
@@ -2459,7 +2675,7 @@ msgid "6 or more characters"
msgstr "6 or more characters"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirm"
@@ -2471,11 +2687,11 @@ msgstr "Same as password above"
msgid "Change"
msgstr "Change"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Password must be 6 or more characters."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Passwords don't match."
@@ -2487,7 +2703,7 @@ msgstr "Incorrect old password"
msgid "Error saving user; invalid."
msgstr "Error saving user; invalid."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Can't save new password."
@@ -2496,7 +2712,7 @@ msgid "Password saved."
msgstr "Password saved."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2506,23 +2722,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Theme directory not readable: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+msgid "Avatar directory not writable: %s."
+msgstr "Avatar directory not writable: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+msgid "Background directory not writable: %s."
+msgstr "Background directory not writable: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+msgid "Locales directory not readable: %s."
+msgstr "Locales directory not readable: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2661,19 +2877,19 @@ msgstr ""
msgid "People search"
msgstr "People Search"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Not a valid people tag: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Users self-tagged with %1$s - page %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Invalid notice content"
+msgid "Invalid notice content."
+msgstr "Invalid notice content."
#: actions/postnotice.php:101
#, php-format
@@ -2698,42 +2914,43 @@ msgstr "Profile information"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 lowercase letters or numbers, no punctuation or spaces"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Full name"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Homepage"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL of your homepage, blog, or profile on another site"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Describe yourself and your interests in %d chars"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Describe yourself and your interests"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Bio"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Location"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Where you are, like \"City, State (or Region), Country\""
@@ -2743,7 +2960,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Tags"
@@ -2775,7 +2992,7 @@ msgid ""
msgstr ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Bio is too long (max %d chars)."
@@ -2816,7 +3033,7 @@ msgstr "Settings saved."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2978,7 +3195,7 @@ msgstr "Reset password"
msgid "Recover password"
msgstr "Recover password"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Password recovery requested"
@@ -2998,19 +3215,19 @@ msgstr "Reset"
msgid "Enter a nickname or email address."
msgstr "Enter a nickname or e-mail address."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "No user with that e-mail address or username."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "No registered e-mail address for that user."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Error saving address confirmation."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3018,106 +3235,122 @@ msgstr ""
"Instructions for recovering your password have been sent to the e-mail "
"address registered to your account."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Unexpected password reset."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Password must be 6 chars or more."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Password and confirmation do not match."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Error setting user."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "New password successfully saved. You are now logged in."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Sorry, only invited people can register."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Sorry, invalid invitation code."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registration successful"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Register"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registration not allowed."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "You can't register if you don't agree to the licence."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "E-mail address already exists."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Invalid username or password."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 or more characters. Required."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Same as password above. Required."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Used only for updates, announcements, and password recovery"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Longer name, preferably your \"real\" name"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "My text and files are available under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3150,7 +3383,7 @@ msgstr ""
"\n"
"Thanks for signing up and we hope you enjoy using this service."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3194,7 +3427,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL of your profile on another compatible microblogging service"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Subscribe"
@@ -3230,7 +3463,7 @@ msgstr "You can't repeat your own notice."
msgid "You already repeated that notice."
msgstr "You already repeated that notice."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repeated"
@@ -3265,10 +3498,10 @@ msgid "Replies feed for %s (Atom)"
msgstr "Notice feed for %s"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
"notice to his attention yet."
@@ -3281,10 +3514,10 @@ msgid ""
msgstr ""
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
@@ -3295,16 +3528,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Replies to %1$s on %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "You cannot silence users on this site."
+msgstr "You cannot revoke user roles on this site."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "User without matching profile."
+msgstr "User doesn't have this role."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3318,7 +3549,7 @@ msgstr "User is already sandboxed."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3355,26 +3586,30 @@ msgstr "You must be logged in to view an application."
msgid "Application profile"
msgstr "Application profile"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Name"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organization"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Description"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistics"
@@ -3458,20 +3693,20 @@ msgstr ""
"notices you like to bookmark them for later or shed a spotlight on them."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s hasn't added any notices to his favourites yet. Post something "
"interesting they would add to their favourites :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s hasn't added any notices to his favourites yet. Why not [register an "
"account](%%%%action.register%%%%) and then post something interesting they "
@@ -3491,67 +3726,67 @@ msgstr "%s group"
msgid "%1$s group, page %2$d"
msgstr "%1$s group, page %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Group profile"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Note"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Group actions"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Notice feed for %s group (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Notice feed for %s group (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Notice feed for %s group (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Outbox for %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Members"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(None)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "All members"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Created"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3566,7 +3801,7 @@ msgstr ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3579,7 +3814,7 @@ msgstr ""
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Admins"
@@ -3652,10 +3887,10 @@ msgid ""
msgstr ""
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"You can try to nudge %1$s or [post something to his or her attention](%%%%"
"action.newnotice%%%%?status_textarea=%2$s)."
@@ -3694,9 +3929,8 @@ msgid "User is already silenced."
msgstr "User is already silenced."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Design settings for this StausNet site."
+msgstr "Basic settings for this StatusNet site"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
@@ -3712,11 +3946,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Minimum text limit is 0 (unlimited)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3764,9 +3998,8 @@ msgid "Default timezone for the site; usually UTC."
msgstr ""
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Default site language"
+msgstr "Default language"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
@@ -3793,77 +4026,98 @@ msgid "How long users must wait (in seconds) to post the same thing again."
msgstr ""
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Site notice"
+msgstr "Site Notice"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "New message"
+msgstr "Edit site-wide message"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Unable to save your design settings!"
+msgstr "Unable to save site notice."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Site notice"
+msgstr "Site notice text"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Site notice"
+msgstr "Save site notice"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS settings"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "You can receive SMS messages through e-mail from %%site.name%%."
-#: actions/smssettings.php:91
-#, fuzzy
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
-msgstr "This page is not available in a "
+msgstr "SMS is not available."
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS address"
-#: actions/smssettings.php:112
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Current confirmed SMS-enabled phone number."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Awaiting confirmation on this phone number."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Confirmation code"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Enter the code you received on your phone."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirm"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "SMS phone number"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Phone number, no punctuation or spaces, with area code"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS preferences"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3871,23 +4125,33 @@ msgstr ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "SMS preferences saved."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "No phone number."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "No carrier selected."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "That is already your phone number."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "That phone number already belongs to another user."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3895,23 +4159,40 @@ msgstr ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "That is the wrong confirmation number."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS confirmation cancelled."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "That is not your phone number."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "The SMS phone number was removed."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Mobile carrier"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Select a carrier"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3920,20 +4201,20 @@ msgstr ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "No code entered"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Change site configuration"
+msgstr "Manage snapshot configuration"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -3948,7 +4229,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3980,16 +4261,15 @@ msgid "Snapshots will be sent to this URL"
msgstr ""
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Save site settings"
+msgstr "Save snapshot settings"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "You are not subscribed to that profile."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Could not save subscription."
@@ -4033,6 +4313,8 @@ msgid ""
"You have no subscribers. Try subscribing to people you know and they might "
"return the favor"
msgstr ""
+"You have no subscribers. Try subscribing to people you know and they might "
+"return the favour"
#: actions/subscribers.php:110
#, php-format
@@ -4080,11 +4362,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s is not listening to anyone."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4117,12 +4399,12 @@ msgstr "No ID argument."
msgid "Tag %s"
msgstr "Tag %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "User profile"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Photo"
@@ -4156,10 +4438,6 @@ msgstr "Use this form to add tags to your subscribers or subscriptions."
msgid "No such tag."
msgstr "No such tag."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API method under construction."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "You haven't blocked that user."
@@ -4173,8 +4451,8 @@ msgid "User is not silenced."
msgstr "User is not silenced."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "No profile id in request."
+msgid "No profile ID in request."
+msgstr "No profile ID in request."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4189,7 +4467,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "User"
@@ -4211,7 +4488,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profile"
@@ -4270,7 +4548,7 @@ msgstr ""
"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
"click “Rejectâ€."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "License"
@@ -4374,48 +4652,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "%1$s groups, page %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Search for more groups"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s is not a member of any group."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Updates from %1$s on %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4427,7 +4711,7 @@ msgstr ""
"Software Foundation, either version 3 of the Licence, or (at your option) "
"any later version. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4439,7 +4723,7 @@ msgstr ""
"FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public Licence "
"for more details. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4448,88 +4732,138 @@ msgstr ""
"You should have received a copy of the GNU Affero General Public Licence "
"along with this program. If not, see %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Version"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Invalid size."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Group join failed."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Not part of group."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Group leave failed."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Could not update local group."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Could not create login token for %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "You are banned from sending direct messages."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Could not insert message."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Could not update message with new URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
+msgstr "Database error inserting hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problem saving notice. Too long."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problem saving notice. Unknown user."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Too many notices too fast; take a breather and post again in a few minutes."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4537,306 +4871,371 @@ msgstr ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "You are banned from posting notices on this site."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problem saving notice."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problem saving group inbox."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "User has no profile."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Unable to save site notice."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "You have been banned from subscribing."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "User has blocked you."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Not subscribed!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "Couldn't delete self-subscription."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Couldn't delete subscription."
+msgid "Could not delete subscription OMB token."
+msgstr "Couldn't delete subscription OMB token."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Couldn't delete subscription."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Welcome to %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Could not create group."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Could not set group URI."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Could not set group membership."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Could not save local group info."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Change your profile settings"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Upload an avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Change your password"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Change e-mail handling"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Design your profile"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Other"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Other options"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Other"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Untitled page"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Primary site navigation"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Personal profile and friends timeline"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Change your e-mail, avatar, password, profile"
+msgstr "Change your email, avatar, password, profile"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Connect to services"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Connect"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Change site configuration"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Admin"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Invite friends and colleagues to join you on %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Invite"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Logout from the site"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Logout"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Create an account"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Register"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Login to the site"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Login"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Help me!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Help"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Search for people or text"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Search"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Site notice"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Local views"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Page notice"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Secondary site navigation"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Help"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "About"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "F.A.Q."
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacy"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Source"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contact"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Badge"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet software licence"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
"broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** is a microblogging service."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4847,67 +5246,81 @@ msgstr ""
"s, available under the [GNU Affero General Public Licence](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Site content license"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "All "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licence."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "All %1$s content and data are available under the %2$s licence."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Pagination"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "After"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Before"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "You cannot make changes to this site."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Changes to that panel are not allowed."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() not implemented."
@@ -4917,155 +5330,189 @@ msgstr "showForm() not implemented."
msgid "saveSettings() not implemented."
msgstr "saveSettings() not implemented."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Unable to delete design setting."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Basic site configuration"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Design configuration"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Design"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "User configuration"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "User"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Access configuration"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Paths configuration"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Sessions configuration"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Site notice"
+msgstr "Edit site notice"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Paths configuration"
+msgstr "Snapshots configuration"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Describe your application in %d characters"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Describe your application"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Source URL"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL of the homepage of this application"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Source URL"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organisation responsible for this application"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL for the homepage of the organisation"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancel"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Revoke"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Provider"
@@ -5077,45 +5524,64 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Password changing failed"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Password changing is not allowed"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Command results"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Command complete"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Command failed"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Sorry, this command is not yet implemented."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Notice with that id does not exist"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "User has no last notice"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Could not find a user with nickname %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Could not find a local user with nickname %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Sorry, this command is not yet implemented."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Nudge sent to %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5123,195 +5589,199 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Notice with that id does not exist"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "User has no last notice"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Notice marked as fave."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "You are already a member of that group."
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Could not join user %s to group %s."
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s joined group %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Could not remove user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Could not join user %1$s to group %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s left group %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Could not remove user %1$s to group %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Fullname: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Location: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Homepage: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "About: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Message too long - maximum is %1$d characters, you sent %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Direct message to %s sent"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Error sending direct message."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Cannot repeat your own notice."
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Already repeated that notice."
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Notice from %s repeated"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Error repeating notice."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Notice too long - maximum is %d characters, you sent %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Reply to %s sent"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Error saving notice."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Specify the name of the user to subscribe to"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "No such user."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Can't subscribe to OMB profiles by command."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Subscribed to %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Specify the name of the user to unsubscribe from"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Unsubscribed from %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Command not yet implemented."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notification off."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Can't turn off notification."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notification on."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Can't turn on notification."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Unsubscribed %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "You are not subscribed to anyone."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "You are already subscribed to these users:"
msgstr[1] "You are already subscribed to these users:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "No one is subscribed to you."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Could not subscribe other to you."
msgstr[1] "Could not subscribe other to you."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "You are not a member of any groups."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "You are not a member of that group."
msgstr[1] "You are not a member of that group."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5352,20 +5822,58 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
+"Commands:\n"
+"on - turn on notifications\n"
+"off - turn off notifications\n"
+"help - show this help\n"
+"follow <nickname> - subscribe to user\n"
+"groups - lists the groups you have joined\n"
+"subscriptions - list the people you follow\n"
+"subscribers - list the people that follow you\n"
+"leave <nickname> - unsubscribe from user\n"
+"d <nickname> <text> - direct message to user\n"
+"get <nickname> - get last notice from user\n"
+"whois <nickname> - get profile info on user\n"
+"lose <nickname> - force user to stop following you\n"
+"fav <nickname> - add user's last notice as a 'fave'\n"
+"fav #<notice_id> - add notice with the given id as a 'fave'\n"
+"repeat #<notice_id> - repeat a notice with a given id\n"
+"repeat <nickname> - repeat the last notice from user\n"
+"reply #<notice_id> - reply to notice with a given id\n"
+"reply <nickname> - reply to the last notice from user\n"
+"join <group> - join group\n"
+"login - Get a link to login to the web interface\n"
+"drop <group> - leave group\n"
+"stats - get your stats\n"
+"stop - same as 'off'\n"
+"quit - same as 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "No configuration file found"
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Go to the installer."
@@ -5387,7 +5895,7 @@ msgstr "Connections"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "Authorised connected applications"
#: lib/dberroraction.php:60
msgid "Database error"
@@ -5537,53 +6045,54 @@ msgstr "Groups with most posts"
msgid "Tags in %s group's notices"
msgstr "Tags in %s group's notices"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "This page is not available in a media type you accept"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Unsupported image file format."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "That file is too big. The maximum file size is %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Partial upload."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "System error uploading file."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Not an image or corrupt file."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Unsupported image file format."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Lost our file."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Unknown file type"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5604,11 +6113,13 @@ msgstr "Login with a username and password"
msgid "Sign up for a new account"
msgstr "Sign up for a new account"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "E-mail address confirmation"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5625,12 +6136,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s is now listening to your notices on %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5655,17 +6175,20 @@ msgstr ""
"----\n"
"Change your email address or notification options at %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Bio: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "New e-mail address for posting to %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5686,21 +6209,31 @@ msgstr ""
"Faithfully yours,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS confirmation"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: confirm you own this phone number with this code:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "You've been nudged by %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5716,12 +6249,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "New private message from %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5740,12 +6275,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) added your notice as a favorite"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5766,12 +6303,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5784,6 +6331,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5796,7 +6355,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "from"
@@ -5851,24 +6410,24 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Could not determine file's MIME type."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5921,48 +6480,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "in context"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repeated by"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Reply to this notice"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Reply"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Notice repeated"
@@ -5986,6 +6549,10 @@ msgstr "Error inserting new profile."
msgid "Error inserting avatar"
msgstr "Error inserting avatar."
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Error updating remote profile."
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Error inserting remote profile."
@@ -6031,11 +6598,11 @@ msgstr "Your sent messages"
msgid "Tags in %s's notices"
msgstr "Tags in %s's notices"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Unknown"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subscriptions"
@@ -6043,31 +6610,32 @@ msgstr "Subscriptions"
msgid "All subscriptions"
msgstr "All subscriptions"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subscribers"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "All subscribers"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "User ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Member since"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "All groups"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "No return-to arguments."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6091,20 +6659,28 @@ msgstr "Featured"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "No return-to arguments."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Repeat this notice?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Yes"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repeat this notice"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Block this user from this group"
+msgstr "Revoke the \"%s\" role from this user"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6202,6 +6778,50 @@ msgstr ""
msgid "None"
msgstr "None"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Failed updating avatar."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Error updating remote profile."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Top posters"
@@ -6230,91 +6850,108 @@ msgstr "Unsubscribe from this user"
msgid "Unsubscribe"
msgstr "Unsubscribe"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "User %s (%d) has no profile record."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Edit Avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "User actions"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Edit profile settings"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
-msgstr ""
+msgstr "Edit"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Send a direct message to this user"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Message"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
-msgstr ""
+msgstr "Moderate"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "User profile"
+msgstr "User role"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Admins"
+msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "a few seconds ago"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "about a minute ago"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "about %d minutes ago"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "about an hour ago"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "about %d hours ago"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "about a day ago"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "about %d days ago"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "about a month ago"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "about %d months ago"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "about a year ago"
@@ -6328,7 +6965,7 @@ msgstr "%s is not a valid colour!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s is not a valid colour! Use 3 or 6 hex chars."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Message too long - maximum is %1$d characters, you sent %2$d."
diff --git a/locale/es/LC_MESSAGES/statusnet.po b/locale/es/LC_MESSAGES/statusnet.po
index cdc0184e4..f7e57911c 100644
--- a/locale/es/LC_MESSAGES/statusnet.po
+++ b/locale/es/LC_MESSAGES/statusnet.po
@@ -2,8 +2,10 @@
#
# Author@translatewiki.net: Brion
# Author@translatewiki.net: Crazymadlover
+# Author@translatewiki.net: Locos epraix
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: PerroVerd
+# Author@translatewiki.net: Pertile
# Author@translatewiki.net: Peter17
# Author@translatewiki.net: Translationista
# --
@@ -13,12 +15,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:43+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:22+0000\n"
"Language-Team: Spanish\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: es\n"
"X-Message-Group: out-statusnet\n"
@@ -26,7 +28,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Acceder"
@@ -47,7 +49,6 @@ msgstr "¿Prohibir a los usuarios anónimos (no conectados) ver el sitio?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Privado"
@@ -77,79 +78,83 @@ msgstr "Cerrado"
msgid "Save access settings"
msgstr "Guardar la configuración de acceso"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Guardar"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "No existe tal página"
+msgid "No such page."
+msgstr "No existe tal página."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "No existe ese usuario."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%1$s y amigos, página %2$d"
+msgstr "%1$s y sus amistades, página %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
-msgstr "%s y amigos"
+msgstr "%s y sus amistades"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed de los amigos de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed de los amigos de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed de los amigos de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -157,7 +162,7 @@ msgstr ""
"Esta es la línea temporal de %s y amistades, pero nadie ha publicado nada "
"todavía."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -167,83 +172,85 @@ msgstr ""
"todavía."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Trata de suscribirte a más personas, [unirte a un grupo] (%%action.groups%%) "
-"o publicar algo."
+"Puedes intentar [zarandear a %1$s](../%2$s) desde su perfil o [publicar algo "
+"a ellos](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"Puede intentar [guiñar a %1$s](../%2$s) desde su perfil o [publicar algo a "
-"su atención ](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"Por qué no [registrar una cuenta](%%%%action.register%%%%) y luego zarandear "
+"a %s o publicar una nota a ellos?"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
-msgstr "Tú y amigos"
+msgstr "Tú y tus amistades"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
-msgstr "¡Actualizaciones de %1$s y amigos en %2$s!"
+msgstr "¡Actualizaciones de %1$s y sus amistades en %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Método de API no encontrado."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Este método requiere un POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"Tienes que especificar un parámetro llamdao 'dispositivo' con un valor a "
-"elegir entre: sms, im, ninguno"
+"elegir entre: sms, im, ninguno."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "No se pudo actualizar el usuario."
@@ -252,7 +259,7 @@ msgstr "No se pudo actualizar el usuario."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "El usuario no tiene un perfil."
@@ -262,9 +269,9 @@ msgid "Could not save profile."
msgstr "No se pudo guardar el perfil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -322,47 +329,47 @@ msgstr "Mensajes directos a %s"
msgid "All the direct messages sent to %s"
msgstr "Todos los mensajes directos enviados a %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "¡Sin texto de mensaje!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Demasiado largo. Tamaño máx. de los mensajes es %d caracteres."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "No se encuentra usuario receptor."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "No se puede enviar mensajes directos a usuarios que no son tu amigo."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "No se encontró estado para ese ID"
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Este status ya está en favoritos."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "No se pudo crear favorito."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Este status no es un favorito."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "No se pudo borrar favorito."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "No puede seguir al usuario. Usuario no encontrado"
+msgid "Could not follow user: profile not found."
+msgstr "No se pudo seguir al usuario: Perfil no encontrado."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -377,9 +384,9 @@ msgstr "No se pudo dejar de seguir al usuario. Usuario no encontrado"
msgid "You cannot unfollow yourself."
msgstr "No puedes dejar de seguirte a ti mismo."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Deben proveerse dos identificaciones de usuario o nombres en pantalla."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Deben proveerse dos IDs válidos o nombres en pantalla."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -389,117 +396,129 @@ msgstr "No se pudo determinar el usuario fuente."
msgid "Could not find target user."
msgstr "No se pudo encontrar ningún usuario de destino."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"El usuario debe tener solamente letras minúsculas y números y no puede tener "
"espacios."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "El usuario ya existe. Prueba con otro."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Usuario inválido"
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "La página de inicio no es un URL válido."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Tu nombre es demasiado largo (max. 255 carac.)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "La descripción es demasiado larga (máx. %d caracteres)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "La ubicación es demasiado larga (máx. 255 caracteres)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "¡Muchos seudónimos! El máximo es %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Alias inválido: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Alias inválido: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "El alias \"%s\" ya está en uso. Intenta usar otro."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "El alias no puede ser el mismo que el usuario."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "¡No se ha encontrado el grupo!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Grupo no encontrado."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Ya eres miembro de ese grupo"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Has sido bloqueado de ese grupo por el administrador."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "No se pudo unir el usuario %s al grupo %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "No eres miembro de este grupo."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "No se pudo eliminar al usuario %1$s del grupo %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Grupos de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s grupos %2$s es un miembro de."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Grupos %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "Grupos en %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Carga falló."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "No se ha provisto de un parámetro oauth_token."
@@ -509,17 +528,17 @@ msgid "Invalid token."
msgstr "Token inválido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -529,7 +548,7 @@ msgstr ""
#: actions/apioauthauthorize.php:135
msgid "Invalid nickname / password!"
-msgstr "¡Apodo o contraseña inválidos!"
+msgstr "¡Usuario o contraseña inválidos!"
#: actions/apioauthauthorize.php:159
msgid "Database error deleting OAuth application user."
@@ -555,12 +574,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "El token de solicitud %2 ha sido denegado y revocado."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Envío de formulario inesperado."
@@ -583,20 +605,22 @@ msgstr ""
"permiso para <strong>%3$s</strong> la información de tu cuenta %4$s. Sólo "
"debes dar acceso a tu cuenta %4$s a terceras partes en las que confíes."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Cuenta"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
-msgstr "Apodo"
+msgstr "Usuario"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Contraseña"
@@ -612,11 +636,11 @@ msgstr "Permitir"
msgid "Allow or deny access to your account information."
msgstr "Permitir o denegar el acceso a la información de tu cuenta."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Este método requiere un PUBLICAR O ELIMINAR"
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "No puedes borrar el estado de otro usuario."
@@ -633,61 +657,65 @@ msgstr "No puedes repetir tus propias notificaciones."
msgid "Already repeated that notice."
msgstr "Esta notificación ya se ha repetido."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status borrado."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "No hay estado para ese ID"
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "El cliente debe proveer un parámetro de 'status' con un valor."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "La entrada es muy larga. El tamaño máximo es de %d caracteres."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "No encontrado"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "No encontrado."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"El tamaño máximo de la notificación es %d caracteres, incluyendo el URL "
"adjunto."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formato no soportado."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoritos de %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s actualizaciones favoritas de %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Actualizaciones que mencionan %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "actualizaciones de %1$s en respuesta a las de %2$s / %3$s"
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "línea temporal pública de %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "¡Actualizaciones de todos en %s!"
@@ -702,19 +730,19 @@ msgstr "Repetido a %s"
msgid "Repeats of %s"
msgstr "Repeticiones de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
-msgstr "Avisos marcados con %s"
+msgstr "Avisos etiquetados con %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Actualizaciones etiquetadas con %1$s en %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "No encontrado."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Método API en construcción."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -725,7 +753,7 @@ msgstr "No existe tal archivo adjunto."
#: actions/grouplogo.php:86 actions/groupmembers.php:76
#: actions/grouprss.php:91 actions/showgroup.php:121
msgid "No nickname."
-msgstr "Ningún apodo."
+msgstr "Ningún nombre de usuario."
#: actions/avatarbynickname.php:64
msgid "No size."
@@ -735,10 +763,11 @@ msgstr "Ningún tamaño."
msgid "Invalid size."
msgstr "Tamaño inválido."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
-msgstr "Avatar"
+msgstr "Imagen"
#: actions/avatarsettings.php:78
#, php-format
@@ -746,15 +775,15 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Puedes subir tu imagen personal. El tamaño máximo de archivo es %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Usuario sin perfil equivalente"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Usuario sin perfil coincidente."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
msgid "Avatar settings"
-msgstr "Configuración de Avatar"
+msgstr "Configuración de imagen"
#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
#: actions/grouplogo.php:202 actions/grouplogo.php:262
@@ -767,47 +796,51 @@ msgid "Preview"
msgstr "Vista previa"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Borrar"
#: actions/avatarsettings.php:166 actions/grouplogo.php:236
msgid "Upload"
-msgstr "Cargar"
+msgstr "Subir"
#: actions/avatarsettings.php:231 actions/grouplogo.php:289
msgid "Crop"
msgstr "Cortar"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Ningún archivo fue subido."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
-msgstr "Elige un área cuadrada de la imagen para que sea tu avatar"
+msgstr "Elige un área cuadrada para que sea tu imagen"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Se perdió nuestros datos de archivo."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
-msgstr "Avatar actualizado"
+msgstr "Imagen actualizada"
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
-msgstr "Error al actualizar avatar."
+msgstr "Error al actualizar la imagen."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
-msgstr "Avatar borrado."
+msgstr "Imagen borrada."
#: actions/block.php:69
msgid "You already blocked that user."
msgstr "Ya has bloqueado a este usuario."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Bloquear usuario."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -817,27 +850,42 @@ msgstr ""
"desuscribirá de tu cuenta, no podrá suscribirse a ella en el futuro y no se "
"te notificará de ninguna de sus respuestas @."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "No bloquear a este usuario"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Sí"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Bloquear este usuario."
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "No se guardó información de bloqueo."
@@ -850,8 +898,8 @@ msgstr "No se guardó información de bloqueo."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "No existe ese grupo."
@@ -882,9 +930,11 @@ msgstr "Desbloquear"
msgid "Unblock this user"
msgstr "Desbloquear este usuario"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Mensaje a "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Postear a %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -898,33 +948,43 @@ msgstr "Código de confirmación no encontrado."
msgid "That confirmation code is not for you!"
msgstr "¡Ese código de confirmación no es para ti!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Tipo de dirección %s desconocida"
+msgid "Unrecognized address type %s."
+msgstr "Tipo de dirección %s desconocida."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Esa dirección ya fue confirmada."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "No se pudo actualizar el usuario."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "No se pudo eliminar la confirmación de correo electrónico."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Confirmar la dirección"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "La dirección \"%s\" fue confirmada para tu cuenta."
@@ -934,7 +994,7 @@ msgid "Conversation"
msgstr "Conversación"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Avisos"
@@ -953,7 +1013,7 @@ msgstr "No eres el propietario de esta aplicación."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Hubo problemas con tu clave de sesión."
@@ -971,21 +1031,23 @@ msgstr ""
"los datos acerca de la aplicación de la base de datos, incluyendo todas las "
"conexiones de usuario existente."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "No eliminar esta aplicación"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Borrar esta aplicación"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "No conectado."
@@ -1010,11 +1072,13 @@ msgstr "Borrar aviso"
msgid "Are you sure you want to delete this notice?"
msgstr "¿Estás seguro de que quieres eliminar este aviso?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "No eliminar este mensaje"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Borrar este aviso"
@@ -1038,58 +1102,69 @@ msgstr ""
"¿Realmente deseas eliminar este usuario? Esto borrará de la base de datos "
"todos los datos sobre el usuario, sin dejar una copia de seguridad."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Borrar este usuario"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Diseño"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Configuración de diseño de este sitio StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL de logotipo inválido."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema no disponible"
+msgid "Theme not available: %s."
+msgstr "Tema no disponible: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Cambiar logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo del sitio"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Cambiar el tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Tema del sitio"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema para el sitio."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Personalizar tema"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Puedes subir un tema personalizado StatusNet como un archivo .ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Cambiar la imagen de fondo"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Fondo"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1098,67 +1173,76 @@ msgstr ""
"Puedes subir una imagen de fondo para el sitio. El tamaño máximo de archivo "
"es %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
-msgstr "Activado"
+msgstr "Activar"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
-msgstr "Desactivado"
+msgstr "Desactivar"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Activar o desactivar la imagen de fondo."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Imagen de fondo en mosaico"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Cambiar colores"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Contenido"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra lateral"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texto"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Vínculos"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avanzado"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Personalizar CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Utilizar los valores predeterminados"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Restaurar los diseños predeterminados"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Volver a los valores predeterminados"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Guardar"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Guardar el diseño"
@@ -1214,7 +1298,7 @@ msgstr "El URL fuente es muy largo."
#: actions/editapplication.php:200 actions/newapplication.php:185
msgid "Source URL is not valid."
-msgstr "La URL fuente es inválida."
+msgstr "El URL fuente es inválido."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
@@ -1263,11 +1347,17 @@ msgstr "Usa este formulario para editar el grupo."
msgid "description is too long (max %d chars)."
msgstr "La descripción es muy larga (máx. %d caracteres)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Alias inválido: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "No se pudo actualizar el grupo."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "No fue posible crear alias."
@@ -1275,31 +1365,42 @@ msgstr "No fue posible crear alias."
msgid "Options saved."
msgstr "Se guardó Opciones."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Configuración del correo electrónico"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Gestiona la forma en que recibes correo desde %%site.name%%"
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Dirección"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Dirección de correo electrónico"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Actual dirección de correo electrónico confirmada"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Eliminar"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1307,109 +1408,139 @@ msgstr ""
"Esperando confirmación de esta dirección. Revisa tu bandeja de entrada (¡y "
"la de spam!) por un mensaje con las instrucciones."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancelar"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Dirección de correo electrónico"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Correo electrónico, como \"NombredeUsuario@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Añadir"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Correo entrante"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Envie emails a esta dirección para ingresar nuevos avisos"
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Hace una nueva dirección de correo para postear; cancela la anterior."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nuevo"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferencias"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferencias de correo electrónico"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Enviarme avisos de suscripciones nuevas por correo."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Enviarme un correo electrónico cuando alguien agrega mi aviso a favoritos."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
"Enviarme un correo electrónico cuando alguien me envía un mensaje privado."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
"Enviarme un correo electrónico cuando alguien me envíe una \"@-respuesta\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Permitir que amigos me contacten y envién un correo."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Deseo enviar estados por email"
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publicar un MicroID para mi dirección de correo."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Preferencias guardadas."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Preferencias de correo electrónico guardadas."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Sin dirección de correo electrónico"
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "No se puede normalizar esta dirección de correo electrónico."
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Correo electrónico no válido"
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Esa ya es tu dirección de correo electrónico"
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Esa dirección de correo pertenece a otro usuario."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "No se pudo insertar el código de confirmación."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1418,43 +1549,53 @@ msgstr ""
"Revisa tu bandeja de entrada (¡y la de spam!) para encontrar el código y las "
"instrucciones sobre cómo usarlo."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ninguna confirmación pendiente para cancelar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Esa dirección de mensajería instantánea es incorrecta."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Esa es la dirección de correo electrónico incorrecta."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmación cancelada."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Confirmación de correo electrónico cancelada."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Esa no es tu dirección de correo electrónico"
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "La dirección fue eliminada."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "La dirección de correo electrónico ha sido eliminada."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "No hay dirección de correo entrante."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "No se pudo actualizar información de usuario."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Dirección de correo entrante removida."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nueva dirección de correo entrante agregada."
@@ -1512,7 +1653,7 @@ msgstr "Avisos favoritos de %s"
#: actions/favoritesrss.php:115
#, php-format
msgid "Updates favored by %1$s on %2$s!"
-msgstr "¡Actualizaciones favorecidas por %1$ s en %2$s!"
+msgstr "¡Actualizaciones favorecidas por %1$s en %2$s!"
#: actions/featured.php:69 lib/featureduserssection.php:87
#: lib/publicgroupnav.php:89
@@ -1543,7 +1684,7 @@ msgstr "Sin archivo adjunto"
#: actions/file.php:51
msgid "No uploaded attachments."
-msgstr "No hay archivos adjuntos cargados."
+msgstr "No hay archivos adjuntos subidos."
#: actions/finishremotesubscribe.php:69
msgid "Not expecting this response!"
@@ -1573,9 +1714,9 @@ msgstr "No se pudo convertir el token de solicitud en token de acceso."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "El servicio remoto utiliza una versión desconocida del protocolo OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Error al actualizar el perfil remoto"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Error al actualizar el perfil remoto."
#: actions/getfile.php:79
msgid "No such file."
@@ -1586,33 +1727,30 @@ msgid "Cannot read file."
msgstr "No se puede leer archivo."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Token inválido."
+msgstr "Función no válida."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Esta función es reservada y no puede asignarse."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "No puedes enviar mensaje a este usuario."
+msgstr "No puedes conceder funciones de usuario en este sitio."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "El usuario te ha bloqueado."
+msgstr "El usuario ya tiene esta función."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "No se especificó perfil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "No existe perfil con ese ID"
@@ -1633,11 +1771,11 @@ msgstr "Usuario ya está bloqueado del grupo."
msgid "User is not a member of group."
msgstr "Usuario no es miembro del grupo"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Bloquear usuario de grupo"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1648,15 +1786,17 @@ msgstr ""
"eliminará del grupo y no podrá publicar ni suscribirse al grupo en lo "
"sucesivo."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "No bloquear este usuario de este grupo"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Bloquear este usuario de este grupo"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
"Se ha producido un error en la base de datos al bloquear el usuario del "
@@ -1703,10 +1843,6 @@ msgstr ""
"Puedes subir una imagen de logo para tu grupo. El tamaño máximo del archivo "
"debe ser %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Usuario sin perfil coincidente."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Elige un área cuadrada de la imagen para que sea tu logo."
@@ -1737,34 +1873,38 @@ msgstr "Lista de los usuarios en este grupo."
msgid "Admin"
msgstr "Admin"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloquear"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Convertir al usuario en administrador del grupo"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Convertir en administrador"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Convertir a este usuario en administrador"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "línea temporal de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "¡Actualizaciones de miembros de %1$s en %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupos"
@@ -1789,7 +1929,7 @@ msgstr ""
"encuentras un grupo que te guste? ¡Intenta [buscar otro](%%%%action."
"groupsearch%%%%) o [crea tú uno!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Crear un nuevo grupo"
@@ -1841,11 +1981,15 @@ msgstr "El usuario no está bloqueado del grupo."
msgid "Error removing the block."
msgstr "Se ha producido un error al eliminar el bloque."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Configuración de mensajería instantánea"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1854,15 +1998,24 @@ msgstr ""
"Puedes enviar y recibir avisos vía [mensajes instantáneos](%%doc.im%%) de "
"Jabber/GTalk. Configura tu dirección y opciones abajo."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "La mensajería instantánea no está disponible."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Dirección de mensajería instantánea"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Dirección actual Jabber/Gtalk confirmada."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1872,11 +2025,9 @@ msgstr ""
"Jabber/GTalk un mensaje con más instrucciones. (¿Has añadido a %s a tu lista "
"de amigos?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Dirección de mensajería instantánea"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1886,44 +2037,65 @@ msgstr ""
"Primero, asegúrate de agregar a %s a tu lista de amigos en tu cliente de "
"mensajería instantánea o en GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferencias de mensajería instantánea"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Enviarme avisos por Jabber/GTalk"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Enviar un aviso cuando el estado de mi Jabber/GTalk cambie."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Envirame respuestas por medio de Jabber/GTalk de gente a la cual no sigo."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publicar un MicroID para mi cuenta Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferencias guardadas."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ningún Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "No se puede normalizar este Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Jabber ID no válido"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Ese ya es tu Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "El Jabber ID ya pertenece a otro usuario."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1933,10 +2105,32 @@ msgstr ""
"instantánea que agregaste. Debes aprobar a %s para que pueda enviarte "
"mensajes."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Esa dirección de mensajería instantánea es incorrecta."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "No se pudo eliminar la confirmación de mensajería instantánea."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Confirmación de mensajería instantánea cancelada."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Ese no es tu Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "La dirección de mensajería instantánea ha sido eliminada."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1958,8 +2152,8 @@ msgstr "Se han inhabilitado las invitaciones."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "Debes estar conectado para invitar otros usuarios a usar %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Debes estar conectado para invitar otros usuarios a usar %s."
#: actions/invite.php:72
#, php-format
@@ -1978,7 +2172,9 @@ msgstr "Invitar nuevos usuarios:"
msgid "You are already subscribed to these users:"
msgstr "Ya estás suscrito a estos usuarios:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2025,17 +2221,18 @@ msgstr "Opcionalmente añada un mensaje personalizado a su invitación."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Enviar"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s te ha invitado a que te unas con el/ellos en %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2097,63 +2294,66 @@ msgid "You must be logged in to join a group."
msgstr "Debes estar conectado para unirte a un grupo."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Ningún apodo."
+msgstr "Ningún nombre de usuario o ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
-msgstr "%1$s se ha unido al grupo %2$"
+msgstr "%1$s se ha unido al grupo %2$s"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
msgstr "Debes estar conectado para dejar un grupo."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "No eres miembro de este grupo."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ha dejado el grupo %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Ya estás conectado."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nombre de usuario o contraseña incorrectos."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Error al configurar el usuario. Posiblemente no tengas autorización."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Inicio de sesión"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Ingresar a sitio"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Recordarme"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Iniciar sesión automáticamente en el futuro. ¡No usar en ordenadores "
"compartidos! "
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "¿Contraseña olvidada o perdida?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2161,14 +2361,17 @@ msgstr ""
"Por razones de seguridad, por favor vuelve a escribir tu nombre de usuario y "
"contraseña antes de cambiar tu configuración."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Ingresar con tu nombre de usuario y contraseña."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Inicia sesión con tu usuario y contraseña. ¿Aún no tienes usuario? [Crea](%%"
-"action.register%%) una cuenta."
+"Aún no tienes nombre de usuario? [Registrar](%%action.register%%) una nueva "
+"cuenta."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2191,8 +2394,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "No es posible convertir a %1$s en administrador del grupo %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "No existe estado actual"
+msgid "No current status."
+msgstr "No existe estado actual."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2208,7 +2411,7 @@ msgstr "Utiliza este formulario para registrar una nueva aplicación."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr "Se requiere la URL fuente."
+msgstr "Se requiere el URL fuente."
#: actions/newapplication.php:258 actions/newapplication.php:267
msgid "Could not create application."
@@ -2226,12 +2429,12 @@ msgstr "Usa este formulario para crear un grupo nuevo."
msgid "New message"
msgstr "Nuevo Mensaje "
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "No puedes enviar mensaje a este usuario."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "¡Ningún contenido!"
@@ -2239,7 +2442,7 @@ msgstr "¡Ningún contenido!"
msgid "No recipient specified."
msgstr "No se especificó receptor."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "No te auto envíes un mensaje; dícetelo a ti mismo."
@@ -2253,7 +2456,7 @@ msgstr "Mensaje enviado"
msgid "Direct message to %s sent."
msgstr "Se ha enviado un mensaje directo a %s."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Error de Ajax"
@@ -2261,7 +2464,7 @@ msgstr "Error de Ajax"
msgid "New notice"
msgstr "Nuevo aviso"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Mensaje publicado"
@@ -2315,18 +2518,18 @@ msgstr ""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"Este usuario no permite zumbidos o todavía no confirma o configura su correo "
-"electrónico."
+"Este usuario no permite zarandeos o todavía no confirma o configura su "
+"correo electrónico."
#: actions/nudge.php:94
msgid "Nudge sent"
-msgstr "Se envió zumbido"
+msgstr "Toque enviado"
#: actions/nudge.php:97
msgid "Nudge sent!"
-msgstr "¡Codazo enviado!"
+msgstr "¡Toque enviado!"
#: actions/oauthappssettings.php:59
msgid "You must be logged in to list your applications."
@@ -2358,11 +2561,11 @@ msgid "You are not a user of that application."
msgstr "No eres un usuario de esa aplicación."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "No se puede revocar el acceso para la aplicación: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "No se puede revocar el acceso para la aplicación: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "No has autorizado a ninguna aplicación utilizar tu cuenta."
@@ -2372,25 +2575,30 @@ msgstr ""
"Los desarrolladores pueden editar la configuración de registro de sus "
"aplicaciones "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Aviso sin perfil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Aviso no tiene perfil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "estado de %1$s en %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "tipo de contenido "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Tipo de contenido %s no soportado."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Sólo "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Solamente %s URLs sobre HTTP simples por favor."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "No es un formato de dato soportado"
@@ -2416,7 +2624,7 @@ msgstr "  (servicio gratuito)"
#: actions/othersettings.php:116
msgid "Shorten URLs with"
-msgstr "Acortar las URL con"
+msgstr "Acortar los URL con"
#: actions/othersettings.php:117
msgid "Automatic shortening service to use."
@@ -2494,7 +2702,7 @@ msgid "6 or more characters"
msgstr "6 o más caracteres"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmar"
@@ -2506,11 +2714,11 @@ msgstr "Igual a la contraseña de arriba"
msgid "Change"
msgstr "Cambiar"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Cotrnaseña debe tener 6 o más caracteres."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Las contraseñas no coinciden"
@@ -2522,7 +2730,7 @@ msgstr "Contraseña antigua incorrecta."
msgid "Error saving user; invalid."
msgstr "Error al guardar el usuario; inválido."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "No se puede guardar la nueva contraseña."
@@ -2531,33 +2739,34 @@ msgid "Password saved."
msgstr "Se guardó Contraseña."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Rutas"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
msgstr ""
+"Configuración de la ruta de acceso y del servidor de este sitio StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Directorio de temas ilegible: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Directorio de temas ilegible: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+msgid "Avatar directory not writable: %s."
+msgstr "Directorio de avatares no escribible: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Directorio de fondo ilegible: %s"
+msgid "Background directory not writable: %s."
+msgstr "Directorio de fondo no escribible: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+msgid "Locales directory not readable: %s."
+msgstr "Directorio de configuración regional ilegible: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2573,32 +2782,31 @@ msgstr "Servidor"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
-msgstr ""
+msgstr "Nombre del host del servidor del sitio."
#: actions/pathsadminpanel.php:242
msgid "Path"
msgstr "Ruta"
#: actions/pathsadminpanel.php:242
-#, fuzzy
msgid "Site path"
-msgstr "Aviso de sitio"
+msgstr "Ruta del sitio"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
-msgstr ""
+msgstr "Ruta de las configuraciones locales"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
-msgstr ""
+msgstr "Ruta del directorio de las configuraciones locales"
#: actions/pathsadminpanel.php:250
msgid "Fancy URLs"
-msgstr ""
+msgstr "URL agradables"
#: actions/pathsadminpanel.php:252
msgid "Use fancy (more readable and memorable) URLs?"
-msgstr ""
+msgstr "¿Usar URL agradables (más legibles y memorizables)?"
#: actions/pathsadminpanel.php:259
msgid "Theme"
@@ -2610,7 +2818,7 @@ msgstr "Servidor de los temas"
#: actions/pathsadminpanel.php:268
msgid "Theme path"
-msgstr ""
+msgstr "Ruta del tema"
#: actions/pathsadminpanel.php:272
msgid "Theme directory"
@@ -2618,20 +2826,19 @@ msgstr "Directorio de temas"
#: actions/pathsadminpanel.php:279
msgid "Avatars"
-msgstr "Avatares"
+msgstr "Imágenes"
#: actions/pathsadminpanel.php:284
msgid "Avatar server"
-msgstr "Servidor del avatar"
+msgstr "Servidor de la imagen"
#: actions/pathsadminpanel.php:288
-#, fuzzy
msgid "Avatar path"
-msgstr "Avatar actualizado"
+msgstr "Ruta de la imagen"
#: actions/pathsadminpanel.php:292
msgid "Avatar directory"
-msgstr "Directorio del avatar"
+msgstr "Directorio de la imagen"
#: actions/pathsadminpanel.php:301
msgid "Backgrounds"
@@ -2643,7 +2850,7 @@ msgstr "Servidor de fondo"
#: actions/pathsadminpanel.php:309
msgid "Background path"
-msgstr ""
+msgstr "Ruta del fondo"
#: actions/pathsadminpanel.php:313
msgid "Background directory"
@@ -2682,9 +2889,8 @@ msgid "Server to direct SSL requests to"
msgstr "Servidor hacia el cual dirigir las solicitudes SSL"
#: actions/pathsadminpanel.php:352
-#, fuzzy
msgid "Save paths"
-msgstr "Aviso de sitio"
+msgstr "Guardar rutas"
#: actions/peoplesearch.php:52
#, php-format
@@ -2699,24 +2905,25 @@ msgstr ""
msgid "People search"
msgstr "Buscador de gente"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "No es una etiqueta válida para personas: %s"
+msgid "Not a valid people tag: %s."
+msgstr "No es una etiqueta válida para personas: %s."
-#: actions/peopletag.php:144
-#, fuzzy, php-format
+#: actions/peopletag.php:142
+#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
-msgstr "Usuarios auto marcados con %s - página %d"
+msgstr "Usuarios auto etiquetados con %1$s - página %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "El contenido del aviso es inválido"
+msgid "Invalid notice content."
+msgstr "Contenido de aviso inválido."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
+"La licencia del aviso %1$s’ es incompatible con la licencia del sitio ‘%2$s’."
#: actions/profilesettings.php:60
msgid "Profile settings"
@@ -2738,42 +2945,43 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"1-64 letras en minúscula o números, sin signos de puntuación o espacios"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nombre completo"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Página de inicio"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "El URL de tu página de inicio, blog o perfil en otro sitio"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Descríbete y cuéntanos tus intereses en %d caracteres"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Descríbete y cuéntanos acerca de tus intereses"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografía"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Ubicación"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Dónde estás, por ejemplo \"Ciudad, Estado (o Región), País\""
@@ -2783,14 +2991,16 @@ msgstr "Compartir mi ubicación actual al publicar los mensajes"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
-msgstr "Tags"
+msgstr "Etiquetas"
#: actions/profilesettings.php:147
msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
-msgstr "Tags para ti (letras, números, -, ., y _), coma - o espacio - separado"
+msgstr ""
+"Etiquetas para ti (letras, números, -, ., y _), separadas por comas o "
+"espacios"
#: actions/profilesettings.php:151
msgid "Language"
@@ -2815,7 +3025,7 @@ msgstr ""
"Suscribirse automáticamente a quien quiera que se suscriba a mí (es mejor "
"para no-humanos)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "La biografía es muy larga (máx. %d caracteres)."
@@ -2856,8 +3066,8 @@ msgstr "Se guardó configuración."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Más allá del límite de páginas (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Más allá del límite de páginas (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2873,19 +3083,16 @@ msgid "Public timeline"
msgstr "Línea temporal pública"
#: actions/public.php:160
-#, fuzzy
msgid "Public Stream Feed (RSS 1.0)"
-msgstr "Feed del flujo público"
+msgstr "Canal público (RSS 1.0)"
#: actions/public.php:164
-#, fuzzy
msgid "Public Stream Feed (RSS 2.0)"
-msgstr "Feed del flujo público"
+msgstr "Canal público (RSS 2.0)"
#: actions/public.php:168
-#, fuzzy
msgid "Public Stream Feed (Atom)"
-msgstr "Feed del flujo público"
+msgstr "Canal público (Atom)"
#: actions/public.php:188
#, php-format
@@ -2905,6 +3112,8 @@ msgstr "¡Sé la primera persona en publicar algo!"
msgid ""
"Why not [register an account](%%action.register%%) and be the first to post!"
msgstr ""
+"¿Por qué no [registras una cuenta](%%action.register%%) y te conviertes en "
+"la primera persona en publicar?"
#: actions/public.php:242
#, php-format
@@ -2914,16 +3123,22 @@ msgid ""
"tool. [Join now](%%action.register%%) to share notices about yourself with "
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
+"Este es %%site.name%%, un servicio de [microblogueo](http://es.wikipedia."
+"org/wiki/Microblogging) basada en la herramienta de software libre "
+"[StatusNet](http://status.net/) tool. ¡[Regístrate](%%action.register%%) "
+"para compartir notas acerca de tí con tus amistades, familiares y "
+"compañeros!! ([Más información](%%doc.help%%))"
#: actions/public.php:247
-#, fuzzy, php-format
+#, php-format
msgid ""
"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
-"Es un %%site.name%%, un servicio [micro-blogging](http://en.wikipedia.org/"
-"wiki/Micro-blogging) "
+"Este es %%site.name%%, un servicio de [microblogueo](http://es.wikipedia."
+"org/wiki/Microblogging) basada en la herramienta de software libre "
+"[StatusNet](http://status.net/) tool."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
@@ -2932,12 +3147,13 @@ msgstr "Nube de etiquetas pública"
#: actions/publictagcloud.php:63
#, php-format
msgid "These are most popular recent tags on %s "
-msgstr "Éstos son los tags recientes más populares en %s"
+msgstr "Estas son las etiquetas recientes más populares en %s "
#: actions/publictagcloud.php:69
#, php-format
msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
msgstr ""
+"Aún nadie ha publicado un aviso con una [etiqueta clave] (%%doc.tags%%)"
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
@@ -2954,7 +3170,7 @@ msgstr ""
#: actions/publictagcloud.php:134
msgid "Tag cloud"
-msgstr "Nube de tags"
+msgstr "Nube de etiquetas"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
@@ -2991,6 +3207,8 @@ msgid ""
"If you have forgotten or lost your password, you can get a new one sent to "
"the email address you have stored in your account."
msgstr ""
+"Si has olvidado tu contraseña, podemos enviarte una nueva a la dirección de "
+"correo electrónico que has registrado en tu cuenta."
#: actions/recoverpassword.php:158
msgid "You have been identified. Enter a new password below. "
@@ -3024,7 +3242,7 @@ msgstr "Restablecer contraseña"
msgid "Recover password"
msgstr "Recuperar contraseña"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Recuperación de contraseña solicitada"
@@ -3042,21 +3260,21 @@ msgstr "Restablecer"
#: actions/recoverpassword.php:252
msgid "Enter a nickname or email address."
-msgstr "Ingresa un apodo o correo electronico"
+msgstr "Ingresa un nombre de usuario o correo electronico"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "No hay ningún usuario con esa dirección de correo o nombre de usuario."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ninguna dirección de correo electrónico registrada por este usuario."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Error al guardar confirmación de la dirección."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3064,109 +3282,130 @@ msgstr ""
"Se enviaron instrucciones para recuperar tu contraseña a la dirección de "
"correo registrada."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Restablecimiento de contraseña inesperado."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "La contraseña debe tener 6 o más caracteres."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "La contraseña y la confirmación no coinciden."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Error al configurar el usuario."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nueva contraseña guardada correctamente. Has iniciado una sesión."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Disculpa, sólo personas invitadas pueden registrarse."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "El código de invitación no es válido."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registro exitoso."
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrarse"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registro de usuario no permitido."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "No puedes registrarte si no estás de acuerdo con la licencia."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "La dirección de correo electrónico ya existe."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Usuario o contraseña inválidos."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
+"Con este formulario puedes crear una nueva cuenta. Después podrás publicar "
+"avisos y enviar vínculos de ellos a tus amigos y colegas. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 letras en minúscula o números, sin signos de puntuación o espacios. "
"Requerido."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 o más caracters. Requerido."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Igual a la contraseña de arriba. Requerida"
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Correo electrónico"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Se usa sólo para actualizaciones, anuncios y recuperación de contraseñas"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nombre más largo, preferiblemente tu nombre \"real\""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mi texto y archivos están disponibles bajo"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Entiendo que el contenido y los datos de %1$s son privados y confidenciales."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
+"Mi texto y archivos est'an protegidos por los derecho de autor de %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Mi texto y archivos permanecen bajo mi propio derecho de autor."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Todos los derechos reservados."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-"con excepción de esta información privada: contraseña, dirección de correo "
-"electrónico, dirección de mensajería instantánea y número de teléfono."
+"Mi texto y archivos están disponibles bajo %s con excepción de esta "
+"información privada: contraseña, dirección de correo electrónico, dirección "
+"de mensajería instantánea y número de teléfono."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3199,7 +3438,7 @@ msgstr ""
"\n"
"¡Gracias por apuntarte! Esperamos que disfrutes usando este servicio."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3244,7 +3483,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "El URL de tu perfil en otro servicio de microblogueo compatible"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Suscribirse"
@@ -3282,7 +3521,7 @@ msgstr "No puedes repetir tus propios mensajes."
msgid "You already repeated that notice."
msgstr "Ya has repetido este mensaje."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repetido"
@@ -3302,14 +3541,14 @@ msgid "Replies to %1$s, page %2$d"
msgstr "Respuestas a %1$s, página %2$d"
#: actions/replies.php:145
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 1.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de respuestas a %s (RSS 1.0)"
#: actions/replies.php:152
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 2.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de respuestas a %s (RSS 2.0)"
#: actions/replies.php:159
#, php-format
@@ -3320,8 +3559,10 @@ msgstr "Feed de avisos de %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
+"Esta es la línea temporal que muestra las respuestas a a %1$s, pero %2$s aún "
+"no ha recibido ningún aviso."
#: actions/replies.php:204
#, php-format
@@ -3329,13 +3570,17 @@ msgid ""
"You can engage other users in a conversation, subscribe to more people or "
"[join groups](%%action.groups%%)."
msgstr ""
+"Puedes introducir a otros usuarios en conversaciones, suscribir a más gente "
+"o [unirte a grupos](%%action.groups%%)."
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
+"Puedes intentar [zarandear a %1$s](../%2$s) o [publicar algo a ellos](%%%%"
+"action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3343,32 +3588,28 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Respuestas a %1$s en %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "No puedes enviar mensaje a este usuario."
+msgstr "No puedes revocar funciones de usuario en este sitio."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Usuario sin perfil coincidente."
+msgstr "El usuario no tiene esta función."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65
-#, fuzzy
msgid "You cannot sandbox users on this site."
-msgstr "No puedes enviar mensaje a este usuario."
+msgstr "No puedes imponer restricciones a los usuarios en este sitio."
#: actions/sandbox.php:72
-#, fuzzy
msgid "User is already sandboxed."
-msgstr "El usuario te ha bloqueado."
+msgstr "Al usuario ya se le ha impuesto restricciones."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sesiones"
@@ -3382,15 +3623,15 @@ msgstr "Gestionar sesiones"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
-msgstr ""
+msgstr "Si manejamos las sesiones nosotros mismos."
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
-msgstr ""
+msgstr "Depuración de sesión"
#: actions/sessionsadminpanel.php:183
msgid "Turn on debugging output for sessions."
-msgstr ""
+msgstr "Activar la salida de depuración para sesiones."
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
#: actions/useradminpanel.php:294
@@ -3398,41 +3639,44 @@ msgid "Save site settings"
msgstr "Guardar la configuración del sitio"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "Debes estar conectado para dejar un grupo."
+msgstr "Tienes que haber iniciado sesión para poder ver aplicaciones."
#: actions/showapplication.php:157
msgid "Application profile"
msgstr "Perfil de la aplicación"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Icono"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nombre"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organización"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Descripción"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Estadísticas"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "Creado por %1$s - acceso predeterminado %2$s - %3$d usuarios"
#: actions/showapplication.php:213
msgid "Application actions"
@@ -3440,7 +3684,7 @@ msgstr "Acciones de la aplicación"
#: actions/showapplication.php:236
msgid "Reset key & secret"
-msgstr ""
+msgstr "Reiniciar clave y secreto"
#: actions/showapplication.php:261
msgid "Application info"
@@ -3448,11 +3692,11 @@ msgstr "Información de la aplicación"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Clave del consumidor"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Secreto del consumidor"
#: actions/showapplication.php:273
msgid "Request token URL"
@@ -3471,16 +3715,17 @@ msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method."
msgstr ""
+"Nota: Nuestro sistema sólo es compatible con firmas HMAC-SHA1. No son "
+"compatibles las firmas de texto sin formato."
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "¿Estás seguro de que quieres eliminar este aviso?"
+msgstr "¿realmente deseas reiniciar tu clave y secreto de consumidor?"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "Avisos favoritos de %s"
+msgstr "Avisos favoritos de %1$s, página %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3489,42 +3734,49 @@ msgstr "No se pudo recibir avisos favoritos."
#: actions/showfavorites.php:171
#, php-format
msgid "Feed for favorites of %s (RSS 1.0)"
-msgstr "Feed de los amigos de %s"
+msgstr "Canal de las amistades de %s (RSS 1.0)"
#: actions/showfavorites.php:178
#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr "Feed de los amigos de %s"
+msgstr "Canal de las amistades de %s (RSS 2.0)"
#: actions/showfavorites.php:185
#, php-format
msgid "Feed for favorites of %s (Atom)"
-msgstr "Feed de los amigos de %s"
+msgstr "Canal de las amistades de %s (Atom)"
#: actions/showfavorites.php:206
msgid ""
"You haven't chosen any favorite notices yet. Click the fave button on "
"notices you like to bookmark them for later or shed a spotlight on them."
msgstr ""
+"Aún no has elegido ningún aviso. Haz click sobre el botón \"favoritos\" en "
+"los avisos que quieras para ponerles un marcador o resaltarlos."
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
+"%s aún no ha agregado ningún aviso a sus favoritos. Publica algo interesante "
+"que pueda añadir a sus favoritos :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%s aún no ha añadido ningún aviso a sus favoritos. Por qué no [registras una "
+"cuenta] (%%%%action.register%%%%) y publicas algo interesante que puedan "
+"añadir a sus favoritos :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
-msgstr ""
+msgstr "Esta es una manera de compartir lo que te gusta."
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
@@ -3532,72 +3784,71 @@ msgid "%s group"
msgstr "Grupo %s"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "Miembros del grupo %s, página %d"
+msgstr "grupo %1$s, página %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Perfil del grupo"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Nota"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Alias"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Acciones del grupo"
-#: actions/showgroup.php:337
-#, fuzzy, php-format
+#: actions/showgroup.php:338
+#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr "Feed de avisos de grupo %s"
+msgstr "Canal de avisos del grupo %s (RSS 1.0)"
-#: actions/showgroup.php:343
-#, fuzzy, php-format
+#: actions/showgroup.php:344
+#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr "Feed de avisos de grupo %s"
+msgstr "Canal de avisos del grupo %s (RSS 2.0)"
-#: actions/showgroup.php:349
-#, fuzzy, php-format
+#: actions/showgroup.php:350
+#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr "Feed de avisos de grupo %s"
+msgstr "Canal de avisos del grupo %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
-msgstr "Bandeja de salida para %s"
+msgstr "Amistades de amistades del grupo %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
-#, fuzzy
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Miembros"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Ninguno)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Todos los miembros"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Creado"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3606,19 +3857,27 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** es un grupo de usuarios en %%%%site.name%%%%, un servicio de "
+"[microblogueo](http://es.wikipedia.org/wiki/Microblogging) basado en la "
+"herramienta de software libre [StatusNet](http://status.net/). Sus miembros "
+"comparten mensajes cortos acerca de sus vida e intereses. ¡[Regístrate](%%%%"
+"action.register%%%%) para formar parte de este y muchos más grupos! ([Más "
+"información](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
-#, fuzzy, php-format
+#: actions/showgroup.php:461
+#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
msgstr ""
-"**%s** es un grupo de usuarios en %%%%site.name%%%%, un servicio [micro-"
-"blogging](http://en.wikipedia.org/wiki/Micro-blogging) "
+"**%s** es un grupo de usuarios en %%%%site.name%%%%, un servicio de "
+"[microblogueo](http://es.wikipedia.org/wiki/Microblogging) basado en la "
+"herramienta de software libre [StatusNet](http://status.net/). Sus miembros "
+"comparten mensajes cortos acerca de su vida e intereses. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administradores"
@@ -3655,47 +3914,51 @@ msgid "%1$s, page %2$d"
msgstr "%1$s, página %2$d"
#: actions/showstream.php:122
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr "Feed de avisos de grupo %s"
+msgstr "Canal de avisos de %1$s etiquetados %2$s (RSS 1.0)"
#: actions/showstream.php:129
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (RSS 1.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de mensajes para %s (RSS 1.0)"
#: actions/showstream.php:136
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (RSS 2.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de mensajes para %s (RSS 2.0)"
#: actions/showstream.php:143
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %s (Atom)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de mensajes para %s (Atom)"
#: actions/showstream.php:148
-#, fuzzy, php-format
+#, php-format
msgid "FOAF for %s"
-msgstr "Bandeja de salida para %s"
+msgstr "Amistades de amistades de %s"
#: actions/showstream.php:200
#, php-format
msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
-msgstr ""
+msgstr "Esta es la línea temporal de %1$s, pero %2$s aún no ha publicado nada."
#: actions/showstream.php:205
msgid ""
"Seen anything interesting recently? You haven't posted any notices yet, now "
"would be a good time to start :)"
msgstr ""
+"¿Has visto algo interesante recientemente? Aún no has hecho ninguna "
+"publicación, así que este puede ser un buen momento para empezar :)"
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
+"Puedes intentar zarandear a %1$s o [publicar algo a ellos](%%%%action."
+"newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3705,6 +3968,11 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** tiene una cuenta en %%%%site.name%%%%, un servicio de [microblogueo]"
+"(http://es.wikipedia.org/wiki/Microblogging) basado en la herramienta de "
+"software libre [StatusNet](http://status.net/). ¡[Regístrate](%%%%action."
+"register%%%%) para seguir los avisos de **%s** y de muchas personas más! "
+"([Más información](%%%%doc.help%%%%))"
#: actions/showstream.php:248
#, php-format
@@ -3723,28 +3991,24 @@ msgid "Repeat of %s"
msgstr "Repetición de %s"
#: actions/silence.php:65 actions/unsilence.php:65
-#, fuzzy
msgid "You cannot silence users on this site."
-msgstr "No puedes enviar mensaje a este usuario."
+msgstr "No puedes silenciar a otros usuarios en este sitio."
#: actions/silence.php:72
-#, fuzzy
msgid "User is already silenced."
-msgstr "El usuario te ha bloqueado."
+msgstr "El usuario ya ha sido silenciado."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
msgstr "Configuración básica de este sitio StatusNet."
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
-msgstr ""
+msgstr "El nombre del sitio debe tener longitud diferente de cero."
#: actions/siteadminpanel.php:141
-#, fuzzy
msgid "You must have a valid contact email address."
-msgstr "No es una dirección de correo electrónico válida"
+msgstr "Debes tener una dirección de correo electrónico válida."
#: actions/siteadminpanel.php:159
#, php-format
@@ -3752,12 +4016,12 @@ msgid "Unknown language \"%s\"."
msgstr "Idioma desconocido \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr ""
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "El límite mínimo de texto es 0 (sin límite)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr ""
+msgid "Dupe limit must be one or more seconds."
+msgstr "El límite de duplicación debe ser de 1 o más segundos."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3769,33 +4033,31 @@ msgstr "Nombre del sitio"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr ""
+msgstr "El nombre de tu sitio, por ejemplo, \"Microblog tucompañía\""
#: actions/siteadminpanel.php:229
msgid "Brought by"
-msgstr ""
+msgstr "Traído por"
#: actions/siteadminpanel.php:230
msgid "Text used for credits link in footer of each page"
-msgstr ""
+msgstr "Texto utilizado para los vínculos a créditos en el pie de cada página"
#: actions/siteadminpanel.php:234
msgid "Brought by URL"
-msgstr ""
+msgstr "Traído por URL"
#: actions/siteadminpanel.php:235
msgid "URL used for credits link in footer of each page"
-msgstr ""
+msgstr "URL utilizado para el vínculo a los créditos en el pie de cada página"
#: actions/siteadminpanel.php:239
-#, fuzzy
msgid "Contact email address for your site"
-msgstr "Nueva dirección de correo para postear a %s"
+msgstr "Correo electrónico de contacto para tu sitio"
#: actions/siteadminpanel.php:245
-#, fuzzy
msgid "Local"
-msgstr "Vistas locales"
+msgstr "Configuraciones regionales"
#: actions/siteadminpanel.php:256
msgid "Default timezone"
@@ -3806,13 +4068,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Zona horaria predeterminada del sitio; generalmente UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Idioma predeterminado del sitio"
+msgstr "!Idioma predeterminado"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Idioma del sitio cuando la autodetección de la configuración del navegador "
+"no está disponible"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3828,84 +4091,110 @@ msgstr "Cantidad máxima de caracteres para los mensajes."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
-msgstr ""
+msgstr "Límite de duplicados"
#: actions/siteadminpanel.php:278
msgid "How long users must wait (in seconds) to post the same thing again."
msgstr "Cuántos segundos es necesario esperar para publicar lo mismo de nuevo."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Aviso de sitio"
+msgstr "Aviso del sitio"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nuevo Mensaje "
+msgstr "Editar el mensaje que va a lo ancho del sitio"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "No se pudo grabar tu configuración de diseño."
+msgstr "No se pudo guarda el aviso del sitio."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
+"La longitud máxima para el aviso que va a lo ancho del sitio es de 255 "
+"caracteres."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Aviso de sitio"
+msgstr "Texto del aviso del sitio"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
+"Texto del aviso que va a lo ancho del sitio (máximo 255 caracteres; se "
+"acepta HTML)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Aviso de sitio"
+msgstr "Guardar el aviso del sitio"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Configuración de SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"Puedes recibir mensajes SMS por correo electrónico desde %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS no está disponible."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Dirección de SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Actual número telefónico para SMS confirmado."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Esperando confirmación de este número de teléfono."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Código de confirmación"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Ingrese el código recibido en su teléfono"
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Número de teléfono de SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Número telefónico, sin puntuación ni espacios, incluya código de área"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferencias de SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3913,49 +4202,75 @@ msgstr ""
"Enviarme avisos por SMS; Yo acepto que puede incurrir en grandes cobros por "
"mi operador móvil"
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Preferencias de SMS guardadas."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Sin número telefónico"
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "No se seleccionó un operador móvil."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Ese ya es tu número telefónico"
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Ese número telefónico ya pertenece a otro usuario"
-#: actions/smssettings.php:347
-#, fuzzy
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-"Un código de confirmación fue enviado al número de teléfono que agregaste. "
-"Revisa tu bandeja de entrada (¡y la de spam!) para encontrar el código y las "
-"instrucciones sobre cómo usarlo."
+"Se ha enviado un código de confirmación al número de teléfono que agregaste. "
+"Revisa tu teléfono para encontrar el código y las instrucciones acerca de "
+"cómo usarlo."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Ese no es el número de confirmación"
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Confirmación de SMS cancelada."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Ese no es tu número telefónico"
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "El número de teléfono para SMS ha sido eliminado."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operador de telefonía móvil"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Seleccione un operador móvil"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3965,24 +4280,24 @@ msgstr ""
"sobre correo electrónico pero no está listado aquí, envíanos un correo para "
"informarnos al %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "No ingresó código"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Capturas"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Cambiar la configuración del sitio"
+msgstr "Administrar la configuración de instantáneas"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
-msgstr ""
+msgstr "Valor de ejecución de instantánea inválido"
#: actions/snapshotadminpanel.php:133
msgid "Snapshot frequency must be a number."
@@ -3990,11 +4305,11 @@ msgstr "La frecuencia de captura debe ser un número."
#: actions/snapshotadminpanel.php:144
msgid "Invalid snapshot report URL."
-msgstr ""
+msgstr "URL de instantánea de reporte inválido"
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr ""
+msgid "Randomly during web hit"
+msgstr "Aleatoriamente durante visita Web"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
@@ -4006,7 +4321,7 @@ msgstr "Capturas de datos"
#: actions/snapshotadminpanel.php:208
msgid "When to send statistical data to status.net servers"
-msgstr ""
+msgstr "Cuándo enviar datos estadísticos a los servidores status.net"
#: actions/snapshotadminpanel.php:217
msgid "Frequency"
@@ -4014,43 +4329,40 @@ msgstr "Frecuencia"
#: actions/snapshotadminpanel.php:218
msgid "Snapshots will be sent once every N web hits"
-msgstr ""
+msgstr "Las instantáneas se enviarán una vez cada N visitas Web"
#: actions/snapshotadminpanel.php:226
msgid "Report URL"
-msgstr ""
+msgstr "Reportar URL"
#: actions/snapshotadminpanel.php:227
msgid "Snapshots will be sent to this URL"
msgstr "Las capturas se enviarán a este URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Guardar la configuración del sitio"
+msgstr "Guardar la configuración de instantáneas"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "No te has suscrito a ese perfil."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "No se ha podido guardar la suscripción."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "Esta acción sólo acepta solicitudes POST."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "No existe tal archivo."
+msgstr "No existe tal perfil."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "No te has suscrito a ese perfil."
+msgstr "No puedes suscribirte a un perfil remoto 0.1 de OMB con esta acción."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4062,9 +4374,9 @@ msgid "%s subscribers"
msgstr "%s suscriptores"
#: actions/subscribers.php:52
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscribers, page %2$d"
-msgstr "Suscriptores, página %d"
+msgstr "%1$s suscriptores, página %2$d"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
@@ -4080,11 +4392,14 @@ msgid ""
"You have no subscribers. Try subscribing to people you know and they might "
"return the favor"
msgstr ""
+"No tienes suscriptores. Intenta suscribirte a gente que conozcas y puede que "
+"te devuelvan el favor"
#: actions/subscribers.php:110
#, php-format
msgid "%s has no subscribers. Want to be the first?"
msgstr ""
+"%s no tiene suscriptores. ¿Quieres se la primera persona que se suscriba?"
#: actions/subscribers.php:114
#, php-format
@@ -4092,6 +4407,8 @@ msgid ""
"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
"%) and be the first?"
msgstr ""
+"%s no tiene suscriptores. ¿Por qué no [registrar una cuenta](%%%%action."
+"register%%%%) y ser la primera persona?"
#: actions/subscriptions.php:52
#, php-format
@@ -4099,9 +4416,9 @@ msgid "%s subscriptions"
msgstr "Suscripciones %s"
#: actions/subscriptions.php:54
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscriptions, page %2$d"
-msgstr "%s suscripciones, página %d"
+msgstr "%1$s suscrippciones, página %2$d"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
@@ -4121,69 +4438,74 @@ msgid ""
"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
"automatically subscribe to people you already follow there."
msgstr ""
+"Ahora mismo no estás escuchando los avisos de nadie. Intenta suscribirte a "
+"gente que conozcas. Puedes [buscar gente](%%action.peoplesearch%%); busca "
+"miembros de grupos que te intereses y entre nuestros [usuarios especiales](%%"
+"action.featured%%). Si eres [usuario de Twitter](%%action.twittersettings%"
+"%), puedes suscribirte automáticamente a las personas que ya sigues allí."
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
msgstr "%s no está escuchando a nadie."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
#: actions/tag.php:69
-#, fuzzy, php-format
+#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr "Usuarios auto marcados con %s - página %d"
+msgstr "Avisos etiquetados con %1$s, página %2$d"
#: actions/tag.php:87
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (RSS 1.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de avisos con etiqueta %s (RSS 1.0)"
#: actions/tag.php:93
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (RSS 2.0)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de avisos con etiqueta %s (RSS 2.0)"
#: actions/tag.php:99
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (Atom)"
-msgstr "Feed de avisos de %s"
+msgstr "Canal de avisos con etiqueta %s (Atom)"
#: actions/tagother.php:39
-#, fuzzy
msgid "No ID argument."
msgstr "No existe argumento de ID."
#: actions/tagother.php:65
#, php-format
msgid "Tag %s"
-msgstr "%s tag"
+msgstr "%s etiqueta"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Perfil de usuario"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
#: actions/tagother.php:141
msgid "Tag user"
-msgstr "Usuario de tag"
+msgstr "Etiquetar usuario"
#: actions/tagother.php:151
msgid ""
"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
"separated"
msgstr ""
-"Tags de este usuario (letras, números, -, ., y _), coma- o espacio- separado"
+"Etiquetas para este usuario (letras, números, -, ., y _), separadas por "
+"comas o espacios"
#: actions/tagother.php:193
msgid ""
@@ -4199,33 +4521,28 @@ msgstr "No se han podido guardar las etiquetas."
#: actions/tagother.php:236
msgid "Use this form to add tags to your subscribers or subscriptions."
msgstr ""
-"Usar este formulario para agregar tags a tus suscriptores o suscripciones."
+"Usa este formulario para agregar etiquetas a tus suscriptores o "
+"suscripciones."
#: actions/tagrss.php:35
msgid "No such tag."
-msgstr "No existe ese tag."
-
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Método API en construcción."
+msgstr "No existe tal etiqueta."
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "No has bloqueado ese usuario."
#: actions/unsandbox.php:72
-#, fuzzy
msgid "User is not sandboxed."
-msgstr "El usuario te ha bloqueado."
+msgstr "Al usuario no se le ha impuesto restricciones."
#: actions/unsilence.php:72
-#, fuzzy
msgid "User is not silenced."
-msgstr "El usuario no tiene un perfil."
+msgstr "El usuario no ha sido silenciado."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "No hay id de perfil solicitado."
+msgid "No profile ID in request."
+msgstr "No hay id de perfil en solicitud."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4236,10 +4553,11 @@ msgstr "Desuscrito"
msgid ""
"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
+"Licencia de flujo del emisor ‘%1$s’ es incompatible con la licencia del "
+"sitio ‘%2$s’."
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Usuario"
@@ -4261,7 +4579,8 @@ msgstr "Texto de bienvenida inválido. La longitud máx. es de 255 caracteres."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Suscripción predeterminada inválida : '%1$s' no es un usuario"
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Perfil"
@@ -4304,7 +4623,7 @@ msgstr "Invitaciones habilitadas"
#: actions/useradminpanel.php:258
msgid "Whether to allow users to invite new users."
-msgstr ""
+msgstr "Si permitir a los usuarios invitar nuevos usuarios."
#: actions/userauthorization.php:105
msgid "Authorize subscription"
@@ -4320,7 +4639,7 @@ msgstr ""
"avisos de este usuario. Si no pediste suscribirte a los avisos de alguien, "
"haz clic en \"Cancelar\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licencia"
@@ -4350,65 +4669,63 @@ msgid "Subscription authorized"
msgstr "Suscripción autorizada"
#: actions/userauthorization.php:256
-#, fuzzy
msgid ""
"The subscription has been authorized, but no callback URL was passed. Check "
"with the site’s instructions for details on how to authorize the "
"subscription. Your subscription token is:"
msgstr ""
-"Se ha autorizado la suscripción, pero no se ha enviado un URL de retorno. "
-"Lee de nuevo las instrucciones para saber cómo autorizar la suscripción. Tu "
-"identificador de suscripción es:"
+"La suscripción ha sido autorizada, pero no se ha pasado un URL de retorno. "
+"Consulte con las instrucciones del sitio para obtener detalles acerca de "
+"cómo autorizar la suscripción. Tu token de suscripción es:"
#: actions/userauthorization.php:266
msgid "Subscription rejected"
msgstr "Suscripción rechazada"
#: actions/userauthorization.php:268
-#, fuzzy
msgid ""
"The subscription has been rejected, but no callback URL was passed. Check "
"with the site’s instructions for details on how to fully reject the "
"subscription."
msgstr ""
-"Se ha rechazado la suscripción, pero no se ha enviado un URL de retorno. Lee "
+"!Se ha rechazado la suscripción, pero no se ha pasado un URL de retorno. Lee "
"de nuevo las instrucciones para saber cómo rechazar la suscripción "
"completamente."
#: actions/userauthorization.php:303
#, php-format
msgid "Listener URI ‘%s’ not found here."
-msgstr ""
+msgstr "No se ha encontrado aquí el URI del oyente ‘%s’."
#: actions/userauthorization.php:308
#, php-format
msgid "Listenee URI ‘%s’ is too long."
-msgstr ""
+msgstr "El URI ‘%s’ del receptor es muy largo."
#: actions/userauthorization.php:314
#, php-format
msgid "Listenee URI ‘%s’ is a local user."
-msgstr ""
+msgstr "El URI ‘%s’ del receptor es un usuario local."
#: actions/userauthorization.php:329
#, php-format
msgid "Profile URL ‘%s’ is for a local user."
-msgstr ""
+msgstr "El URL ‘%s’ de perfil es para un usuario local."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "La URL ‘%s’ de la imagen no es válida."
#: actions/userauthorization.php:350
-#, fuzzy, php-format
+#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr "No se puede leer el URL del avatar '%s'"
+msgstr "No se puede leer la URL de la imagen ‘%s’."
#: actions/userauthorization.php:355
-#, fuzzy, php-format
+#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr "Tipo de imagen incorrecto para '%s'"
+msgstr "Tipo de imagen incorrecto para la URL de imagen ‘%s’."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
@@ -4419,42 +4736,50 @@ msgid ""
"Customize the way your profile looks with a background image and a colour "
"palette of your choice."
msgstr ""
+"Personaliza la vista de tu perfil con una imagen de fondo y la paelta de "
+"colores que quieras."
#: actions/userdesignsettings.php:282
msgid "Enjoy your hotdog!"
-msgstr ""
+msgstr "¡Disfruta de tu perrito caliente!"
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "Miembros del grupo %s, página %d"
+msgstr "%1$s grupos, página %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Buscar más grupos"
-#: actions/usergroups.php:157
-#, fuzzy, php-format
+#: actions/usergroups.php:159
+#, php-format
msgid "%s is not a member of any group."
-msgstr "No eres miembro de ese grupo"
+msgstr "%s no es miembro de ningún grupo."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
-msgstr ""
+msgstr "Intenta [buscar gupos](%%action.groupsearch%%) y unirte a ellos."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "¡Actualizaciones de %1$s en %2$s!"
-#: actions/version.php:73
-#, fuzzy, php-format
+#: actions/version.php:75
+#, php-format
msgid "StatusNet %s"
-msgstr "Estadísticas"
+msgstr "%s StatusNet"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4463,433 +4788,546 @@ msgstr ""
"Este sitio ha sido desarrollado con %1$s, versión %2$s, Derechos Reservados "
"2008-2010 StatusNet, Inc. y sus colaboradores."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Colaboradores"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
"Software Foundation, either version 3 of the License, or (at your option) "
"any later version. "
msgstr ""
+"Freecol es software libre: Puedes redistribuirlo y/o modificarlo bajo los "
+"términos de la Licencia Pública General de Affero AGPL tal y como se ha "
+"publicado por la Fundación del Software Libre, bien por la versión 3 de la "
+"Licencia, o cualquier versión posterior (la de tu elección). "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"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. "
msgstr ""
+"Este programa se distribuye con la esperanza de que sea útil, pero SIN "
+"NINGUNA GARANTÃA, incluso sin la garantía implícita de COMERCIALIZACIÓN o "
+"IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Consulte la Licencia Pública General "
+"de Affero AGPL para más detalles. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
+"Debes haber recibido una copia de la Licencia Pública General de Affero GNU "
+"con este programa. Si no la recibiste, visita %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Complementos"
-#: actions/version.php:196 lib/action.php:767
-#, fuzzy
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
-msgstr "Sesiones"
+msgstr "Versión"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autor(es)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "No se puede procesar URL '%s'"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr " Robin piensa que algo es imposible."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
+"Ningún archivopuede ser de tamaño mayor a %1$d bytes y el archivo que "
+"enviaste es de %2$d bytes. Trata de subir una versión más pequeña."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
+"Un archivo tan grande podría sobrepasar tu cuota de usuario de %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
-msgstr ""
+msgstr "Un archivo tan grande podría sobrepasar tu cuota mensual de %d bytes."
-#: classes/Group_member.php:41
-#, fuzzy
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nombre de archivo inválido."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
-msgstr "Perfil de grupo"
+msgstr "Ha fallado la acción de unirse el grupo"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "No es parte del grupo."
-#: classes/Group_member.php:60
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
-msgstr "Perfil de grupo"
+msgstr "Ha fallado la acción de abandonar el grupo"
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "No se pudo actualizar el grupo."
+msgstr "No se pudo actualizar el grupo local."
-#: classes/Login_token.php:76
-#, fuzzy, php-format
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
msgid "Could not create login token for %s"
-msgstr "No se pudo crear favorito."
+msgstr "No se pudo crear el token de acceso para %s"
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Ningún nombre de base de datos o DSN encontrado."
-#: classes/Message.php:45
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Se te ha inhabilitado para enviar mensajes directos."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "No se pudo insertar mensaje."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "No se pudo actualizar mensaje con nuevo URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "No existe tal perfil (%1$d) para notificar (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Error de la BD al insertar la etiqueta clave: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Ha habido un problema al guardar el mensaje. Es muy largo."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Ha habido un problema al guardar el mensaje. Usuario desconocido."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Demasiados avisos demasiado rápido; para y publicar nuevamente en unos "
"minutos."
-#: classes/Notice.php:256
-#, fuzzy
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-"Demasiados avisos demasiado rápido; para y publicar nuevamente en unos "
-"minutos."
+"Muchos mensajes, enviados muy rápido; espera un poco e intenta publicar "
+"pasados unos minutos."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Tienes prohibido publicar avisos en este sitio."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Hubo un problema al guardar el aviso."
-#: classes/Notice.php:927
-#, fuzzy
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Mal tipo proveído a saveKnownGroups"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr "Hubo un problema al guardar el aviso."
+msgstr "Hubo un problema al guarda la bandeja de entrada del grupo."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr "No se puede revocar rol \"%1$s\" para usuario #%2$d; no existe."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"No se puede revocar rol \"%1$s\" para usuario #%2$d; error de base de datos."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Perfil ausente."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Incapaz de grabar etiqueta."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Se te ha prohibido la suscripción."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
-msgstr ""
+msgstr "¡Ya te has suscrito!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "El usuario te ha bloqueado."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "¡No estás suscrito!"
-#: classes/Subscription.php:163
-#, fuzzy
-msgid "Couldn't delete self-subscription."
-msgstr "No se pudo eliminar la suscripción."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "No se pudo eliminar la auto-suscripción."
-#: classes/Subscription.php:190
-#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "No se pudo eliminar la suscripción."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "No se pudo eliminar la ficha OMB de suscripción."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "No se pudo eliminar la suscripción."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Bienvenido a %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "No se pudo crear grupo."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "No se pudo configurar miembros de grupo."
+msgstr "No se pudo configurar el URI del grupo."
-#: classes/User_group.php:507
-#, fuzzy
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
-msgstr "No se pudo configurar miembros de grupo."
+msgstr "No se pudo configurar la membresía del grupo."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "No se ha podido guardar la suscripción."
+msgstr "No se ha podido guardar la información del grupo local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Cambia tus opciones de perfil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
-msgstr "Cargar un avatar."
+msgstr "Subir una imagen."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Cambia tu contraseña"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Cambiar el manejo del correo."
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Diseñar tu perfil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Otro"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Otras opciones"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Otro"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Página sin título"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navegación de sitio primario"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
-msgstr "Perfil personal y línea de tiempo de amigos"
+msgstr "Perfil personal y línea temporal de amistades"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Cambia tu correo electrónico, avatar, contraseña, perfil"
+msgstr "Cambia tu correo electrónico, imagen, contraseña, perfil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Conectar a los servicios"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Conectarse"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Cambiar la configuración del sitio"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Admin"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr "Invita a amigos y colegas a unirse a %s"
+msgstr "Invita a amistades y compañeros a unirse a tí en %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Invitar"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
-msgstr "Salir de sitio"
+msgstr "Cerrar sesión en el sitio"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
-msgstr "Salir"
+msgstr "Cerrar sesión"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Crear una cuenta"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrarse"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
-msgstr "Ingresar a sitio"
+msgstr "Iniciar sesión en el sitio"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Inicio de sesión"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
-msgstr "Ayúdame!"
+msgstr "¡Ayúdame!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Ayuda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Buscar personas o texto"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Buscar"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Aviso de sitio"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Vistas locales"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Aviso de página"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navegación de sitio secundario"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ayuda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Acerca de"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Preguntas Frecuentes"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
-msgstr ""
+msgstr "TOS"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacidad"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Fuente"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Ponerse en contacto"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Insignia"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licencia de software de StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-"**%%site.name%%** es un servicio de microblogueo de [%%site.broughtby%%**](%%"
-"site.broughtbyurl%%)."
+"**%%site.name%%** es un servicio de microblogueo traido a ti por cortesía de "
+"[%%site.broughtby%%**](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** es un servicio de microblogueo."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4900,235 +5338,283 @@ msgstr ""
"disponible bajo la [GNU Affero General Public License](http://www.fsf.org/"
"licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licencia de contenido del sitio"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
-msgstr ""
+msgstr "El contenido y datos de %1$s son privados y confidenciales."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
+"Copyright del contenido y los datos de%1$s. Todos los derechos reservados."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Derechos de autor de contenido y datos por los colaboradores. Todos los "
"derechos reservados."
-#: lib/action.php:847
-msgid "All "
-msgstr "Todo"
-
-#: lib/action.php:853
-msgid "license."
-msgstr "Licencia."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Todo el contenido%1$s y la información están disponibles bajo la licencia 2%"
+"$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginación"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Después"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Antes"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"A espera de un elemento de alimentación de raíz, pero se obtuvo un documento "
+"XML entero."
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "Aún no se puede manejar contenido remoto."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "Aún no se puede manejar contenido XML incrustado."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "Aún no se puede manejar contenido incrustado Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "No puedes hacer cambios a este sitio."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
-#, fuzzy
msgid "Changes to that panel are not allowed."
-msgstr "Registro de usuario no permitido."
+msgstr "No se permite realizar cambios a ese panel."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
-#, fuzzy
msgid "showForm() not implemented."
-msgstr "Todavía no se implementa comando."
+msgstr "showForm() no implementada."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
-#, fuzzy
msgid "saveSettings() not implemented."
-msgstr "Todavía no se implementa comando."
+msgstr "saveSettings() no implementada."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
-#, fuzzy
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
-msgstr "¡No se pudo guardar tu configuración de Twitter!"
+msgstr "No se puede eliminar la configuración de diseño."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuración básica del sitio"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Sitio"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuración del diseño"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Diseño"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Configuración de usuario"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Usuario"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Configuración de acceso"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
-#, fuzzy
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
-msgstr "SMS confirmación"
+msgstr "Configuración de rutas"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Configuración de sesiones"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Aviso de sitio"
+msgstr "Editar el aviso del sitio"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "SMS confirmación"
+msgstr "Configuración de instantáneas"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
+"API requiere acceso de lectura y escritura, pero sólo tienes acceso de "
+"lectura."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Editar aplicación"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Icono para esta aplicación"
-#: lib/applicationeditform.php:204
-#, fuzzy, php-format
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
msgid "Describe your application in %d characters"
-msgstr "Describir al grupo o tema en %d caracteres"
+msgstr "Describe tu aplicación en %d caracteres"
-#: lib/applicationeditform.php:207
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr "Describir al grupo o tema"
+msgstr "Describe tu aplicación"
-#: lib/applicationeditform.php:216
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr "URL de la página principal de esta aplicación"
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
msgid "Source URL"
msgstr "La URL de origen"
-#: lib/applicationeditform.php:218
-#, fuzzy
-msgid "URL of the homepage of this application"
-msgstr "El URL de página de inicio o blog del grupo or tema"
-
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organización responsable de esta aplicación"
-#: lib/applicationeditform.php:230
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr "El URL de página de inicio o blog del grupo or tema"
+msgstr "URL de la página principal de la organización"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "URL al que se redirigirá después de la autenticación"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Navegador"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Escritorio"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Tipo de aplicación, de navegador o de escritorio"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Solo lectura"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Solo escritura"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
+"Acceso predeterminado para esta aplicación: sólo lectura o lectura-escritura"
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lectura y escritura"
-#: lib/applicationlist.php:154
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "sólo lectura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprobado el %1$s - acceso \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Revocar"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
-msgstr ""
+msgstr "Adjuntos"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Proveedor"
@@ -5140,247 +5626,273 @@ msgstr "Mensajes donde aparece este adjunto"
msgid "Tags for this attachment"
msgstr "Etiquetas de este archivo adjunto"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "El cambio de contraseña ha fallado"
-#: lib/authenticationplugin.php:235
-#, fuzzy
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
-msgstr "Cambio de contraseña "
+msgstr "No está permitido cambiar la contraseña"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultados de comando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Comando completo"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Comando falló"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Disculpa, todavía no se implementa este comando."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "No existe ningún mensaje con ese id"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Usuario no tiene último aviso"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "No se pudo encontrar a nadie con el nombre de usuario %s"
-#: lib/command.php:92
-msgid "It does not make a lot of sense to nudge yourself!"
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
msgstr ""
+"No se pudo encontrar a ningún usuario local con el nombre de usuario %s"
-#: lib/command.php:99
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Disculpa, todavía no se implementa este comando."
+
+#: lib/command.php:225
+msgid "It does not make a lot of sense to nudge yourself!"
+msgstr "¡No tiene sentido darte un toque a ti mismo!"
+
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
-msgstr "zumbido enviado a %s"
+msgstr "Toque enviado a %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
"Subscribers: %2$s\n"
"Notices: %3$s"
msgstr ""
+"Suscripciones: %1$s\n"
+"Suscriptores: %2$s\n"
+"Avisos: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "No existe ningún mensaje con ese id"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Usuario no tiene último aviso"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Aviso marcado como favorito."
-#: lib/command.php:217
-#, fuzzy
+#: lib/command.php:323
msgid "You are already a member of that group"
-msgstr "Ya eres miembro de ese grupo"
+msgstr "Ya eres parte de ese grupo"
-#: lib/command.php:231
-#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
-msgstr "No se puede unir usuario %s a grupo %s"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s se unió a grupo %s"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "No se pudo eliminar a usuario %s de grupo %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "No se pudo unir el usuario %s al grupo %s"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s dejó grupo %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "No se pudo eliminar al usuario %1$s del grupo %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nombre completo: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Lugar: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Página de inicio: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Sobre: %s"
-#: lib/command.php:349
-#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Mensaje muy largo - máximo 140 caracteres, enviaste %d"
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s es un perfil remoto: sólo puedes enviarle mensajes directos a usuarios en "
+"el mismo servidor."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Mensaje muy largo - la cantidad máxima es de %1$d caracteres y has enviado %2"
+"$d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Se envió mensaje directo a %s"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Error al enviar mensaje directo."
-#: lib/command.php:413
-#, fuzzy
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
-msgstr "No se puede activar notificación."
+msgstr "No puedes repetir tu propio aviso"
-#: lib/command.php:418
-#, fuzzy
+#: lib/command.php:519
msgid "Already repeated that notice"
-msgstr "Borrar este aviso"
+msgstr "Ya has repetido este aviso"
-#: lib/command.php:426
-#, fuzzy, php-format
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
msgid "Notice from %s repeated"
-msgstr "Aviso publicado"
+msgstr "Aviso de %s repetido"
-#: lib/command.php:428
-#, fuzzy
+#: lib/command.php:531
msgid "Error repeating notice."
-msgstr "Hubo un problema al guardar el aviso."
+msgstr "Ha habido un error al repetir el aviso."
-#: lib/command.php:482
-#, fuzzy, php-format
+#: lib/command.php:562
+#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
-msgstr "Mensaje muy largo - máximo 140 caracteres, enviaste %d"
+msgstr "Mensaje muy largo - el máximo es de %d caracteres. Has enviado %d"
-#: lib/command.php:491
-#, fuzzy, php-format
+#: lib/command.php:571
+#, php-format
msgid "Reply to %s sent"
-msgstr "Responder este aviso."
+msgstr "Responder a %s enviados"
-#: lib/command.php:493
-#, fuzzy
+#: lib/command.php:573
msgid "Error saving notice."
-msgstr "Hubo un problema al guardar el aviso."
+msgstr "Error al guardar el aviso."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Especificar el nombre del usuario a suscribir"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "No existe ese usuario."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "No te puedes suscribir a perfiles de OMB por orden."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Suscrito a %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Especificar el nombre del usuario para desuscribirse de"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Desuscrito de %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Todavía no se implementa comando."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notificación no activa."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "No se puede desactivar notificación."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notificación activada."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "No se puede activar notificación."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
-msgstr ""
+msgstr "El comando de inicio de sesión está desactivado"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
+"Este enlace es utilizable solamente una vez y sólo válido por 2 minutos: %s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
msgstr "Desuscrito de %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "No estás suscrito a nadie."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ya estás suscrito a estos usuarios:"
msgstr[1] "Ya estás suscrito a estos usuarios:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Nadie está suscrito a ti."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "No se pudo suscribir otro a ti."
msgstr[1] "No se pudo suscribir otro a ti."
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "No eres miembro de ningún grupo"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Eres miembro de este grupo:"
msgstr[1] "Eres miembro de estos grupos:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5421,20 +5933,58 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
-
-#: lib/common.php:148
+"comandos:\n"
+"activar - activar notificaciones\n"
+"desactivar - desactivar notificaciones\n"
+"ayuda - mostrar esta ayuda\n"
+"seguir <usuario> - suscribirse al usuario\n"
+"grupos - listar los grupos que sigues\n"
+"suscripciones - listar las personas que sigues\n"
+"suscriptores - listar los grupos que te siguen\n"
+"abandonar <usuario> - cancelar la suscripción al usuario\n"
+"d <usuario> <text> - dirigir mensaje al usuario\n"
+"obtener <usuario> - obtener último aviso del usuario\n"
+"quienes <usuario> - obtener información del perfil del usuario\n"
+"bloquear <usuario> - obligar al usuario a que deje de seguirte\n"
+"fav <usuario> - añadir el último aviso del usario a tus favoritos\n"
+"fav #<id_aviso> - añadir el aviso con el ID dado a tus favoritos\n"
+"repetir #<id_aviso> - repetir el aviso con el ID dado\n"
+"repetir <usuario> - repetir el último aviso del usuario\n"
+"responder #<id_aviso> - responder al aviso del ID dado\n"
+"responder <usuario> - responder al último aviso del usuario\n"
+"unirse <grupo> - unirse a un grupo\n"
+"entrar - obtener un vínculo para iniciar sesión en la interfaz Web\n"
+"abandonar <grupo> - abandonar el grupo\n"
+"estadísticas - obtener tus estadísticas\n"
+"detener - igual que 'desactivar'\n"
+"parar - igual que 'desactivar'\n"
+"sus <usuario> - igual que 'seguir'\n"
+"desus <usuario> - igual que 'abandonar'\n"
+"último <usuario> - igual que 'obtener'\n"
+"activado <usuario> - aún sin implementar.\n"
+"desactivado <usuario> - aún sin implementar.\n"
+"toque <usuario> - recordarle a un ausuario que actualice.\n"
+"invitar <phone number> - aún sin implementar.\n"
+"rastrear <word> - aún sin implementar.\n"
+"no rastrear <word> - aún sin implementar.\n"
+"dejar de rastrear - aún sin implementar.\n"
+"dejar de rastrear todos - aún sin implementar.\n"
+"rastrear - aún sin implementar.\n"
+"rastreando - aún sin implementar.\n"
+
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Ningún archivo de configuración encontrado. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "He buscado archivos de configuración en los siguientes lugares: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
-msgstr ""
+msgstr "Quizá desees ejecutar el instalador para solucionar este problema."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Ir al instalador."
@@ -5451,40 +6001,39 @@ msgid "Updates by SMS"
msgstr "Actualizaciones por sms"
#: lib/connectsettingsaction.php:120
-#, fuzzy
msgid "Connections"
-msgstr "Conectarse"
+msgstr "Conecciones"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "Aplicaciones conectadas autorizadas"
#: lib/dberroraction.php:60
msgid "Database error"
-msgstr ""
+msgstr "Error de la base de datos"
#: lib/designsettings.php:105
msgid "Upload file"
-msgstr "Cargar archivo"
+msgstr "Subir archivo"
#: lib/designsettings.php:109
-#, fuzzy
msgid ""
"You can upload your personal background image. The maximum file size is 2MB."
-msgstr "Puedes cargar tu avatar personal."
+msgstr ""
+"Puedes subir tu imagen de fondo personal. El tamaño de archivo máximo "
+"permitido es 2 MB."
#: lib/designsettings.php:418
msgid "Design defaults restored."
-msgstr ""
+msgstr "Diseño predeterminado restaurado."
#: lib/disfavorform.php:114 lib/disfavorform.php:140
msgid "Disfavor this notice"
msgstr "Sacar este aviso"
#: lib/favorform.php:114 lib/favorform.php:140
-#, fuzzy
msgid "Favor this notice"
-msgstr "Aceptar este aviso"
+msgstr "Incluir este aviso en tus favoritos"
#: lib/favorform.php:140
msgid "Favor"
@@ -5500,11 +6049,11 @@ msgstr "RSS 2.0"
#: lib/feed.php:89
msgid "Atom"
-msgstr ""
+msgstr "Atom"
#: lib/feed.php:91
msgid "FOAF"
-msgstr ""
+msgstr "Amistad de amistad"
#: lib/feedlist.php:64
msgid "Export data"
@@ -5512,7 +6061,7 @@ msgstr "Exportar datos"
#: lib/galleryaction.php:121
msgid "Filter tags"
-msgstr "Filtrar tags"
+msgstr "Filtrar etiquetas"
#: lib/galleryaction.php:131
msgid "All"
@@ -5524,11 +6073,11 @@ msgstr "Seleccione una etiqueta a filtrar"
#: lib/galleryaction.php:140
msgid "Tag"
-msgstr "Tag"
+msgstr "Etiqueta"
#: lib/galleryaction.php:141
msgid "Choose a tag to narrow list"
-msgstr "Elegir tag para reducir lista"
+msgstr "Elegir una etiqueta para reducir la lista"
#: lib/galleryaction.php:143
msgid "Go"
@@ -5537,12 +6086,11 @@ msgstr "Ir"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Otorgar al usuario el papel de \"%$\""
#: lib/groupeditform.php:163
-#, fuzzy
msgid "URL of the homepage or blog of the group or topic"
-msgstr "El URL de página de inicio o blog del grupo or tema"
+msgstr "URL de página de inicio o blog del grupo o tema"
#: lib/groupeditform.php:168
msgid "Describe the group or topic"
@@ -5564,6 +6112,7 @@ msgstr ""
#, php-format
msgid "Extra nicknames for the group, comma- or space- separated, max %d"
msgstr ""
+"Nombres adicionales para el grupo, separados por comas o espacios. Máximo: %d"
#: lib/groupnav.php:85
msgid "Group"
@@ -5608,58 +6157,59 @@ msgstr "Grupos con más publicaciones"
#: lib/grouptagcloudsection.php:56
#, php-format
msgid "Tags in %s group's notices"
-msgstr "Tags en avisos del grupo %s"
+msgstr "Etiquetas en avisos del grupo %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Esta página no está disponible en el tipo de medio que aceptas."
-#: lib/imagefile.php:75
-#, fuzzy, php-format
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato de imagen no soportado."
+
+#: lib/imagefile.php:88
+#, php-format
msgid "That file is too big. The maximum file size is %s."
-msgstr "Puedes cargar una imagen de logo para tu grupo."
+msgstr "El archivo es muy grande. El tamaño máximo permitido es %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
-msgstr "Carga parcial."
+msgstr "Subida parcial"
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
-msgstr "Error del sistema al cargar el archivo."
+msgstr "Error del sistema subir el archivo"
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "No es una imagen o es un fichero corrupto."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato de imagen no soportado."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Se perdió nuestro archivo."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tipo de archivo desconocido"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
-msgstr ""
+msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
-msgstr ""
+msgstr "Origen de bandeja de entrada %d desconocido."
#: lib/joinform.php:114
msgid "Join"
@@ -5667,7 +6217,7 @@ msgstr "Unirse"
#: lib/leaveform.php:114
msgid "Leave"
-msgstr "Salir"
+msgstr "Abandonar"
#: lib/logingroupnav.php:80
msgid "Login with a username and password"
@@ -5677,11 +6227,13 @@ msgstr "Ingresar con un nombre de usuario y contraseña."
msgid "Sign up for a new account"
msgstr "Registrarse para una nueva cuenta"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmación de correo electrónico"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5697,14 +6249,39 @@ msgid ""
"Thanks for your time, \n"
"%s\n"
msgstr ""
+"¡Hola, %s!\n"
+"\n"
+"Hace un momento, alguien introdujo esta dirección de correo electrónico en %"
+"s.\n"
+"\n"
+"Si has sido tú y deseas confirmarlo, haz clic en el vínculo de abajo:\n"
+"\n"
+"%s\n"
+"\n"
+"Si no, simplemente ignora este mensaje.\n"
+"\n"
+"Gracias por tu tiempo, \n"
+"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s ahora está escuchando tus avisos en %2$s"
-#: lib/mail.php:245
-#, fuzzy, php-format
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Si crees que esta cuenta está siendo utilizada de forma abusiva, puedes "
+"bloquearla de tu lista de suscriptores y reportar la como cuenta no deseada "
+"a los administradores de sitios en %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
"\n"
@@ -5717,26 +6294,33 @@ msgid ""
"----\n"
"Change your email address or notification options at %8$s\n"
msgstr ""
-"\t%1$s ahora está escuchando tus avisos en %2$s.\n"
+"%1$s ahora está escuchando tus avisos en %2$s.\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
"\n"
"Atentamente,\n"
-"%4$s.\n"
+"\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Cambia tus preferencias de notificaciones a tu correo electrónico en %8$s\n"
-#: lib/mail.php:262
-#, fuzzy, php-format
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
msgid "Bio: %s"
-msgstr ""
-"Bio: %s\n"
-"\n"
+msgstr "Bio: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nueva dirección de correo para postear a %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5757,21 +6341,31 @@ msgstr ""
"Attentamente, \n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "estado de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS confirmación"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: Confirma que este es tu número de teléfono mediante este código:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
-msgstr "%s te mandó un zumbido "
+msgstr "%s te ha dado un toque"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5786,13 +6380,26 @@ msgid ""
"With kind regards,\n"
"%4$s\n"
msgstr ""
+"%1$s (%2$s) se pregunta que será de tí durante estos días y te invita a "
+"publicar algunas noticias.\n"
+"\n"
+"Así que, ¡vamos! queremos escuchar de tí:)\n"
+"\n"
+"%3$s\n"
+"\n"
+"No respondas a este correo electrónico. No llegará a ninguna parte.\n"
+"\n"
+"Un cordial saludo,\n"
+"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nuevo mensaje privado de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5810,13 +6417,29 @@ msgid ""
"With kind regards,\n"
"%5$s\n"
msgstr ""
+"%1$s (%2$s) Te ha enviado un mensaje privado:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"Puedes responder a este mensaje aquí:\n"
+"\n"
+"%4$s\n"
+"\n"
+"No respondas a este correo electrónico. No llegará a ningún sitio.\n"
+"\n"
+"Saludos cordiales,\n"
+"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) agregó tu aviso como un favorito"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5836,13 +6459,42 @@ msgid ""
"Faithfully yours,\n"
"%6$s\n"
msgstr ""
+"%1$s (@%7$s) acaba de añadir un aviso de %2$s a su listado de favoritos.\n"
+"\n"
+"El URL de tu aviso es:\n"
+"\n"
+"%3$s\n"
+"\n"
+"El texto de tu aviso es:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Puedes ver el listado de los favoritos de %1$s aquí:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Saludos,\n"
+"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
#, php-format
-msgid "%s (@%s) sent a notice to your attention"
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
msgstr ""
+"La conversación completa puede leerse aquí:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr "%s (@%s) ha enviado un aviso a tu atención"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5855,7 +6507,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
+"%1$s (@%9$s) ha enviado un aviso a tu atención (una '@-respuesta') en %2$s.\n"
+"\n"
+"El anuncio está aquí:\n"
+"\n"
+"%3$s\n"
+"\n"
+"El anuncio dice:\n"
+"\n"
+"%4$s\n"
+"\n"
+"%5$sPuedes responder aquí:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Aquí encontrarás un listado de todas las @-respuestas dirigidas a ti:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Saludos,\n"
+"%2$s\n"
+"\n"
+"P.D. Puedes desactivar las notificaciones que recibes en tu correo "
+"electrónico aquí: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5866,8 +6553,11 @@ msgid ""
"You have no private messages. You can send private message to engage other "
"users in conversation. People can send you messages for your eyes only."
msgstr ""
+"No tienes mensajes privados. Puede enviar mensajes privados para hacer a "
+"otros usuarios partícipes de la conversación. La gente puede enviarte "
+"mensajes que sólo puedas leer tú."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "desde"
@@ -5888,62 +6578,66 @@ msgid "Sorry, no incoming email allowed."
msgstr "Lo sentimos, pero no se permite correos entrantes"
#: lib/mailhandler.php:228
-#, fuzzy, php-format
+#, php-format
msgid "Unsupported message type: %s"
-msgstr "Formato de imagen no soportado."
+msgstr "Tipo de mensaje no compatible: %s"
#: lib/mediafile.php:98 lib/mediafile.php:123
msgid "There was a database error while saving your file. Please try again."
msgstr ""
+"Hubo un error en la base de datos mientras subías tu archivo. Por favor, "
+"inténtalo de nuevo."
#: lib/mediafile.php:142
msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
msgstr ""
+"El archivo subido sobrepasa la directiva upload_max_filesize en php.ini"
#: lib/mediafile.php:147
msgid ""
"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
"the HTML form."
msgstr ""
+"El archivo subido sobrepasa la directiva MAX_FILE_SIZE que se especificó en "
+"el formulario HTML."
#: lib/mediafile.php:152
msgid "The uploaded file was only partially uploaded."
-msgstr ""
+msgstr "El archivo subido sólo fue parcialmente subido."
#: lib/mediafile.php:159
msgid "Missing a temporary folder."
-msgstr ""
+msgstr "Falta una carpeta temporal."
#: lib/mediafile.php:162
msgid "Failed to write file to disk."
-msgstr ""
+msgstr "No se pudo escribir el archivo en el disco."
#: lib/mediafile.php:165
msgid "File upload stopped by extension."
-msgstr ""
+msgstr "La subida de archivos se detuvo por extensión."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
-msgstr ""
+msgstr "Archivo sobrepasa la cuota del usuario."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
-msgstr ""
+msgstr "El archivo no se pudo mover al directorio de destino."
-#: lib/mediafile.php:201 lib/mediafile.php:237
-#, fuzzy
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
-msgstr "No se pudo acceder a corriente pública."
+msgstr "No se pudo determinar tipo MIME del archivo"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
-msgstr ""
+msgstr "Pruebe a usar otro formato %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
-msgstr ""
+msgstr "%s no es un tipo de archivo soportado en este servidor."
#: lib/messageform.php:120
msgid "Send a direct notice"
@@ -5954,18 +6648,15 @@ msgid "To"
msgstr "Para"
#: lib/messageform.php:159 lib/noticeform.php:185
-#, fuzzy
msgid "Available characters"
msgstr "Caracteres disponibles"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Enviar"
#: lib/noticeform.php:160
-#, fuzzy
msgid "Send a notice"
msgstr "Enviar un aviso"
@@ -5976,86 +6667,88 @@ msgstr "¿Qué tal, %s?"
#: lib/noticeform.php:192
msgid "Attach"
-msgstr ""
+msgstr "Adjuntar"
#: lib/noticeform.php:196
msgid "Attach a file"
-msgstr ""
+msgstr "Adjuntar un archivo"
#: lib/noticeform.php:212
-#, fuzzy
msgid "Share my location"
-msgstr "No se pudo guardar tags."
+msgstr "Compartir mi ubicación"
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "No se pudo guardar tags."
+msgstr "No compartir mi ubicación"
#: lib/noticeform.php:216
msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please "
"try again later"
msgstr ""
+"Lo sentimos, pero geolocalizarte está tardando más de lo esperado. Por "
+"favor, inténtalo más tarde."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
-msgstr ""
+msgstr "W"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "en"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "en contexto"
-#: lib/noticelist.php:601
-#, fuzzy
+#: lib/noticelist.php:602
msgid "Repeated by"
-msgstr "Crear"
+msgstr "Repetido por"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Responder este aviso."
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Responder"
-#: lib/noticelist.php:673
-#, fuzzy
+#: lib/noticelist.php:674
msgid "Notice repeated"
-msgstr "Aviso borrado"
+msgstr "Aviso repetido"
#: lib/nudgeform.php:116
msgid "Nudge this user"
-msgstr "Enviar zumbido a este usuario"
+msgstr "Dar un toque a este usuario"
#: lib/nudgeform.php:128
msgid "Nudge"
-msgstr "Zumbido "
+msgstr "Dar un toque a "
#: lib/nudgeform.php:128
msgid "Send a nudge to this user"
-msgstr "Enviar zumbido a este usuario"
+msgstr "Dar un toque a este usuario"
#: lib/oauthstore.php:283
msgid "Error inserting new profile"
@@ -6063,7 +6756,11 @@ msgstr "Error al insertar el nuevo perfil"
#: lib/oauthstore.php:291
msgid "Error inserting avatar"
-msgstr "Error al insertar el avatar"
+msgstr "Error al insertar la imagen"
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Error al actualizar el perfil remoto"
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
@@ -6108,14 +6805,13 @@ msgstr "Mensajes enviados"
#: lib/personaltagcloudsection.php:56
#, php-format
msgid "Tags in %s's notices"
-msgstr "Tags en avisos de %s"
+msgstr "Etiquetas en avisos de %s"
-#: lib/plugin.php:114
-#, fuzzy
+#: lib/plugin.php:115
msgid "Unknown"
-msgstr "Acción desconocida"
+msgstr "Desconocido"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Suscripciones"
@@ -6123,35 +6819,34 @@ msgstr "Suscripciones"
msgid "All subscriptions"
msgstr "Todas las suscripciones"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Suscriptores"
-#: lib/profileaction.php:159
-#, fuzzy
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Todos los suscriptores"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID de usuario"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Miembro desde"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Promedio diario"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Todos los grupos"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "No existe argumento de ID."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
-msgstr ""
+msgstr "Método no implementado."
#: lib/publicgroupnav.php:78
msgid "Public"
@@ -6163,7 +6858,7 @@ msgstr "Grupos de usuario"
#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
msgid "Recent tags"
-msgstr "Tags recientes"
+msgstr "Etiquetas recientes"
#: lib/publicgroupnav.php:88
msgid "Featured"
@@ -6173,43 +6868,46 @@ msgstr "Destacado"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "No hay respuesta a los argumentos."
+
#: lib/repeatform.php:107
-#, fuzzy
msgid "Repeat this notice?"
-msgstr "Responder este aviso."
+msgstr "Responder este aviso?"
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Sí"
#: lib/repeatform.php:132
-#, fuzzy
msgid "Repeat this notice"
msgstr "Responder este aviso."
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Bloquear este usuario de este grupo"
+msgstr "Revocar el rol \"%s\" de este usuario"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "Ningún usuario sólo definido para modo monousuario."
#: lib/sandboxform.php:67
-#, fuzzy
msgid "Sandbox"
-msgstr "Bandeja de Entrada"
+msgstr "Restringir"
#: lib/sandboxform.php:78
-#, fuzzy
msgid "Sandbox this user"
-msgstr "Desbloquear este usuario"
+msgstr "Imponer restricciones a este usuario"
#: lib/searchaction.php:120
-#, fuzzy
msgid "Search site"
-msgstr "Buscar"
+msgstr "Buscar sitio"
#: lib/searchaction.php:126
msgid "Keyword(s)"
-msgstr ""
+msgstr "Palabra(s) clave"
#: lib/searchaction.php:127
msgid "Search"
@@ -6241,20 +6939,18 @@ msgstr "Sección sin título"
#: lib/section.php:106
msgid "More..."
-msgstr ""
+msgstr "Más..."
#: lib/silenceform.php:67
-#, fuzzy
msgid "Silence"
-msgstr "Aviso de sitio"
+msgstr "Silenciar"
#: lib/silenceform.php:78
-#, fuzzy
msgid "Silence this user"
-msgstr "Bloquear este usuario."
+msgstr "Silenciar a este usuario"
#: lib/subgroupnav.php:83
-#, fuzzy, php-format
+#, php-format
msgid "People %s subscribes to"
msgstr "Personas a las que %s está suscrito"
@@ -6280,38 +6976,81 @@ msgstr "Invita a amigos y colegas a unirse a %s"
#: lib/subscriberspeopleselftagcloudsection.php:48
#: lib/subscriptionspeopleselftagcloudsection.php:48
msgid "People Tagcloud as self-tagged"
-msgstr ""
+msgstr "Nube de etiquetas de personas auto-etiquetadas"
#: lib/subscriberspeopletagcloudsection.php:48
#: lib/subscriptionspeopletagcloudsection.php:48
msgid "People Tagcloud as tagged"
-msgstr ""
+msgstr "Nube de etiquetas de personas etiquetadas"
#: lib/tagcloudsection.php:56
msgid "None"
msgstr "Ninguno"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "Este servidor no puede manejar cargas de temas sin soporte ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "El archivo de tema está perdido o la carga falló."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Grabado de tema errado."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Tema inválido: mala estructura de directorio."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Tema subido es demasiado grande; debe ser menor que %d bytes sin comprimir."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Archivo de tema inválido: archivo perdido css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"El tema contiene archivo o nombre de carpeta inválido. Restrínjase a letras "
+"ASCII, dígitos, carácter de subrayado, y signo menos."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "El tema contiene archivo de tipo '.%s', que no está permitido."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Error al abrir archivo de tema."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Principales posteadores"
#: lib/unsandboxform.php:69
msgid "Unsandbox"
-msgstr ""
+msgstr "Eliminar restricciones"
#: lib/unsandboxform.php:80
-#, fuzzy
msgid "Unsandbox this user"
-msgstr "Desbloquear este usuario"
+msgstr "Eliminar restricciones impuestas a este usuario"
#: lib/unsilenceform.php:67
msgid "Unsilence"
-msgstr ""
+msgstr "Dejar de silenciar"
#: lib/unsilenceform.php:78
-#, fuzzy
msgid "Unsilence this user"
-msgstr "Desbloquear este usuario"
+msgstr "Dejar de silenciar este usuario"
#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
msgid "Unsubscribe from this user"
@@ -6321,106 +7060,122 @@ msgstr "Desuscribirse de este usuario"
msgid "Unsubscribe"
msgstr "Cancelar suscripción"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "El usuario %s (%d) no tiene un registro de su perfil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
-msgstr "editar avatar"
+msgstr "Editar imagen"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Acciones de usuario"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Eliminación de usuario en curso..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Editar configuración del perfil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Editar"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Enviar un mensaje directo a este usuario"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Mensaje"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderar"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Perfil de usuario"
+msgstr "Rol de usuario"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administradores"
+msgstr "Administrador"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Moderar"
+msgstr "Moderador"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "hace unos segundos"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "hace un minuto"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "hace %d minutos"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "hace una hora"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "hace %d horas"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "hace un día"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "hace %d días"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "hace un mes"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "hace %d meses"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "hace un año"
#: lib/webcolor.php:82
#, php-format
msgid "%s is not a valid color!"
-msgstr ""
+msgstr "¡%s no es un color válido!"
#: lib/webcolor.php:123
#, php-format
msgid "%s is not a valid color! Use 3 or 6 hex chars."
-msgstr ""
+msgstr "%s no es un color válido! Usar 3 o 6 caracteres hexagesimales"
-#: lib/xmppmanager.php:402
-#, fuzzy, php-format
+#: lib/xmppmanager.php:403
+#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
-msgstr "Mensaje muy largo - máximo 140 caracteres, enviaste %d"
+msgstr "Mensaje muy largo - máximo %1$d caracteres, enviaste %2$d"
diff --git a/locale/fa/LC_MESSAGES/statusnet.po b/locale/fa/LC_MESSAGES/statusnet.po
index 955efd243..c5303e341 100644
--- a/locale/fa/LC_MESSAGES/statusnet.po
+++ b/locale/fa/LC_MESSAGES/statusnet.po
@@ -1,6 +1,8 @@
# Translation of StatusNet to Persian
#
# Author@translatewiki.net: ArianHT
+# Author@translatewiki.net: Brion
+# Author@translatewiki.net: Choxos
# Author@translatewiki.net: Everplays
# Author@translatewiki.net: Narcissus
# --
@@ -10,8 +12,8 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:48+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:25+0000\n"
"Last-Translator: Ahmad Sufi Mahmudi\n"
"Language-Team: Persian\n"
"MIME-Version: 1.0\n"
@@ -20,35 +22,32 @@ msgstr ""
"X-Language-Code: fa\n"
"X-Message-Group: out-statusnet\n"
"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "دسترسی"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "تنظیمات دیگر"
+msgstr "تنظیمات دسترسی وب‌گاه"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
-msgstr "ثبت نام"
+msgstr "نام‌نویسی"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
-msgstr ""
+msgstr "از دیدن وب‌گاه توسط کاربران ناشناس (وارد نشده) جلوگیری شود؟"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "خصوصی"
@@ -56,192 +55,198 @@ msgstr "خصوصی"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
msgid "Make registration invitation only."
-msgstr "تنها آماده کردن دعوت نامه های ثبت نام."
+msgstr "نام‌نویسی تنها با دعوت‌نامه انجام شود."
#. TRANS: Checkbox label for configuring site as invite only.
#: actions/accessadminpanel.php:176
msgid "Invite only"
-msgstr "Ùقط دعوت کردن"
+msgstr "تنها دعوت کردن"
#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
#: actions/accessadminpanel.php:183
msgid "Disable new registrations."
-msgstr "غیر Ùعال کردن نام نوبسی جدید"
+msgstr "غیر Ùعال کردن نام‌نوبسی تازه"
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
msgid "Closed"
-msgstr "مسدود"
+msgstr "بسته‌شده"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "تنظیمات چهره"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "ذخیرهٔ تنظیمات دسترسی"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
-msgstr "ذخیره‌کردن"
+msgstr "ذخیره"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "چنین صÙحه‌ای وجود ندارد"
+msgid "No such page."
+msgstr "چنین صÙحه‌ای وجود ندارد."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "چنین کاربری وجود ندارد."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%s کاربران مسدود شده، صÙحه‌ی %d"
+msgstr "%1$s Ùˆ دوستان، صÙحهٔ %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s و دوستان"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "خوراک دوستان %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "خوراک دوستان %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "خوراک دوستان %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
-msgstr "این خط‌زمانی %s و دوستانش است، اما هیچ‌یک تاکنون چیزی پست نکرده‌اند."
+msgstr "این خط‌زمانی %s Ùˆ دوستانش است، اما هیچ‌یک تاکنون چیزی Ù†Ùرستاده‌اند."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
"something yourself."
msgstr ""
-"پیگیری اÙراد بیش‌تری بشوید [به یک گروه بپیوندید](%%action.groups%%) یا خودتان "
-"چیزی را ارسال کنید."
+"پیگیر اÙراد بیش‌تری بشوید [به یک گروه بپیوندید](%%action.groups%%) یا خودتان "
+"چیزی بÙرستید."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"اولین کسی باشید که در [این موضوع](%%%%action.newnotice%%%%?status_textarea=%"
-"s) پیام می‌Ùرستد."
+"شما می‌توانید [یادآوری‌کردن %1$s](../%2$s) را از نمایه‌اش امتحان کنید یا [به "
+"توجه او چیزی بÙرستید](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"چرا [ثبت نام](%%%%action.register%%%%) نمی‌کنید Ùˆ سپس با Ùرستادن پیام توجه %s "
-"را جلب کنید."
+"چرا [ثبت‌نام](%%%%action.register%%%%) نمی‌کنید و سپس به %s یادآوری کنید یا یک "
+"پیام به توجه‌اش بÙرستید."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "شما و دوستان"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
-msgstr "به روز رسانی از %1$ و دوستان در %2$"
+msgstr "به روز رسانی از %1$s و دوستان در %2$s"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "رابط مورد نظر پیدا نشد."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "برای استÙاده از این روش باید اطلاعات را به صورت پست بÙرستید"
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
-msgstr "شما باید یک پارامتر با نام device و مقدار sms، im یا none مشخص کنید."
+"none."
+msgstr ""
+"شما باید یک پارامتر را به نام device و مقدار sms، im یا none مشخص کنید."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "نمی‌توان کاربر را به‌هنگام‌سازی کرد."
@@ -250,19 +255,19 @@ msgstr "نمی‌توان کاربر را به‌هنگام‌سازی کرد."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
-msgstr "کاربر هیچ شناس‌نامه‌ای ندارد."
+msgstr "کاربر هیچ نمایه‌ای ندارد."
#: actions/apiaccountupdateprofile.php:147
msgid "Could not save profile."
-msgstr "نمی‌توان شناس‌نامه را ذخیره کرد."
+msgstr "نمی‌توان نمایه را ذخیره کرد."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -319,48 +324,47 @@ msgstr "پیام‌های مستقیم به %s"
msgid "All the direct messages sent to %s"
msgstr "تمام پیام‌های مستقیم Ùرستاده‌شده به %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "هیچ پیام متنی وجود ندارد!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
-msgstr "این بسیار طولانی است. بیشینهٔ اندازهٔ پیام %d حر٠است."
+msgstr "این بسیار طولانی است. بیشینهٔ اندازهٔ پیام %d نویسه است."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "کاربر گیرنده یاÙت نشد."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "نمی‌توان پیام مستقیم را به کاربرانی Ú©Ù‡ دوست شما نیستند، Ùرستاد."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "هیچ وضعیتی با آن شناسه پیدا نشد."
-#: actions/apifavoritecreate.php:119
-#, fuzzy
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
-msgstr "این وضعیت درحال حاضر یک وضعیت مورد علاقه است!"
+msgstr "این پیغام را پیش‌تر به برگزیده‌های خود اضاÙÙ‡ کرده‌اید"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
-msgstr "نمی‌توان وضعیت را موردعلاقه کرد."
+msgstr "نمی‌توان پیام را برگزید."
-#: actions/apifavoritedestroy.php:122
-#, fuzzy
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
-msgstr "این وضعیت یک وضعیت موردعلاقه نیست!"
+msgstr "این پیام یک پیام برگزیده نیست."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
-msgstr "نمی‌توان وضعیت موردعلاقه را حذ٠کرد."
+msgstr "نمی‌توان پیام برگزیده را حذ٠کرد."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "نمی‌توان کاربر را دنبال کرد: کاربر یاÙت نشد."
#: actions/apifriendshipscreate.php:118
@@ -373,12 +377,12 @@ msgid "Could not unfollow user: User not found."
msgstr "نمی‌توان کاربر را دنبال نکرد: کاربر یاÙت نشد."
#: actions/apifriendshipsdestroy.php:120
-#, fuzzy
msgid "You cannot unfollow yourself."
-msgstr "نمی‌توانید خودتان را دنبال نکنید!"
+msgstr "نمی‌توانید خودتان را دنبال کنید."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "باید ۲ شناسه‌ی کاربر یا نام ظاهری وارد کنید."
#: actions/apifriendshipsshow.php:134
@@ -389,136 +393,148 @@ msgstr "نمی‌توان کاربر منبع را تعیین کرد."
msgid "Could not find target user."
msgstr "نمی‌توان کاربر هد٠را پیدا کرد."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "لقب باید شامل حرو٠کوچک Ùˆ اعداد Ùˆ بدون Ùاصله باشد."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "این لقب در حال حاضر ثبت شده است. لطÙا یکی دیگر انتخاب کنید."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "لقب نا معتبر."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
-msgstr "برگهٔ آغازین یک نشانی معتبر نیست."
+msgstr "صÙحهٔ خانگی یک نشانی معتبر نیست."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
-msgstr "نام کامل طولانی است (۲۵۵ حر٠در حالت بیشینه(."
+msgstr "نام کامل خیلی طولانی است (حداکثر ۲۵۵ نویسه)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
-msgstr "توصی٠بسیار زیاد است (حداکثر %d حرÙ)."
+msgstr "توصی٠خیلی طولانی است (حداکثر %d نویسه)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
-msgstr "مکان طولانی است (حداکثر Û²ÛµÛµ حرÙ)"
+msgstr "نام مکان خیلی طولانی است (حداکثر ۲۵۵ نویسه)"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "نام‌های مستعار بسیار زیاد هستند! حداکثر %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
msgstr "نام‌مستعار غیر مجاز: «%s»"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "نام‌مستعار «%s» ازپیش گرÙته‌شده‌است. یکی دیگر را امتحان کنید."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "نام و نام مستعار شما نمی تواند یکی باشد ."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "گروه یاÙت نشد!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "گروه یاÙت نشد."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "شما از پیش یک عضو این گروه هستید."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "دسترسی شما به گروه توسط مدیر آن محدود شده است."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
-#, fuzzy, php-format
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
msgid "Could not join user %1$s to group %2$s."
-msgstr "عضویت %s در گروه %s نا موÙÙ‚ بود."
+msgstr "نمی‌توان کاربر %1$s را عضو گروه %2$s کرد."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "شما یک عضو این گروه نیستید."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
-#, fuzzy, php-format
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "خارج شدن %s از گروه %s نا موÙÙ‚ بود"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "گروه‌های %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "هست عضو %s گروه"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s گروه"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "گروه‌ها در %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "بارگذاری پرونده"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
-msgstr ""
+msgstr "هیچ پارامتر oauth_token آماده نشده است."
#: actions/apioauthauthorize.php:106
-#, fuzzy
msgid "Invalid token."
-msgstr "اندازه‌ی نادرست"
+msgstr "رمز نامعتبر است."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -526,17 +542,16 @@ msgid "There was a problem with your session token. Try again, please."
msgstr "مشکلی در دریاÙت جلسه‌ی شما وجود دارد. لطÙا بعدا سعی کنید."
#: actions/apioauthauthorize.php:135
-#, fuzzy
msgid "Invalid nickname / password!"
-msgstr "نام کاربری یا کلمه ی عبور نا معتبر."
+msgstr "نام کاربری یا گذرواژه نامعتبر است!"
#: actions/apioauthauthorize.php:159
msgid "Database error deleting OAuth application user."
-msgstr ""
+msgstr "هنگام حذÙ‌کردن کاربر برنامهٔ OAuth در پایگاه داده خطایی رخ داد."
#: actions/apioauthauthorize.php:185
msgid "Database error inserting OAuth application user."
-msgstr ""
+msgstr "هنگام اÙزودن کاربر برنامهٔ OAuth در پایگاه داده خطایی رخ داد."
#: actions/apioauthauthorize.php:214
#, php-format
@@ -544,28 +559,32 @@ msgid ""
"The request token %s has been authorized. Please exchange it for an access "
"token."
msgstr ""
+"نشانهٔ درخواست %s تایید شد. لطÙا آن را برای یک نشانهٔ دسترسی مبادله کنید."
#: actions/apioauthauthorize.php:227
#, php-format
msgid "The request token %s has been denied and revoked."
-msgstr ""
+msgstr "نشانهٔ درخواست %s پذیرÙته نشد Ùˆ لغو شد."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "ارسال غیر قابل انتظار Ùرم."
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "یک برنامه می‌خواهد که به حساب شما وصل شود"
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "اجازه‌دادن (به) یا جلوگیری از دسترسی"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -574,43 +593,47 @@ msgid ""
"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."
msgstr ""
+"برنامهٔ <strong>%1$s</strong> نوشته شده توسط <strong>%2$s</strong> امکان "
+"<strong>%3$s</strong> داده‌های حساب %4$s شما را می‌خواهد. شما باید تنها اجازهٔ "
+"دسترسی به حساب %4$s خودتان را به برنامه‌های دیگری که به آن اعتماد دارید، "
+"بدهید."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "حساب کاربری"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "نام کاربری"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "گذرواژه"
#: actions/apioauthauthorize.php:328
-#, fuzzy
msgid "Deny"
-msgstr "طرح"
+msgstr "رد کردن"
#: actions/apioauthauthorize.php:334
-#, fuzzy
msgid "Allow"
-msgstr "همه"
+msgstr "اجازه دادن"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "به دسترسی به اطلاعات حسابتان اجازه بدهید یا از آن جلوگیری کنید."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "این روش نیازمند POST یا DELETE است."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "شما توانایی حذ٠وضعیت کاربر دیگری را ندارید."
@@ -621,65 +644,69 @@ msgstr "چنین پیامی وجود ندارد."
#: actions/apistatusesretweet.php:83
msgid "Cannot repeat your own notice."
-msgstr "نمی توانید خبر خود را تکرار کنید."
+msgstr "نمی توانید پیام خود را تکرار کنید."
#: actions/apistatusesretweet.php:91
msgid "Already repeated that notice."
-msgstr "ابن خبر قبلا Ùرستاده شده"
+msgstr "قبلا آن پیام تکرار شده است."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "وضعیت حذ٠شد."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "هیچ وضعیتی با آن شناسه یاÙت نشد."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
-msgstr "خیلی طولانی است. حداکثر طول مجاز پیام %d حر٠است."
+msgstr "این خیلی طولانی است. بیشینهٔ طول پیام %d نویسه است."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "یاÙت نشد"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "یاÙت نشد."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
-msgstr "حداکثر طول پیام %d حر٠است که شامل ضمیمه نیز می‌باشد"
+msgstr "بیشینهٔ طول پیام %d نویسه که شامل نشانی اینترنتی پیوست هم هست."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "قالب پشتیبانی نشده."
-#: actions/apitimelinefavorites.php:108
-#, fuzzy, php-format
+#: actions/apitimelinefavorites.php:110
+#, php-format
msgid "%1$s / Favorites from %2$s"
-msgstr "%s / دوست داشتنی از %s"
+msgstr "%1$s / برگزیده‌ها از %2$s"
-#: actions/apitimelinefavorites.php:117
-#, fuzzy, php-format
+#: actions/apitimelinefavorites.php:119
+#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
-msgstr "%s به روز رسانی های دوست داشتنی %s / %s"
+msgstr "به‌روزرسانی‌های %1$s که توسط %2$s برگزیده شده اند / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%$1s / به روز رسانی های شامل %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s به روز رسانی هایی که در پاسخ به $2$s / %3$s"
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s خط‌زمانی عمومی"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s به روز رسانی های عموم"
@@ -687,26 +714,26 @@ msgstr "%s به روز رسانی های عموم"
#: actions/apitimelineretweetedtome.php:111
#, php-format
msgid "Repeated to %s"
-msgstr ""
+msgstr "تکرار شده به %s"
#: actions/apitimelineretweetsofme.php:114
#, php-format
msgid "Repeats of %s"
msgstr "تکرار %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "پیام‌هایی که با %s نشانه گزاری شده اند."
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "پیام‌های نشانه گزاری شده با %1$s در %2$s"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "یاÙت نشد."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "روش API در دست ساخت."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -717,7 +744,7 @@ msgstr "چنین پیوستی وجود ندارد."
#: actions/grouplogo.php:86 actions/groupmembers.php:76
#: actions/grouprss.php:91 actions/showgroup.php:121
msgid "No nickname."
-msgstr "بدون لقب."
+msgstr "لقبی وجود ندارد."
#: actions/avatarbynickname.php:64
msgid "No size."
@@ -727,8 +754,9 @@ msgstr "بدون اندازه."
msgid "Invalid size."
msgstr "اندازه‌ی نادرست"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "چهره"
@@ -739,10 +767,10 @@ msgstr ""
"شما می‌توانید چهرهٔ شخصی خود را بارگذاری کنید. حداکثر اندازه پرونده %s است."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "کاربر بدون مشخصات"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "کاربر نمایهٔ تطبیق ندارد."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -760,7 +788,7 @@ msgid "Preview"
msgstr "پیش‌نمایش"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "حذÙ"
@@ -772,23 +800,27 @@ msgstr "پایین‌گذاری"
msgid "Crop"
msgstr "برش"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "هیچ پرونده‌ای بارگذاری نشد."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "یک مربع از عکس خود را انتخاب کنید تا چهره‌ی شما باشد."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Ùایل اطلاعات خود را Ú¯Ù… کرده ایم."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "چهره به روز رسانی شد."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "به روز رسانی چهره موÙقیت آمیر نبود."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "چهره پاک شد."
@@ -796,11 +828,11 @@ msgstr "چهره پاک شد."
msgid "You already blocked that user."
msgstr "شما هم اکنون آن کاربر را مسدود کرده اید."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "مسدود کردن کاربر"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -811,29 +843,44 @@ msgstr ""
"دنبال کند. همچنین دیگر شما از پیام‌هایی که در آن از شما یاد می‌کند با خبر "
"نخواهید شد"
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "خیر"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "کاربر را مسدود نکن"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "بله"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "کاربر را مسدود کن"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
-msgstr ""
+msgstr "ذخیرهٔ ردی٠اطلاعات شکست خورد."
#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
@@ -844,20 +891,20 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "چنین گروهی وجود ندارد."
#: actions/blockedfromgroup.php:97
#, php-format
msgid "%s blocked profiles"
-msgstr "%s کاربران مسدود شده"
+msgstr "%s نمایه‌های مسدود شده"
#: actions/blockedfromgroup.php:100
-#, fuzzy, php-format
+#, php-format
msgid "%1$s blocked profiles, page %2$d"
-msgstr "%s کاربران مسدود شده، صÙحه‌ی %d"
+msgstr "%1$s نمایه‌های مسدود شده، صÙحهٔ %2$d"
#: actions/blockedfromgroup.php:115
msgid "A list of the users blocked from joining this group."
@@ -875,9 +922,11 @@ msgstr "آزاد سازی"
msgid "Unblock this user"
msgstr "آزاد سازی کاربر"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "ارسال به "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Ùرستادن به %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -891,34 +940,43 @@ msgstr "کد تصدیق پیدا نشد."
msgid "That confirmation code is not for you!"
msgstr "آن کد تصدیق برای شما نیست!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "نوع نشانی نامشخص است %s"
+msgid "Unrecognized address type %s."
+msgstr "نوع نشانی نامشخص است %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "آن نشانی در حال حاضر تصدیق شده است."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "نمی‌توان کاربر را به روز کرد."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "نمی‌توان تصدیق پست الکترونیک را پاک کرد."
-#: actions/confirmaddress.php:144
-#, fuzzy
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "تایید نشانی"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "نشانی «%s« برای شما تصدیق شد."
@@ -928,64 +986,60 @@ msgid "Conversation"
msgstr "مکالمه"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "پیام‌ها"
#: actions/deleteapplication.php:63
-#, fuzzy
msgid "You must be logged in to delete an application."
-msgstr "برای ویرایش گروه باید وارد شوید."
+msgstr "برای پاک‌کردن یک برنامه باید وارد شده باشید."
#: actions/deleteapplication.php:71
-#, fuzzy
msgid "Application not found."
-msgstr "ابن خبر ذخیره ای ندارد ."
+msgstr "برنامه یاÙت نشد."
#: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94
-#, fuzzy
msgid "You are not the owner of this application."
-msgstr "شما یک عضو این گروه نیستید."
+msgstr "شما مالک این برنامه نیستید."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
-msgstr ""
+msgstr "یک مشکل با رمز نشست شما وجود داشت."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "چنین پیامی وجود ندارد."
+msgstr "حذ٠برنامه"
#: actions/deleteapplication.php:149
-#, fuzzy
msgid ""
"Are you sure you want to delete this application? This will clear all data "
"about the application from the database, including all existing user "
"connections."
msgstr ""
-"آیا مطمئن هستید که می‌خواهید این کاربر را پاک کنید؟ با این کار تمام اطلاعات "
-"پاک و بدون برگشت خواهند بود."
+"آیا مطمئن هستید که می‌خواهید این برنامه را حذ٠کنید؟ این تمام داده‌ها را "
+"دربارهٔ برنامه از پایگاه‌داده پاک می‌کند که شامل تمام اتصال‌های کاربری موجود "
+"می‌شود."
-#: actions/deleteapplication.php:156
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
-msgstr "این پیام را پاک نکن"
+msgstr "این برنامه حذ٠نشود"
-#: actions/deleteapplication.php:160
-#, fuzzy
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
-msgstr "این پیام را پاک کن"
+msgstr "این برنامه حذ٠شود"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "شما به سیستم وارد نشده اید."
@@ -1010,11 +1064,13 @@ msgstr "پیام را پاک کن"
msgid "Are you sure you want to delete this notice?"
msgstr "آیا اطمینان دارید که می‌خواهید این پیام را پاک کنید؟"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "این پیام را پاک نکن"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "این پیام را پاک کن"
@@ -1038,58 +1094,70 @@ msgstr ""
"آیا مطمئن هستید که می‌خواهید این کاربر را پاک کنید؟ با این کار تمام اطلاعات "
"پاک و بدون برگشت خواهند بود."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "حذ٠این کاربر"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "طرح"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
-msgstr "تنظیمات ظاهری برای این سایت."
+msgstr "تنظیمات ظاهری برای این وب‌گاه StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "نشانی اینترنتی نشان نامعتبر است."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "پوسته در دسترس نمی‌باشد: %s"
+msgid "Theme not available: %s."
+msgstr "پوسته در دسترس نیست: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "تغییر نشان"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "نشان وب‌گاه"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "تغییر پوسته"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "پوستهٔ وب‌گاه"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "پوسته برای وب‌گاه"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "پوستهٔ وب‌گاه"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "تغییر تصویر پیش‌زمینه"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "پیش‌زمینه"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1098,77 +1166,86 @@ msgstr ""
"شما می‌توانید یک تصویر پیش‌زمینه را برای وب‌گاه بارگذاری کنید. بیشینهٔ اندازهٔ "
"پرونده %1 $s است."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "روشن"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "خاموش"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "تصویر پیش‌زمینه را Ùعال یا غیرÙعال کنید."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "تصویر پیش‌زمینهٔ موزاییکی"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
-msgstr "عوض‌کردن رنگ‌ها"
+msgstr "تغییر رنگ‌ها"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "محتوا"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "ستون کناری"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "متن"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "پیوندها"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "استÙاده‌کردن از پیش‌Ùرض‌ها"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "بازگرداندن طرح‌های پیش‌Ùرض"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "برگشت به حالت پیش گزیده"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "ذخیره‌کردن"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "ذخیره‌کردن طرح"
#: actions/disfavor.php:81
msgid "This notice is not a favorite!"
-msgstr "این آگهی یک آگهی برگزیده نیست!"
+msgstr "این پیام یک پیام برگزیده نیست!"
#: actions/disfavor.php:94
msgid "Add to favorites"
-msgstr "اÙزودن به علاقه‌مندی‌ها"
+msgstr "اÙزودن به برگزیده‌ها"
#: actions/doc.php:158
#, fuzzy, php-format
@@ -1176,65 +1253,57 @@ msgid "No such document \"%s\""
msgstr "چنین سندی وجود ندارد."
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "انتخابات دیگر"
+msgstr "ویرایش برنامه"
#: actions/editapplication.php:66
-#, fuzzy
msgid "You must be logged in to edit an application."
-msgstr "برای ویرایش گروه باید وارد شوید."
+msgstr "برای ویرایش یک برنامه باید وارد شده باشید."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87
-#, fuzzy
msgid "No such application."
-msgstr "چنین پیامی وجود ندارد."
+msgstr "چنین برنامه‌ای وجود ندارد."
#: actions/editapplication.php:161
-#, fuzzy
msgid "Use this form to edit your application."
-msgstr "از این روش برای ویرایش گروه استÙاده کنید."
+msgstr "از این روش برای ویرایش برنامه‌تان استÙاده کنید."
#: actions/editapplication.php:177 actions/newapplication.php:159
msgid "Name is required."
-msgstr ""
+msgstr "نام مورد نیاز است."
#: actions/editapplication.php:180 actions/newapplication.php:165
-#, fuzzy
msgid "Name is too long (max 255 chars)."
-msgstr "نام کامل طولانی است (۲۵۵ حر٠در حالت بیشینه(."
+msgstr "نام خیلی طولانی است (حداکثر ۲۵۵ نویسه)."
#: actions/editapplication.php:183 actions/newapplication.php:162
-#, fuzzy
msgid "Name already in use. Try another one."
-msgstr "این لقب در حال حاضر ثبت شده است. لطÙا یکی دیگر انتخاب کنید."
+msgstr "این نام در حال حاضر مورد استÙاده است. یکی دیگر را بیازمایید."
#: actions/editapplication.php:186 actions/newapplication.php:168
msgid "Description is required."
-msgstr ""
+msgstr "توصی٠مورد نیاز است."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr ""
+msgstr "نشانی اینترنتی منبع بسیار بلند است."
#: actions/editapplication.php:200 actions/newapplication.php:185
-#, fuzzy
msgid "Source URL is not valid."
-msgstr "برگهٔ آغازین یک نشانی معتبر نیست."
+msgstr "نشانی اینترنتی منبع معتبر نیست."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
-msgstr ""
+msgstr "سازمانی‌دهی مورد نیاز است."
#: actions/editapplication.php:206 actions/newapplication.php:191
-#, fuzzy
msgid "Organization is too long (max 255 chars)."
-msgstr "مکان طولانی است (حداکثر Û²ÛµÛµ حرÙ)"
+msgstr "نام سازمان خیلی طولانی است (حداکثر ۲۵۵ نویسه)."
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
-msgstr ""
+msgstr "صÙحهٔ‌خانگی سازمان مورد نیاز است."
#: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long."
@@ -1245,9 +1314,8 @@ msgid "Callback URL is not valid."
msgstr ""
#: actions/editapplication.php:258
-#, fuzzy
msgid "Could not update application."
-msgstr "نمی‌توان گروه را به‌هنگام‌سازی کرد."
+msgstr "نمی‌توان برنامه را به‌هنگام‌سازی کرد."
#: actions/editgroup.php:56
#, php-format
@@ -1260,9 +1328,8 @@ msgstr "برای ساخت یک گروه، باید وارد شده باشید."
#: actions/editgroup.php:107 actions/editgroup.php:172
#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
-#, fuzzy
msgid "You must be an admin to edit the group."
-msgstr "برای ویرایش گروه، باید یک مدیر باشید."
+msgstr "برای ویرایش گروه باید یک مدیر باشید."
#: actions/editgroup.php:158
msgid "Use this form to edit the group."
@@ -1271,13 +1338,19 @@ msgstr "از این روش برای ویرایش گروه استÙاده Ú©Ù†ÛŒØ
#: actions/editgroup.php:205 actions/newgroup.php:145
#, php-format
msgid "description is too long (max %d chars)."
-msgstr "توصی٠بسیار زیاد است (حداکثر %d حرÙ)."
+msgstr "توصی٠خیلی طولانی است (حداکثر %d نویسه)"
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "نام‌مستعار غیر مجاز: «%s»"
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "نمی‌توان گروه را به‌هنگام‌سازی کرد."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "نمی‌توان نام‌های مستعار را ساخت."
@@ -1285,220 +1358,274 @@ msgstr "نمی‌توان نام‌های مستعار را ساخت."
msgid "Options saved."
msgstr "گزینه‌ها ذخیره شدند."
-#: actions/emailsettings.php:60
-#, fuzzy
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "تنظیمات پست الکترونیک"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "چگونگی دریاÙت نامه از %%site.name%% را اداره کنید."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "نشانی"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "نشانی پست الکترونیک"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "نشانی پست الکترونیکی تایید شدهٔ کنونی"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "حذÙ"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
+"در حال انتظار برای تایید این نشانی. صندوق ورودی (و صندوق هرزنامه!) خود را "
+"برای یک پیام با راهنمایی‌های بیش‌تر بررسی کنید."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "انصراÙ"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "نشانی‌های پست الکترونیکی"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "نشانی پست الکترونیکی، مانند «UserName@example.org»"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "اÙزودن"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "پست الکترونیک ورودی"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
-msgstr "برای ارسال پیام با استÙاده از پست الکترونیک به این نشانی نامه بÙرستید."
+msgstr ""
+"برای Ùرستادن پیام با استÙاده از پست الکترونیک به این نشانی نامه بÙرستید."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
-msgstr "نشانی جدید برای ارسال پیام ایجاد کن؛ نشانی قبلی Ùسخ می‌شود."
+msgstr "نشانی جدید برای Ùرستادن پیام ایجاد کن؛ نشانی قبلی لغو می‌شود."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
-msgstr "جدید"
+msgstr "تازه"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "ترجیحات"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "ترجیحات پست الکترونیکی"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "پیام‌های کسانی را Ú©Ù‡ به تازگی دنبال می‌کنم با پست الکترونیک برایم بÙرست."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-"هر وقت کسی پیام های مرا دوست داشتنی کرد، مرا با پست اکترونیک با خبر کن."
+"هرگاه کسی پیام من را به عنوان برگزیده اضاÙÙ‡ کرد، به من نامه Ùرستاده شود."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "هر وقت کسی برای من پیام خصوصی Ùرستاد، مرا با پست الکترونیک با خبر Ú©Ù†."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
-msgstr "هر وقت کسی از من در پیام خود یاد کرد، مرا با پست الکترونیک با خبر کن."
+msgstr "هرگاه کسی به من یک «@-پاسخ» می‌Ùرستد، به من نامه بÙرست."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
-msgstr "اجازه بده دوستان توجه مرا جذب کنند Ùˆ به من نامه بÙرستند."
+msgstr ""
+"به دوستان اجازه داده شود Ú©Ù‡ به من یادآوری کنند Ùˆ یک نامه به من بÙرستند."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
-msgstr "می‌خواهم با نامه پیام ارسال کنم."
+msgstr "می‌خواهم با نامه پیام بÙرستم."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "یک شناسه برای پست الکترونیک من منتشر کن."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "تنظیمات ذخیره شد."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "ترجیحات پست الکترونیکی ذخیره شد."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "پست الکترونیک وجود ندارد."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "نمی‌توان نشانی را قانونی کرد"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
-msgstr "یک آدرس ایمیل معتبر نیست."
+msgstr "یک نشانی پست الکترونیکی معتبر نیست."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "هم اکنون نشانی شما همین است."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "این نشانی در حال حاضر متعلق به Ùرد دیگری است."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "نمی‌توان کد تایید را اضاÙÙ‡ کرد."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-"کد تایید به نشانی شما ارسال شد. نامه های خود را بررسی کنید برای کد تایید و "
-"راه استÙاده."
+"کد تایید به نشانی شما Ùرستاده شد. صندوق ورودی (Ùˆ صندوق هرزنامه‌تان!) را برای "
+"کد Ùˆ راهنمای استÙادهٔ آن بررسی کنید."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "هیچ تاییدی برای Ùسخ کردن وجود ندارد."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "نشانی پیام رسان اشتباه است."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "این نشانی پست الکترونیکی نادرست است."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "تایید Ùسخ شد."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "تایید پست الکترونیکی لغو شد."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "آن نشانی شما نیست."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "نشانی پاک شده است."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "نشانی پست الکترونیکی پاک شده است."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "هیچ نشانی ورودی وجود ندارد."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "نمی‌توان اطلاعات کاربر را به روز کرد."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "نشانی ورودی پاک شد."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "نشانی ورودی جدید اضاÙÙ‡ شد."
#: actions/favor.php:79
msgid "This notice is already a favorite!"
-msgstr "این پیام هم اکنون دوست داشتنی شده است."
+msgstr "این پیام ازقبل برگزیده شده است!"
#: actions/favor.php:92 lib/disfavorform.php:140
msgid "Disfavor favorite"
-msgstr "دوست ندارم"
+msgstr "خارج‌کردن از برگزیده‌ها"
#: actions/favorited.php:65 lib/popularnoticesection.php:91
#: lib/publicgroupnav.php:93
msgid "Popular notices"
-msgstr "آگهی‌های محبوب"
+msgstr "پیام‌های برگزیده"
#: actions/favorited.php:67
#, php-format
msgid "Popular notices, page %d"
-msgstr "آگهی‌های محبوب، صÙحهٔ %d"
+msgstr "پیام‌های برگزیده، صÙحهٔ %d"
#: actions/favorited.php:79
msgid "The most popular notices on the site right now."
-msgstr "دوست داشتنی ترین پیام های سایت در حال حاضر."
+msgstr "محبوب‌ترین پیام‌هایی که اکنون در این وب‌گاه هستند."
#: actions/favorited.php:150
msgid "Favorite notices appear on this page but no one has favorited one yet."
msgstr ""
-"پیام‌های دوست داشتنی در این صÙحه نمایش داده می‌شوند اما هیچ کس پیامی را دوست "
-"داشتنی نکرده است."
+"پیام‌های برگزیده در این صÙحه نشان داده می‌شوند، ولی هنوز کسی چیزی را برنگزیده "
+"است."
#: actions/favorited.php:153
msgid ""
"Be the first to add a notice to your favorites by clicking the fave button "
"next to any notice you like."
msgstr ""
-"یک پیام را دوست داشتنی کنید با کلیک کردن روی دکمه‌ی دوست داشتنی نزدیک هر پیام."
+"با کلیک کردن روی دکمهٔ برگزیده کنار هر پیامی Ú©Ù‡ می‌خواهید، اولین Ù†Ùری باشید Ú©Ù‡ "
+"یک پیام را به برگزیده‌هایش اضاÙÙ‡ می‌کند."
#: actions/favorited.php:156
#, php-format
@@ -1506,13 +1633,14 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to add a "
"notice to your favorites!"
msgstr ""
-"چرا [ثبت نام](%%action.register%%) نمی‌کنید و یک پیام را دوست داشتنی کنید؟"
+"چرا به [باز کردن یک حساب](%%action.register%%) اقدام نمی‌کنید Ùˆ اولین Ù†Ùری "
+"باشید Ú©Ù‡ یک پیام را به برگزیده‌هایش اضاÙÙ‡ می‌کند!"
#: actions/favoritesrss.php:111 actions/showfavorites.php:77
#: lib/personalgroupnav.php:115
#, php-format
msgid "%s's favorite notices"
-msgstr "دوست داشتنی های %s"
+msgstr "پیام‌های برگزیدهٔ %s"
#: actions/favoritesrss.php:115
#, php-format
@@ -1532,27 +1660,27 @@ msgstr "کاربران ویژه، صÙحه‌ی %d"
#: actions/featured.php:99
#, php-format
msgid "A selection of some great users on %s"
-msgstr ""
+msgstr "یک انتخاب از برخی از کاربران مهم در %s"
#: actions/file.php:34
msgid "No notice ID."
-msgstr ""
+msgstr "هیچ شناسهٔ پیامی وجود ندارد."
#: actions/file.php:38
msgid "No notice."
-msgstr "بدون آگهی."
+msgstr "هیچ پیامی وجود ندارد."
#: actions/file.php:42
msgid "No attachments."
-msgstr "بدون ضمیمه."
+msgstr "هیچ پیوستی وجود ندارد."
#: actions/file.php:51
msgid "No uploaded attachments."
-msgstr "بدون ضمیمه های ارسال شده."
+msgstr "هیچ پیوست بارگذاری شده‌ای وجود ندارد."
#: actions/finishremotesubscribe.php:69
msgid "Not expecting this response!"
-msgstr "انتظار چنین جوابی وجود نداشت!"
+msgstr "انتظار چنین واکنشی وجود نداشت!"
#: actions/finishremotesubscribe.php:80
msgid "User being listened to does not exist."
@@ -1578,9 +1706,9 @@ msgstr "نمی‌توان نشانه‌ی درخواست شما را به نشا
msgid "Remote service uses unknown version of OMB protocol."
msgstr "خدمات مورد نظر از نسخه‌ی نا Ù…Ùهومی از قرارداد OMB استÙاده می‌کند."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "اشکال در به روز کردن کاربر دوردست."
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "خطا هنگام به‌هنگام‌سازی نمایهٔ از راه دور."
#: actions/getfile.php:79
msgid "No such file."
@@ -1591,33 +1719,30 @@ msgid "Cannot read file."
msgstr "نمی‌توان پرونده را خواند."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "اندازه‌ی نادرست"
+msgstr "وظیÙÙ‡ نامعتبر است."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "این نقش از قبل تعیین شده است و نمی‌تواند کارگذاشته شود."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "شما نمی توانید کاربری را در این سایت ساکت کنید."
+msgstr "شما نمی‌توانید در این وب‌گاه نقش‌های کاربری را اهدا کنید."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "کاربر قبلا ساکت شده است."
+msgstr "کاربر از قبل این وظیÙÙ‡ را داشته است."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
-msgstr "کاربری مشخص نشده است."
+msgstr "نمایه‌ای مشخص نشده است."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "کاربری با چنین شناسه‌ای وجود ندارد."
@@ -1638,33 +1763,38 @@ msgstr "هم اکنون دسترسی کاربر به گروه مسدود شده
msgid "User is not a member of group."
msgstr "کاربر عضو گروه نیست."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
-msgstr "دسترسی کاربر به گروه را مسدود کن"
+msgstr "دسترسی کاربر به گروه مسدود شود"
-#: actions/groupblock.php:162
-#, fuzzy, php-format
+#: actions/groupblock.php:160
+#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
"will be removed from the group, unable to post, and unable to subscribe to "
"the group in the future."
-msgstr "آیا مطمئن هستید می‌خواهید دسترسی »%s« را به گروه »%s« مسدود کنید؟"
+msgstr ""
+"آیا مطمئن هستید که می‌خواهید مانع دسترسی «%1$s» به گروه «%2$s» بشوید؟ آن‌ها از "
+"گروه حذ٠خواهند شد، نمی‌توانند چیزی به گروه بÙرستند Ùˆ نمی‌توانند Ú©Ù‡ در آینده "
+"مشترک گروه شوند."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
-msgstr "دسترسی کاربر به گروه را مسدود نکن"
+msgstr "دسترسی کاربر به گروه مسدود نشود"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
-msgstr "دسترسی کاربر را به گروه مسدود کن"
+msgstr "دسترسی کاربر به گروه مسدود شود"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "اشکال پایگاه داده در مسدود کردن کاربر"
#: actions/groupbyid.php:74 actions/userbyid.php:70
msgid "No ID."
-msgstr ""
+msgstr "هیچ ID وجود ندارد."
#: actions/groupdesignsettings.php:68
msgid "You must be logged in to edit a group."
@@ -1699,11 +1829,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "شما می‌توانید یک نشان برای گروه خود با بیشینه حجم %s بÙرستید."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "کاربر بدون مشخصات"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "یک ناحیه‌ی مربع از تصویر را انتخاب کنید تا به عنوان نشان باشد."
@@ -1714,7 +1839,7 @@ msgstr "نشان به‌هنگام‌سازی شد."
#: actions/grouplogo.php:401
msgid "Failed updating logo."
-msgstr "اشکال در ارسال نشان."
+msgstr "به‌هنگام‌سازی نشان شکست خورد."
#: actions/groupmembers.php:100 lib/groupnav.php:92
#, php-format
@@ -1722,9 +1847,9 @@ msgid "%s group members"
msgstr "اعضای گروه %s"
#: actions/groupmembers.php:103
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group members, page %2$d"
-msgstr "اعضای گروه %sØŒ صÙحهٔ %d"
+msgstr "اعضای گروه %1$sØŒ صÙحهٔ %2$d"
#: actions/groupmembers.php:118
msgid "A list of the users in this group."
@@ -1734,34 +1859,38 @@ msgstr "یک Ùهرست از کاربران در این گروه"
msgid "Admin"
msgstr "مدیر"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "بازداشتن"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "کاربر یک مدیر گروه شود"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "مدیر شود"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "این کاربر یک مدیر شود"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "خط زمانی %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "به روز رسانی کابران %1$s در %2$s"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "گروه‌ها"
@@ -1780,13 +1909,13 @@ msgid ""
"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
"%%%%)"
msgstr ""
-"گروه های %%%site.name%%% به شما اجازه می‌دهد با کسانی که همانند شما علاقه‌مندی "
-"های خاصی دارد صحبت کنید. بعد از پیوستن به یک گروه می‌توانید به شکل !groupname "
-"به اعضای آن گروه پیام ارسال کنید .گروهی که دوست دارید را نمی‌بینید؟ می‌توانید "
-"برای یاÙتن آن [بگردید](%%%action.groupsearch%%%) یا آن را خودتان [ایجاد](%%%"
-"action.newgroup%%%) کنید."
+"گروه‌های %%%site.name%%% به شما اجازه می‌دهد با کسانی که همانند شما "
+"علاقه‌مندی‌های خاصی دارد صحبت کنید. بعد از پیوستن به یک گروه می‌توانید به شکل !"
+"groupname به تمام اعضای دیگر گروه پیام بÙرستید. گروهی را Ú©Ù‡ دوست دارید، "
+"نمی‌بینید؟ می‌توانید برای یاÙتن آن [بگردید](%%%action.groupsearch%%%) !یا [آن "
+"را خودتان بسازید] (%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "یک گروه جدید بساز"
@@ -1795,7 +1924,9 @@ msgstr "یک گروه جدید بساز"
msgid ""
"Search for groups on %%site.name%% by their name, location, or description. "
"Separate the terms by spaces; they must be 3 characters or more."
-msgstr "با وارد کردن ۳ حر٠و بیش‌تر در گروه‌های %%site.name%% جست‌و‌جو کنید."
+msgstr ""
+"برای جست‌وجوی گروه‌ها در %%site.name%% از نام، مکان یا توصیÙ‌شان استÙاده کنید. "
+"عبارت‌ها را با Ùاصله جدا کنید؛ آن‌ها باید Û³ نویسه یا بیش‌تر باشند."
#: actions/groupsearch.php:58
msgid "Group search"
@@ -1804,7 +1935,7 @@ msgstr "جست‌وجوی گروه"
#: actions/groupsearch.php:79 actions/noticesearch.php:117
#: actions/peoplesearch.php:83
msgid "No results."
-msgstr "بدون نتیجه."
+msgstr "نتیجه‌ای وجود ندارد."
#: actions/groupsearch.php:82
#, php-format
@@ -1836,12 +1967,15 @@ msgstr "کاربر از گروه منع نشده است."
msgid "Error removing the block."
msgstr "اشکال در پاکسازی"
-#: actions/imsettings.php:59
-#, fuzzy
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "تنظیمات پیام‌رسان Ùوری"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1850,15 +1984,24 @@ msgstr ""
"شما می‌توانید پیام‌های خود را با استÙاده از [پیام‌رسان‌های](%%doc.im%%) Jabber "
"یا Gtalk ارسال/دریاÙت کنید. نشانی خود را در این قسمت تنظیم کنید"
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "پیام‌رسان Ùوری در دسترس نیست."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "نشانی پیام‌رسان Ùوری"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "نشانی Jabber/GTalk تایید شده کنونی"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1867,12 +2010,9 @@ msgstr ""
"منتظر تایید این نشانی هستیم. لطÙا Jabber/Gtalk خود را برای دریاÙت توضیحات "
"بیش‌تر بررسی کنید. (آیا %s را به Ùهرست خود اضاÙÙ‡ کرده اید؟) "
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "نشانی پیام‌رسان Ùوری"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1881,60 +2021,102 @@ msgstr ""
"نشانی Jabber یا GTalkØŒ مانند «UserName@example.org». ابتدا از اضاÙÙ‡ کردن %s "
"به Ùهرست دوستان خود در کارگیر پیام‌رسان Ùوری‌تان یا در GTalk مطمئن شوید."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "ترجیحات پیام‌رسان Ùوری"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
-msgstr "آگهی‌ها را از راه Jabber/GTalk برای من بÙرست."
+msgstr "پیام‌ها را از راه Jabber/GTalk برای من بÙرست."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
-msgstr "هر وقت Ú©Ù‡ وضعیت Jabber/Gtalk من Ùرق کرد، یک پیام ارسال Ú©Ù†."
+msgstr "هر وقت Ú©Ù‡ وضعیت Jabber/Gtalk من تغییر کرد، یک پیام بÙرست."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
-msgstr ""
-"جواب کسانی که من آن ها را دنبال نمی‌کنم را با Jabber/Gtalk برایم ارسال کن."
+msgstr "پاسخ کسانی Ú©Ù‡ من آن‌ها را دنبال نمی‌کنم را با Jabber/Gtalk برایم بÙرست."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "یک شناسه‌ی کوچک برای Jabber/Gtalk من منتشر کن."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "تنظیمات ذخیره شد."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "هیچ شناسهٔ Jabber ای وجود ندارد."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "نمی‌توان شناسه‌ی Jabber را تایید کرد"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "شناسه‌ی Jabber درست نیست"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "این شناسه Jabber کنونی شماست."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
-msgstr "شناسه Jabber به یک کاربر دیگر مربوط است."
+msgstr "شناسهٔ Jabber به یک کاربر دیگر مربوط است."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-"کد تایید به پیام‌رسان شما ارسال شد. شما باید %s را تایید کنید تا پیام‌ها به "
-"شما ارسال شود."
+"یک کد تایید به نشانی پیام‌رسانی Ú©Ù‡ اضاÙÙ‡ کرده‌اید، Ùرستاده شد. شما باید %s را "
+"برای Ùرستادن پیام به شما، تایید کنید."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "نشانی پیام رسان اشتباه است."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "نمی‌توان تایید پیام‌رسان Ùوری را پاک کرد."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "تایید پیام‌رسان Ùوری لغو شد."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "این شناسه‌ی Jabber شما نیست."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "نشانی پیام‌رسان Ùوری پاک شده است."
+
#: actions/inbox.php:59
-#, fuzzy, php-format
+#, php-format
msgid "Inbox for %1$s - page %2$d"
-msgstr "صندوق ورودی %s"
+msgstr "صندوق ورودی %1$s - صÙحهٔ %2$d"
#: actions/inbox.php:62
#, php-format
@@ -1947,12 +2129,12 @@ msgstr "این صندوق ورودی‌های شماست که پیام‌های
#: actions/invite.php:39
msgid "Invites have been disabled."
-msgstr "دعوت‌کردن از کار انداخته شده‌است."
+msgstr "دعوت‌کردن از کار انداخته شده است."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "شما برای دعوت دیگران برای استÙاده از %s باید وارد شودید."
+msgid "You must be logged in to invite other users to use %s."
+msgstr "شما برای دعوت دیگران به استÙاده از %s باید وارد شده باشید."
#: actions/invite.php:72
#, php-format
@@ -1969,12 +2151,14 @@ msgstr "دعوت کردن کاربران تازه"
#: actions/invite.php:128
msgid "You are already subscribed to these users:"
-msgstr "هم اکنون شما این کاربران را دنبال می‌کنید: "
+msgstr "شما هم‌اکنون مشترک این کاربران هستید:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
-msgstr ""
+msgstr "%1$s (%2$s)"
#: actions/invite.php:136
msgid ""
@@ -1990,8 +2174,8 @@ msgid ""
"You will be notified when your invitees accept the invitation and register "
"on the site. Thanks for growing the community!"
msgstr ""
-"هر زمان که دعوت شدگان شما دعوتتان را بپذیرند شما با خبر خواهید شد. با تشکر "
-"از شما برای بزرگ کردن اجتماع کابران."
+"هر زمان که دعوت‌شدگان شما دعوت‌تان را بپذیرند، شما باخبر خواهید شد. از شما "
+"برای رشد اجتماع کاربران تشکر می‌کنیم!"
#: actions/invite.php:162
msgid ""
@@ -2013,21 +2197,22 @@ msgstr "پیام خصوصی"
#: actions/invite.php:194
msgid "Optionally add a personal message to the invitation."
-msgstr "اگر دوست دارید می‌توانید یک پیام به همراه دعوت نامه ارسال کنید."
+msgstr "در صورت تمایل می‌توانید یک پیام به همراه دعوت نامه بÙرستید."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Ùرستادن"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s شما را دعوت کرده است که در %2$s به آن‌ها بپیوندید."
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2057,129 +2242,157 @@ msgid ""
"\n"
"Sincerely, %2$s\n"
msgstr ""
+"%1$s شما را دعودت کرده است تا به آن‌ها در %2$s (%3$s) بپیوندید.\n"
+"\n"
+"%2$s یک سرویس میکروبلاگینگ است که به شما امکان می‌دهد که با کسانی که می‌شناسید "
+"و کسانی که به شما توجه دارند، به‌روز بمانید.\n"
+"\n"
+"شما همچنین می‌توانید خبرهایی دربارهٔ خودتان، اÙکارتان Ùˆ یا زندگی‌تان با کسانی "
+"که شما را می‌شناسند، به صورت آنلاین به اشتراک بگذارید.همچنین این راهی خوب "
+"برای ملاقات اÙراد تازه‌ای است Ú©Ù‡ علاقه‌مندی‌هایتان را با آن‌ها به اشتراک "
+"می‌گذارید.\n"
+"\n"
+"%1$sÚ¯Ùته است:\n"
+"\n"
+"%4$s\n"
+"\n"
+"شما می‌توانید صÙحهٔ نمایهٔ %1$s' را در %2$s این‌جا ببینید:\n"
+"\n"
+"%5$s\n"
+"\n"
+"اگر شما دوست دارید که سرویس را آزمایش کنید، روی پیوند زیر برای قبول دعوت "
+"کلیک کنید.\n"
+"\n"
+"%6$s\n"
+"\n"
+"اگر چنین نیست، شما می‌توانید این پیام را نادیده بگیرید. از شما برای طاقت و "
+"وقت‌تان تشکر می‌کنیم.\n"
+"\n"
+"با تشکر، %2$s\n"
#: actions/joingroup.php:60
msgid "You must be logged in to join a group."
msgstr "برای پیوستن به یک گروه، باید وارد شده باشید."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "بدون لقب."
+msgstr "نام‌مستعار یا شناسه‌ای وجود ندارد."
-#: actions/joingroup.php:141
-#, fuzzy, php-format
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
+#, php-format
msgid "%1$s joined group %2$s"
-msgstr "ملحق شدن به گروه"
+msgstr "%1$s به گروه %2$s پیوست"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
msgstr "برای ترک یک گروه، شما باید وارد شده باشید."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "شما یک کاربر این گروه نیستید."
-#: actions/leavegroup.php:137
-#, fuzzy, php-format
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
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:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "قبلا وارد شده"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
-msgstr "نام کاربری یا رمز عبور نادرست."
+msgstr "نام کاربری یا گذرواژه نادرست است."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
-msgstr "خطا در تنظیم کاربر. شما احتمالا اجازه ی این کار را ندارید."
+msgstr "خطا در تنظیم کاربر. شما احتمالا اجازهٔ این کار را ندارید."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "ورود"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "ورود به وب‌گاه"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "مرا به یاد بسپار"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "وارد شدن خودکار. نه برای کامپیوترهای مشترک!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
-msgstr "رمز عبور خود را Ú¯Ù… یا Ùراموش کرده اید؟"
+msgstr "گذرواژهٔ خود را Ú¯Ù… یا Ùراموش کرده‌اید؟"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
-"به دلایل امنیتی، لطÙا نام کاربری Ùˆ رمز عبور خود را قبل از تغییر تنظیمات "
+"به دلایل امنیتی، لطÙا نام کاربری Ùˆ گذرواژهٔ خود را قبل از تغییر تنظیمات "
"دوباره وارد نمایید."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "با نام‌کاربری و گذرواژه‌تان وارد شوید."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"با نام‌کاربری و گذزواژه‌ی خود وارد شوید. نام‌کاربری ندارید؟ یک نام‌کاربری [ثبت ]"
-"(%%action.register%%) کنید."
+"هنوز یک نام‌کاربری ندارید؟ یک حساب تازه [ثبت کنید](%%action.register%%)."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
msgstr "Ùقط یک مدیر می‌تواند کاربر دیگری را مدیر کند."
#: actions/makeadmin.php:96
-#, fuzzy, php-format
+#, php-format
msgid "%1$s is already an admin for group \"%2$s\"."
-msgstr "%s از قبل مدیر گروه %s بود."
+msgstr "%1$s از قبل مدیر گروه «%2$s» است."
#: actions/makeadmin.php:133
-#, fuzzy, php-format
+#, php-format
msgid "Can't get membership record for %1$s in group %2$s."
-msgstr "نمی‌توان اطلاعات عضویت %s را در گروه %s به دست آورد."
+msgstr "نمی‌توان پیشینهٔ عضویت %1$s را در گروه %2$s به‌دست آورد."
#: actions/makeadmin.php:146
-#, fuzzy, php-format
+#, php-format
msgid "Can't make %1$s an admin for group %2$s."
-msgstr "نمی‌توان %s را مدیر گروه %s کرد."
+msgstr "نمی‌توان %1$s را یکی از مدیران گروه %2$s کرد."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "بدون وضعیت Ùعلی"
+msgid "No current status."
+msgstr "وضعیت Ùعلی وجود ندارد."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "چنین پیامی وجود ندارد."
+msgstr "برنامهٔ تازه"
#: actions/newapplication.php:64
-#, fuzzy
msgid "You must be logged in to register an application."
-msgstr "برای ساخت یک گروه، باید وارد شده باشید."
+msgstr "برای ثبت یک برنامه باید وارد شده باشید."
#: actions/newapplication.php:143
-#, fuzzy
msgid "Use this form to register a new application."
-msgstr "از این Ùرم برای ساختن یک گروه جدید استÙاده کنید"
+msgstr "از این شیوه برای ساختن یک برنامهٔ تازه استÙاده کنید."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr ""
+msgstr "نشانی اینترنتی منبع مورد نیاز است."
#: actions/newapplication.php:258 actions/newapplication.php:267
-#, fuzzy
msgid "Could not create application."
-msgstr "نمی‌توان نام‌های مستعار را ساخت."
+msgstr "نمی‌توان برنامه را ساخت."
#: actions/newgroup.php:53
msgid "New group"
@@ -2193,20 +2406,20 @@ msgstr "از این Ùرم برای ساختن یک گروه جدید استÙا
msgid "New message"
msgstr "پیام جدید"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "شما نمی توانید به این کاربر پیام بÙرستید."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
-msgstr "بدون محتوا!"
+msgstr "محتوایی وحود ندارد!"
#: actions/newmessage.php:158
msgid "No recipient specified."
msgstr "هیچ گیرنده ای مشخص نشده"
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "یک پیام را به خودتان Ù†Ùرستید؛ در عوض آن را آهسته برای خود بگویید."
@@ -2216,21 +2429,21 @@ msgid "Message sent"
msgstr "پیام Ùرستاده‌شد"
#: actions/newmessage.php:185
-#, fuzzy, php-format
+#, php-format
msgid "Direct message to %s sent."
msgstr "پیام مستقیم به %s Ùرستاده شد."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
-msgstr "اشکال آژاکسی"
+msgstr "خطای آژاکس"
#: actions/newnotice.php:69
msgid "New notice"
-msgstr "آگهی جدید"
+msgstr "پیام جدید"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
-msgstr "Ø¢Ú¯Ù‡ÛŒ Ùرستاده‌شد."
+msgstr "پیام Ùرستاده‌شد."
#: actions/noticesearch.php:68
#, php-format
@@ -2238,8 +2451,8 @@ msgid ""
"Search for notices on %%site.name%% by their contents. Separate search terms "
"by spaces; they must be 3 characters or more."
msgstr ""
-"جست‌و‌جوی متن پیام‌ها در %%site.name%%. هر شرط را با Ùاصله جدا کنید Ùˆ کمینه‌ی "
-"جست‌و‌جو باید ۳ حر٠باشد."
+"برای جست‌وجوی پیام‌ها در %%site.name%% از محتوایشان استÙاده کنید. عبارت‌ها را "
+"با Ùاصله جدا کنید؛ آن‌ها باید Û³ نویسه یا بیش‌تر باشند."
#: actions/noticesearch.php:78
msgid "Text search"
@@ -2279,84 +2492,88 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "پیام‌هایی Ú©Ù‡ با جست‌و‌جوی عبارت »%1$s« در %s یاÙت شدند."
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"این کاربر اجازه‌ی سقلمه زدن را نداده است یا پست‌الکترونیک خود را تایید نکرده "
-"است."
+"این کاربر اجازه‌ی یادآوری‌کردن را نداده است یا پست‌الکترونیک خود را تایید یا "
+"تعیین نکرده است."
#: actions/nudge.php:94
msgid "Nudge sent"
-msgstr "Ùرتادن اژیر"
+msgstr "یادآوری Ùرستاده‌شد"
#: actions/nudge.php:97
msgid "Nudge sent!"
-msgstr "سقلمه Ùرستاده شد!"
+msgstr "یادآوری Ùرستاده‌شد!"
#: actions/oauthappssettings.php:59
-#, fuzzy
msgid "You must be logged in to list your applications."
-msgstr "برای ویرایش گروه باید وارد شوید."
+msgstr "برای Ùهرست‌کردن برنامه‌هایتان باید وارد شده باشید."
#: actions/oauthappssettings.php:74
-#, fuzzy
msgid "OAuth applications"
-msgstr "انتخابات دیگر"
+msgstr "برنامه‌های OAuth"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "برنامه‌هایی که ثبت کرده‌اید"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "شما هنوز هیچ برنامه‌ای را ثبت نکرده‌اید."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "برنامه‌های وصل‌شده"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "شما به برنامه‌های زیر اجازه داده‌اید که به حساب‌تان دسترسی پیدا کنند."
#: actions/oauthconnectionssettings.php:175
-#, fuzzy
msgid "You are not a user of that application."
-msgstr "شما یک کاربر این گروه نیستید."
+msgstr "شما یک کاربر این برنامه نیستید."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr ""
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "نمی‌توان دسترسی را برای برنامهٔ %s لغو کرد."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
-msgstr ""
+msgstr "شما به هیچ برنامه‌ای اجازه نداده‌اید Ú©Ù‡ از حساب‌تان استÙاده کند."
#: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications "
msgstr ""
+"توسعه‌دهنده‌ها می‌توانند تنظیمات نام‌نویسی را برای برنامه‌هایشان ویرایش کنند "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "ابن خبر ذخیره ای ندارد ."
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "این پیام نمایه‌ای ندارد."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "وضعیت %1$s در %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "نوع محتوا "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "نوع محتوای %s پشتیبانی نشده است."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr " Ùقط"
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "لطÙا تنها از نشانی‌های اینترنتی %s از راه HTTP ساده استÙاده کنید."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "یک قالب دادهٔ پشتیبانی‌شده نیست."
@@ -2366,10 +2583,9 @@ msgstr "جست‌وجوی کاربران"
#: actions/opensearch.php:67
msgid "Notice Search"
-msgstr "جست‌وجوی آگهی‌ها"
+msgstr "جست‌وجوی پیام‌ها"
#: actions/othersettings.php:60
-#, fuzzy
msgid "Other settings"
msgstr "تنظیمات دیگر"
@@ -2391,44 +2607,40 @@ msgstr "کوتاه‌کننده‌ی نشانی مورد استÙاده."
#: actions/othersettings.php:122
msgid "View profile designs"
-msgstr "نمایش طراحی های پروÙایل"
+msgstr "نمایش طراحی‌های نمایه"
#: actions/othersettings.php:123
msgid "Show or hide profile designs."
-msgstr "نمایش یا عدم‌نمایش طراحی‌های کاربران."
+msgstr "نمایش دادن یا پنهان کردن طراحی‌های نمایه."
#: actions/othersettings.php:153
msgid "URL shortening service is too long (max 50 chars)."
msgstr "کوتاه کننده‌ی نشانی بسیار طولانی است (بیش‌تر از ÛµÛ° حرÙ)."
#: actions/otp.php:69
-#, fuzzy
msgid "No user ID specified."
-msgstr "گروهی مشخص نشده است."
+msgstr "هیچ شناسهٔ کاربری مشخص نشده است."
#: actions/otp.php:83
-#, fuzzy
msgid "No login token specified."
-msgstr "خبری مشخص نشده."
+msgstr "هیچ رمز ورودی مشخص نشده است."
#: actions/otp.php:90
msgid "No login token requested."
-msgstr ""
+msgstr "هیچ رمز ورودی درخواست نشده است."
#: actions/otp.php:95
-#, fuzzy
msgid "Invalid login token specified."
-msgstr "علامت بی اعتبار یا منقضی."
+msgstr "رمز ورود مشخص شده نامعتبر است."
#: actions/otp.php:104
-#, fuzzy
msgid "Login token expired."
-msgstr "ورود به وب‌گاه"
+msgstr "رمز ورود منسوخ شده است."
#: actions/outbox.php:58
-#, fuzzy, php-format
+#, php-format
msgid "Outbox for %1$s - page %2$d"
-msgstr "Ùرستاده‌های %s"
+msgstr "صندوق خروجی %1$s - صÙحهٔ %2$d"
#: actions/outbox.php:61
#, php-format
@@ -2438,8 +2650,8 @@ msgstr "Ùرستاده‌های %s"
#: actions/outbox.php:116
msgid "This is your outbox, which lists private messages you have sent."
msgstr ""
-"این صندوق خروجی شماست، Ú©Ù‡ پیام های خصوصی Ùرستاده شده به وسیله ÛŒ شما را لیست "
-"می کند."
+"این صندوق خروجی شماست، Ú©Ù‡ پیام‌های خصوصی Ùرستاده شده به وسیلهٔ شما را Ùهرست "
+"می‌کند."
#: actions/passwordsettings.php:58
msgid "Change password"
@@ -2447,7 +2659,7 @@ msgstr "تغییر گذرواژه"
#: actions/passwordsettings.php:69
msgid "Change your password."
-msgstr "تغییر گذرواژه‌تان"
+msgstr "تغییر گذرواژهٔ شما"
#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
msgid "Password change"
@@ -2455,89 +2667,89 @@ msgstr "تغییر گذرواژه"
#: actions/passwordsettings.php:104
msgid "Old password"
-msgstr "گذرواژهٔ قدیمی"
+msgstr "گذرواژهٔ پیشین"
#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
msgid "New password"
-msgstr "گذرواژهٔ جدید"
+msgstr "گذرواژهٔ تازه"
#: actions/passwordsettings.php:109
msgid "6 or more characters"
msgstr "۶ نویسه یا بیش‌تر"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "تایید"
#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
msgid "Same as password above"
-msgstr "مثل رمز عبور بالا"
+msgstr "مانند گذرواژهٔ بالا"
#: actions/passwordsettings.php:117
msgid "Change"
msgstr "تغییر"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "گذرواژه باید ۶ نویسه یا بیش‌تر باشد."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "گذرواژه‌ها مطابقت ندارند."
#: actions/passwordsettings.php:165
msgid "Incorrect old password"
-msgstr "گذرواژه قدیمی اشتباه است"
+msgstr "گذرواژه پیشین اشتباه است"
#: actions/passwordsettings.php:181
msgid "Error saving user; invalid."
-msgstr "خطا هنگام ذخیره ی کاربر؛ نا معتبر."
+msgstr "هنگام ذخیرهٔ کاربر خطا رخ داد؛ نامعتبر است."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
-msgstr "نمی‌توان گذرواژه جدید را ذخیره کرد."
+msgstr "نمی‌توان گذرواژهٔ جدید را ذخیره کرد."
#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
msgid "Password saved."
msgstr "گذرواژه ذخیره شد."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "مسیر ها"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
-msgstr "تنظیمات و نشانی محلی این سایت استاتوس‌نتی"
+msgstr "تنظیمات و نشانی محلی این وب‌گاه StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "شاخه‌ی پوسته‌ها خواندنی نیست: %s"
+msgid "Theme directory not readable: %s."
+msgstr "شاخه‌ی پوسته‌ها قابل خواندن نیست: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "شاخه‌ی چهره‌ها نوشتنی نیست: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "شاخه‌ی تصویر چهره‌ها قابل نوشتن نیست: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "شاخه‌ی پس زمینه‌ها نوشتنی نیست: %s"
+msgid "Background directory not writable: %s."
+msgstr "شاخه‌ی پس زمینه‌ها قابل نوشتن نیست: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "پوشه‌ی تنظیمات محلی خواندنی نیست: %s"
+msgid "Locales directory not readable: %s."
+msgstr "پوشه‌ی تنظیمات محلی قابل خواندن نیست: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
-msgstr ""
+msgstr "کارگزار SSL نامعتبر است. بیشینهٔ طول نام ۲۵۵ نویسه است."
#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
msgid "Site"
-msgstr "سایت"
+msgstr "وب‌گاه"
#: actions/pathsadminpanel.php:238
msgid "Server"
@@ -2545,7 +2757,7 @@ msgstr "کارگزار"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
-msgstr ""
+msgstr "نام میزبان کارگزار وب‌گاه."
#: actions/pathsadminpanel.php:242
msgid "Path"
@@ -2561,15 +2773,15 @@ msgstr "نشانی تنظیمات محلی"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
-msgstr ""
+msgstr "مسیر پوشه برای زبان‌های محلی"
#: actions/pathsadminpanel.php:250
msgid "Fancy URLs"
-msgstr ""
+msgstr "نشانی‌های تمیز"
#: actions/pathsadminpanel.php:252
msgid "Use fancy (more readable and memorable) URLs?"
-msgstr ""
+msgstr "از نشانی‌های تمیز (خواناتر Ùˆ ماندگارتر در ذهن) استÙاده شود؟"
#: actions/pathsadminpanel.php:259
msgid "Theme"
@@ -2593,7 +2805,7 @@ msgstr "چهره‌ها"
#: actions/pathsadminpanel.php:284
msgid "Avatar server"
-msgstr "کارگزار نیم‌رخ"
+msgstr "کارگزار چهره‌ها"
#: actions/pathsadminpanel.php:288
msgid "Avatar path"
@@ -2641,16 +2853,15 @@ msgstr "استÙاده از SSL"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
-msgstr ""
+msgstr "زمان استÙاده از SSL"
#: actions/pathsadminpanel.php:335
-#, fuzzy
msgid "SSL server"
-msgstr "کارگزار"
+msgstr "کارگزار SSL"
#: actions/pathsadminpanel.php:336
msgid "Server to direct SSL requests to"
-msgstr ""
+msgstr "کارگزار برای هدایت درخواست‌های SSL به"
#: actions/pathsadminpanel.php:352
msgid "Save paths"
@@ -2662,97 +2873,98 @@ msgid ""
"Search for people on %%site.name%% by their name, location, or interests. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
-"جست‌و‌جو اÙراد در %%site.name%% با نام، محل زندگی یا چیز‌هایی Ú©Ù‡ دوست دارند. "
-"عبارت‌ها را با Ùاصله از هم جدا کنید Ùˆ حداقل Û³ حر٠وارد کنید."
+"برای جست‌وجوی اÙراد در %%site.name%% از نام، مکان یا توصیÙ‌شان استÙاده کنید. "
+"عبارت‌ها را با Ùاصله جدا کنید؛ آن‌ها باید Û³ نویسه یا بیش‌تر باشند."
#: actions/peoplesearch.php:58
msgid "People search"
msgstr "جست‌وجوی کاربران"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "یک برچسب کاربری معتبر نیست: %s"
+msgid "Not a valid people tag: %s."
+msgstr "یک برچسب کاربری معتبر نیست: %s."
-#: actions/peopletag.php:144
-#, fuzzy, php-format
+#: actions/peopletag.php:142
+#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
-msgstr "کاربران خود برچسب‌گذاری شده با %s - صÙحهٔ %d"
+msgstr "کاربران خود برچسب‌گذاری شده با %1$s - صÙحهٔ %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "محتوای آگهی نامعتبر"
+msgid "Invalid notice content."
+msgstr "محتوای پیام نامعتبر است."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
-msgstr ""
+msgstr "مجوز پیام «%1$s» با مجوز وب‌گاه «%2$s» سازگار نیست."
#: actions/profilesettings.php:60
msgid "Profile settings"
-msgstr "تنظیمات شناس‌نامه"
+msgstr "تنظیمات نمایه"
#: actions/profilesettings.php:71
msgid ""
"You can update your personal profile info here so people know more about you."
msgstr ""
-"شما می‌توان اطلاعات شخصی خود را در این قسمت به روز کنید تا دیگران بیش‌تر در "
-"مورد شما بدانند."
+"شما می‌توانید نمایهٔ شخصی خود را در این بخش به‌هنگام‌سازی کنید تا دیگران بیش‌تر "
+"در مورد شما بدانند."
#: actions/profilesettings.php:99
msgid "Profile information"
-msgstr "اطلاعات شناس‌نامه"
+msgstr "اطلاعات نمایه"
#: actions/profilesettings.php:108 lib/groupeditform.php:154
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "Û±-Û¶Û´ کاراکتر Ú©ÙˆÚ†Ú© یا اعداد، بدون نقطه گذاری یا Ùاصله"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "نام‌کامل"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "صÙحهٔ خانگی"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
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:468
#, php-format
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:471
msgid "Describe yourself and your interests"
-msgstr "خودتان و علایقتان را توصی٠کنید."
+msgstr "خودتان و علاقه‌مندی‌هایتان را توصی٠کنید"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "شرح‌حال"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "موقعیت"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr ""
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
-msgstr ""
+msgstr "مکان کنونی من هنگام Ùرستادن پیام‌ها به اشتراک گذاشته شود"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "برچسب‌ها"
@@ -2760,6 +2972,7 @@ msgstr "برچسب‌ها"
msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
msgstr ""
+"برچسب‌ها برای خودتان (حروÙØŒ اعداد، -ØŒ .ØŒ Ùˆ _) جدا شده با کاما- یا Ùاصله-"
#: actions/profilesettings.php:151
msgid "Language"
@@ -2775,17 +2988,18 @@ msgstr "منطقهٔ‌زمانی"
#: actions/profilesettings.php:162
msgid "What timezone are you normally in?"
-msgstr "شما معمولا در کدام منطقه ی زمانی هستید؟"
+msgstr "شما معمولا در کدام منطقهٔ زمانی هستید؟"
#: actions/profilesettings.php:167
msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
+"به صورت خودکار مشترک هر کسی بشو که مشترک من می‌شود (بهترین برای غیر انسان‌ها)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
-msgstr ""
+msgstr "شرح‌حال خیلی طولانی است (بیشینه %d نویسه)."
#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
msgid "Timezone not selected."
@@ -2793,7 +3007,7 @@ msgstr "منطقه‌ی زمانی انتخاب نشده است."
#: actions/profilesettings.php:241
msgid "Language is too long (max 50 chars)."
-msgstr "کلام بسیار طولانی است( حداکثر ۵۰ کاراکتر)"
+msgstr "زبان بسیار طولانی است ( حداکثر ۵۰ نویسه)"
#: actions/profilesettings.php:253 actions/tagother.php:178
#, php-format
@@ -2802,7 +3016,7 @@ msgstr "نشان نادرست »%s«"
#: actions/profilesettings.php:306
msgid "Couldn't update user for autosubscribe."
-msgstr ""
+msgstr "نمی‌توان کاربر را برای اشتراک خودکار به‌هنگام‌سازی کرد."
#: actions/profilesettings.php:363
msgid "Couldn't save location prefs."
@@ -2810,7 +3024,7 @@ msgstr "نمی‌توان تنظیمات مکانی را تنظیم کرد."
#: actions/profilesettings.php:375
msgid "Couldn't save profile."
-msgstr "نمی‌توان شناسه را ذخیره کرد."
+msgstr "نمی‌توان نمایه را ذخیره کرد."
#: actions/profilesettings.php:383
msgid "Couldn't save tags."
@@ -2823,12 +3037,12 @@ msgstr "تنظیمات ذخیره شد."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
msgid "Could not retrieve public stream."
-msgstr ""
+msgstr "نمی‌توان جریان عمومی را دریاÙت کرد."
#: actions/public.php:130
#, php-format
@@ -2841,15 +3055,15 @@ msgstr "خط زمانی عمومی"
#: actions/public.php:160
msgid "Public Stream Feed (RSS 1.0)"
-msgstr ""
+msgstr "خوراک جریان عمومی (RSS 1.0)"
#: actions/public.php:164
msgid "Public Stream Feed (RSS 2.0)"
-msgstr ""
+msgstr "خوراک جریان عمومی (RSS 2.0)"
#: actions/public.php:168
msgid "Public Stream Feed (Atom)"
-msgstr ""
+msgstr "خوراک جریان عمومی (Atom)"
#: actions/public.php:188
#, php-format
@@ -2857,6 +3071,7 @@ msgid ""
"This is the public timeline for %%site.name%% but no one has posted anything "
"yet."
msgstr ""
+"این خط‌زمانی عمومی برای %%site.name%% است، اما هیچ‌کس هنوز چیزی Ù†Ùرستاده است."
#: actions/public.php:191
msgid "Be the first to post!"
@@ -2876,6 +3091,11 @@ msgid ""
"tool. [Join now](%%action.register%%) to share notices about yourself with "
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
+"این %%site.name%%، یک سرویس [میکروبلاگینگ](http://fa.wikipedia.org/wiki/%D9%"
+"85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%DB%8C%D9%86%DA%AF) بر "
+"پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/) است. ]اکنون بپیوندید[(%%"
+"action.register%%) تا آگاهی‌هایی را دربارهٔ خودتان با دوستان، خانواده و "
+"همکاران‌تان به اشتراک بگذارید! ([بیش‌تر بخوانید](%%doc.help%%))"
#: actions/public.php:247
#, php-format
@@ -2884,24 +3104,27 @@ msgid ""
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
+"این %%site.name%%، یک سرویس [میکروبلاگینگ](http://fa.wikipedia.org/wiki/%D9%"
+"85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%DB%8C%D9%86%DA%AF) بر "
+"پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/) است."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
-msgstr ""
+msgstr "ابر برچسب عمومی"
#: actions/publictagcloud.php:63
#, php-format
msgid "These are most popular recent tags on %s "
-msgstr ""
+msgstr "این‌ها محبوب‌ترین برچسب‌های اخیر روی %s هستند "
#: actions/publictagcloud.php:69
#, php-format
msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
-msgstr ""
+msgstr "هیچ‌کس هنوز پیامی با یک [برچسب](%%doc.tags%%) Ù†Ùرستاده است."
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
-msgstr ""
+msgstr "اولین Ù†Ùری باشید Ú©Ù‡ چیزی می‌Ùرستد!"
#: actions/publictagcloud.php:75
#, php-format
@@ -2909,10 +3132,12 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to post "
"one!"
msgstr ""
+"چرا به [باز کردن یک حساب](%%action.register%%) اقدام نمی‌کنید Ùˆ اولین Ù†Ùری "
+"باشید Ú©Ù‡ چیزی می‌Ùرستد!"
#: actions/publictagcloud.php:134
msgid "Tag cloud"
-msgstr ""
+msgstr "ابر برچسب"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
@@ -2947,24 +3172,25 @@ msgid ""
"If you have forgotten or lost your password, you can get a new one sent to "
"the email address you have stored in your account."
msgstr ""
-"اگر شما کلمه ÛŒ عبورتان را Ùراموش کرده اید یا Ú¯Ù… کرده اید، Ù…ÛŒ توانید یک کلمه "
-"ی عبور جدید از آدرس ایمیل ذخیره شده در حسابتان بگیرید."
+"اگر شما گذرواژهٔ خودتان را Ú¯Ù… یا Ùراموش کرده‌اید، شما می‌توانید یکی جدیدتر را "
+"Ú©Ù‡ به نشانی پست الکترونیکی‌تان Ú©Ù‡ در حساب‌تان ذخیره کرده‌اید Ùرستاده شده است، "
+"بگیرید."
#: actions/recoverpassword.php:158
msgid "You have been identified. Enter a new password below. "
-msgstr ""
+msgstr "هویت شما شناسایی شد. یک گذرواژه تازه را در زیر وارد کنید. "
#: actions/recoverpassword.php:188
msgid "Password recovery"
-msgstr "بازیابی کلمه ی عبور"
+msgstr "بازیابی گذرواژه"
#: actions/recoverpassword.php:191
msgid "Nickname or email address"
-msgstr "نام کاربری یا آدرس ایمیل"
+msgstr "نام کاربری یا نشانی پست الکترونیکی"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
-msgstr "نام کاربری شما بر روی این سرور، یا آدرس ایمیل ثبت شده ی شما."
+msgstr "نام کاربری شما بر روی این سرور، یا نشانی پست الکترونیکی ثبت شدهٔ شما."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
msgid "Recover"
@@ -2972,152 +3198,170 @@ msgstr "بازیابی"
#: actions/recoverpassword.php:208
msgid "Reset password"
-msgstr "ریست کردن کلمه ی عبور"
+msgstr "بازنشانی گذرواژه"
#: actions/recoverpassword.php:209
msgid "Recover password"
-msgstr "بازیابی کلمه ی عبور"
+msgstr "بازیابی گذرواژه"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
-msgstr "بازیابی کلمه ی عبور درخواست شد"
+msgstr "بازیابی گذرواژه درخواست شد"
#: actions/recoverpassword.php:213
msgid "Unknown action"
-msgstr ""
+msgstr "عمل نامعلوم"
#: actions/recoverpassword.php:236
msgid "6 or more characters, and don't forget it!"
-msgstr "Û¶ کاراکتر یا بیشتر، این را Ùراموش نکنید!"
+msgstr "Û¶ نویسه یا بیش‌تر، Ùˆ این را Ùراموش نکنید!"
#: actions/recoverpassword.php:243
msgid "Reset"
-msgstr "ریست( راه انداری مجدد )"
+msgstr "بازنشاندن"
#: actions/recoverpassword.php:252
msgid "Enter a nickname or email address."
-msgstr "یک نام کاربری یا آدرس ایمیل وارد کنید."
+msgstr "یک نام کاربری یا نشانی پست الکترونیکی وارد کنید."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
-msgstr "هیچ کاربری با آن آدرس ایمیل یا نام کاربری وجود ندارد."
+msgstr "هیچ کاربری با آن نشانی پست الکترونیکی یا نام کاربری وجود ندارد."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
-msgstr "برای آن کاربر آدرس ایمیل ثبت شده وجود ندارد."
+msgstr "برای آن کاربر نشانی پست الکترونیکی ثبت شده وجود ندارد."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
-msgstr "خطا هنگام ذخیره ی تاییدیه ی آدرس."
+msgstr "هنگام ذخیرهٔ تایید نشانی خطا رخ داد."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-"دستورالعمل چگونگی بازیابی کلمه ی عبور به آدرس ایمیل ثبت شده در حساب شما "
-"ارسال شده است."
+"راهنمای چگونگی بازیابی گذرواژه به نشانی پست الکترونیکی ثبت شده در حساب شما "
+"Ùرستاده شده است."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
-msgstr "کلمه ی عبور به طور غیر منتظره ریست شد."
+msgstr "گذرواژه به طور غیر منتظره ریست شد."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
-msgstr "کلمه ی عبور باید ۶ کاراکتر یا بیشتر باشد."
+msgstr "گذرواژه باید ۶ نویسه یا بیش‌تر باشد."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
-msgstr "کلمه ی عبور و تاییدیه ی آن با هم تطابق ندارند."
+msgstr "گذرواژه و تاییدیهٔ آن با هم تطابق ندارند."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
-msgstr ""
+msgstr "هنگام گذاشتن کاربر خطا روی داد."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
-msgstr "کلمه ÛŒ عبور جدید با موÙقیت ذخیره شد. شما الان وارد شده اید."
+msgstr "گذرواژه تازه با موÙقیت ذخیره شد. شما اکنون وارد شده‌اید."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "با عرض معذرت، تنها اÙراد دعوت شده Ù…ÛŒ توانند ثبت نام کنند."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "با عرض تاسÙØŒ کد دعوت نا معتبر است."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "ثبت نام با موÙقیت انجام شد."
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "ثبت نام"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "اجازه‌ی ثبت نام داده نشده است."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "شما نمی توانید ثبت نام کنید اگر با لیسانس( جواز ) مواÙقت نکنید."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
-msgstr "آدرس ایمیل از قبل وجود دارد."
+msgstr "نشانی پست الکترونیکی از قبل وجود دارد."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
-msgstr "نام کاربری یا کلمه ی عبور نا معتبر."
+msgstr "نام کاربری یا گذرواژه نا معتبر است."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
+"با این Ùرم شما می‌توانید یک حساب تازه بسازید. سپس شما می‌توانید پیام بÙرستید Ùˆ "
+"به دوستان و همکارانتان بپیوندید. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "Û±-Û¶Û´ حر٠کوچک یا اعداد، بدون نشانه گذاری یا Ùاصله نیاز است."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
-msgstr "۶ کاراکتر یا بیشتر نیاز است."
+msgstr "۶ نویسه یا بیش‌تر مورد نیاز است."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
-msgstr ""
+msgstr "با گذرواژهٔ بالا یکسان باشد. مورد نیاز است."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "پست الکترونیکی"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
-msgstr ""
+msgstr "تنها برای به‌هنگام‌سازی‌ها، اعلامیه‌ها و بازیابی گذرواژه به کار می‌رود"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "نام بلند تر، به طور بهتر نام واقعیتان"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr ""
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "من متوجه هستم که محتوا و داده‌های %1$s خصوصی و محرمانه هستند."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr ""
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "متن و پرونده‌های من دارای حق تکثیر %1$s هستند."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "متن و پرونده‌های من زیر حق تکثیر خودم می‌مانند."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "تمام حقوق محÙوظ است."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-"به استثنای این داده ی محرمانه : کلمه ی عبور، آدرس ایمیل، آدرس IM، و شماره "
-"تلÙÙ†."
+"نوشته‌ها و پرونده‌های من به جز داده‌های خصوصی گذرواژه، نشانی پست الکترونیک، "
+"نشانی پیام‌رسان Ùوری Ùˆ شماره تلÙÙ† زیر مجوز %s هستند."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3135,14 +3379,29 @@ msgid ""
"\n"
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
+"به شما تبریک می‌گوییم، %1$s! و به %%%%site.name%%%% خوش آمدید. از این‌جا، شما "
+"ممکن است بخواهید...\n"
+"\n"
+"* به [نمایه‌تان](%2$s) بروید Ùˆ اولین پیام‌تان را بÙرستید.\n"
+"* یک [Jabber/GTalk نشانی](%%%%action.imsettings%%%%) اضاÙÙ‡ کنید. در این‌صورت "
+"می‌توانیدپیام‌ها را از راه پیام‌های Ùوری بÙرستید.\n"
+"* [به دنبال اÙراد دیگر بگردید](%%%%action.peoplesearch%%%%) Ú©Ù‡ ممکن است آن‌ها "
+"را بشناسید و یا علاقه‌مندی‌هایتان را به اشتراک بگذارید. \n"
+"* [تنظیمات نمایه‌تان](%%%%action.profilesettings%%%%) را به هنگام‌سازی کنید تا "
+"به دیگران بیش‌تر در مورد خودتان بگویید. \n"
+"* برای ویژگی‌هایی که گم کرده‌اید، [اسناد آنلاین](%%%%doc.help%%%%) را "
+"بخوانید. \n"
+"\n"
+"از این‌که نام‌نویسی کرده‌اید، تشکر می‌کنیم Ùˆ امیدواریم Ú©Ù‡ از استÙاده از این "
+"سرویس لذت ببرید."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
msgstr ""
-"(شما باید آنی یک ایمیل دریاÙت کنید، با دستورالعمل چگونگی تایید آدرس ایمیلتان."
-"("
+"(شما هر لحظه باید یک پیام با پست الکترونیکی با راهنمای چگونگی تایید نشانی "
+"پست الکترونیک‌تان دریاÙت کنید.)"
#: actions/remotesubscribe.php:98
#, php-format
@@ -3151,14 +3410,17 @@ msgid ""
"register%%) a new account. If you already have an account on a [compatible "
"microblogging site](%%doc.openmublog%%), enter your profile URL below."
msgstr ""
+"برای اشتراک، شما می‌توانید ]وارد[(%%action.login%%) شوید، یا یک حساب جدید ]"
+"ثبت کنید[(%%action.register%%). اگر شما یک حساب در یک ]وب‌گاه میکروبلاگینگ "
+"سازگار[(%%doc.openmublog%%) دارید، نشانی نمایهٔ خود را در زیر وارد کنید."
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
-msgstr ""
+msgstr "اشتراک از راه دور"
#: actions/remotesubscribe.php:124
msgid "Subscribe to a remote user"
-msgstr ""
+msgstr "اشتراک یک کاربر از راه دور"
#: actions/remotesubscribe.php:129
msgid "User nickname"
@@ -3170,56 +3432,58 @@ msgstr "نام کاربری، کاربری که می خواهید او را دن
#: actions/remotesubscribe.php:133
msgid "Profile URL"
-msgstr ""
+msgstr "نشانی نمایه"
#: actions/remotesubscribe.php:134
msgid "URL of your profile on another compatible microblogging service"
-msgstr ""
+msgstr "نشانی اینترنتی نمایهٔ شما در سرویس میکروبلاگینگ سازگار دیگری"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
-msgstr ""
+msgstr "اشتراک"
#: actions/remotesubscribe.php:159
msgid "Invalid profile URL (bad format)"
-msgstr ""
+msgstr "نشانی اینترنتی نمایه نامعتبر است (Ùرمت نامناسب است)"
#: actions/remotesubscribe.php:168
msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
msgstr ""
+"این یک نشانی نمایهٔ صحیح نیست (هیچ سند YADIS وجود ندارد و یا XRDS مشخص شده "
+"نامعتبر است)."
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "این یک نمایهٔ محلی است! برای اشتراک وارد شوید."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
-msgstr ""
+msgstr "نمی‌توان یک نشانهٔ درخواست را به‌دست آورد."
#: actions/repeat.php:57
msgid "Only logged-in users can repeat notices."
-msgstr "تنها کاربران وارد شده می توانند آگهی ها را تکرار کنند."
+msgstr "تنها کاربران وارد شده می توانند پیام‌ها را تکرار کنند."
#: actions/repeat.php:64 actions/repeat.php:71
msgid "No notice specified."
-msgstr "خبری مشخص نشده."
+msgstr "هیچ پیامی مشخص نشده است."
#: actions/repeat.php:76
msgid "You can't repeat your own notice."
-msgstr "شما نمی توانید آگهی خودتان را تکرار کنید."
+msgstr "شما نمی‌توانید پیام خودتان را تکرار کنید."
#: actions/repeat.php:90
msgid "You already repeated that notice."
-msgstr "شما قبلا آن آگهی را تکرار کردید."
+msgstr "شما قبلا آن پیام را تکرار کرده‌اید."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
-msgstr ""
+msgstr "تکرار شده"
#: actions/repeat.php:119
msgid "Repeated!"
-msgstr ""
+msgstr "تکرار شد!"
#: actions/replies.php:126 actions/repliesrss.php:68
#: lib/personalgroupnav.php:105
@@ -3228,9 +3492,9 @@ msgid "Replies to %s"
msgstr "پاسخ‌های به %s"
#: actions/replies.php:128
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s, page %2$d"
-msgstr "پاسخ‌های به %s"
+msgstr "پاسخ‌های به %1$sØŒ صÙحهٔ %2$d"
#: actions/replies.php:145
#, php-format
@@ -3251,8 +3515,10 @@ msgstr "خوراک پاسخ‌ها برای %s (Atom)"
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
-msgstr "این خط‌زمانی %s و دوستانش است، اما هیچ‌یک تاکنون چیزی پست نکرده‌اند."
+"notice to them yet."
+msgstr ""
+"این خط‌زمانی است که پاسخ‌ها به %1$s را نشان می‌دهد، اما %2$s هنوز یک پیام به "
+"توجه‌اش دریاÙت نکرده است."
#: actions/replies.php:204
#, php-format
@@ -3260,32 +3526,32 @@ msgid ""
"You can engage other users in a conversation, subscribe to more people or "
"[join groups](%%action.groups%%)."
msgstr ""
+"شما می‌توانید کاربران دیگر را در یک Ú¯Ùت‌وگو سرگرم کنید، مشترک اÙراد بیش‌تری "
+"شوید یا [به گروه‌ها بپیوندید](%%action.groups%%)."
#: actions/replies.php:206
#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"اولین کسی باشید که در [این موضوع](%%%%action.newnotice%%%%?status_textarea=%"
-"s) پیام می‌Ùرستد."
+"شما می‌توانید [یادآوری %1$s](../%2$s) را امتحان کنید یا [به توجه او چیزی "
+"بÙرستید](%%%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
msgid "Replies to %1$s on %2$s!"
-msgstr ""
+msgstr "پاسخ‌های به %1$s در %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "شما نمی توانید کاربری را در این سایت ساکت کنید."
+msgstr "شما نمی‌توانید نقش‌های کاربری را در این وب‌گاه لغو کنید."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "کاربر بدون مشخصات"
+msgstr "کاربر این نقش را ندارد."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "وضعیت حذ٠شد."
@@ -3300,18 +3566,17 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
-msgstr ""
+msgstr "نشست‌ها"
#: actions/sessionsadminpanel.php:65
-#, fuzzy
msgid "Session settings for this StatusNet site."
-msgstr "تنظیمات ظاهری برای این سایت."
+msgstr "تنظیمات نشست برای این وب‌گاه StatusNet."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
-msgstr ""
+msgstr "مدیریت نشست‌ها"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
@@ -3319,60 +3584,60 @@ msgstr ""
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
-msgstr ""
+msgstr "اشکال‌زدایی نشست"
#: actions/sessionsadminpanel.php:183
msgid "Turn on debugging output for sessions."
-msgstr ""
+msgstr "خروجی اشکال‌زدایی برای نشست‌ها روشن شود."
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
#: actions/useradminpanel.php:294
msgid "Save site settings"
-msgstr ""
+msgstr "ذخیرهٔ تنظیمات وب‌گاه"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "برای ترک یک گروه، شما باید وارد شده باشید."
+msgstr "برای دیدن یک برنامه باید وارد شده باشید."
#: actions/showapplication.php:157
-#, fuzzy
msgid "Application profile"
-msgstr "ابن خبر ذخیره ای ندارد ."
+msgstr "نمایهٔ برنامه"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
-msgstr ""
+msgstr "شمایل"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
-#, fuzzy
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
-msgstr "نام کاربری"
+msgstr "نام"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
-#, fuzzy
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
-msgstr "صÙحه بندى"
+msgstr "سازمان"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
-msgstr ""
+msgstr "توصیÙ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "آمار"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "ساخته شده توسط %1$s - دسترسی %2$s به صورت پیش‌Ùرض - %3$d کاربر"
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "اعمال برنامه"
#: actions/showapplication.php:236
msgid "Reset key & secret"
@@ -3380,84 +3645,92 @@ msgstr ""
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "اطلاعات برنامه"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "کلید مصرÙ‌کننده"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "رمز مصرÙ‌کننده"
#: actions/showapplication.php:273
msgid "Request token URL"
-msgstr ""
+msgstr "نشانی اینترنتی شناسهٔ درخواست"
#: actions/showapplication.php:278
msgid "Access token URL"
-msgstr ""
+msgstr "نشانی اینترنتی نشانهٔ درخواست"
#: actions/showapplication.php:283
-#, fuzzy
msgid "Authorize URL"
-msgstr "مؤلÙ"
+msgstr "نشانی اجازه‌دادن"
#: actions/showapplication.php:288
msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method."
msgstr ""
+"توجه: ما امضاهای HMAC-SHA1 را پشتیبانی می‌کنیم. ما روش امضای plaintext را "
+"پشتیبانی نمی‌کنیم."
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "آیا اطمینان دارید که می‌خواهید این پیام را پاک کنید؟"
+msgstr "آیا مطمئن هستید که می‌خواهید کلید و رمز خریدار را دوباره تعیین کنید؟"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "دوست داشتنی های %s"
+msgstr "پیام‌های برگزیدهٔ %1$sØŒ صÙحهٔ %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
-msgstr "ناتوان در بازیابی آگهی های محبوب."
+msgstr "نمی‌توان پیام‌های برگزیده را دریاÙت کرد."
#: actions/showfavorites.php:171
#, php-format
msgid "Feed for favorites of %s (RSS 1.0)"
-msgstr ""
+msgstr "خوراک برای برگزیده‌های %s (RSS 1.0)"
#: actions/showfavorites.php:178
#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr ""
+msgstr "خوراک برای برگزیده‌های %s (RSS 2.0)"
#: actions/showfavorites.php:185
#, php-format
msgid "Feed for favorites of %s (Atom)"
-msgstr ""
+msgstr "خوراک برای برگزیده‌های %s (Atom)"
#: actions/showfavorites.php:206
msgid ""
"You haven't chosen any favorite notices yet. Click the fave button on "
"notices you like to bookmark them for later or shed a spotlight on them."
msgstr ""
+"شما هنوز هیچ پیام برگزیده‌ای را انتخاب نکرده‌اید. روی دکمهٔ برگزیده کردن پیامی "
+"Ú©Ù‡ دوست دارید کلیک کنید تا آن‌ها را برای بعد چوب‌الÙها کنید یا یک نشانه روی "
+"آن‌ها بگذارید."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
+"%s تاکنون هیچ پیامی را به برگزیده‌هایش اضاÙÙ‡ نکرده است. چیز جالبی بÙرستید Ú©Ù‡ "
+"ممکن است به برگزیده‌هایشان اضاÙÙ‡ کنند :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%s تاکنون هیچ پیامی را به برگزیده‌هایش اضاÙÙ‡ نکرده است. چرا به [ثبت کردن یک "
+"حساب](%%%%action.register%%%%) اقدام نمی‌کنید و سپس چیز جالبی را که ممکن است "
+"به برگزیده‌هایشان اضاÙÙ‡ کنند، بÙرستید :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3466,74 +3739,74 @@ msgstr "این یک راه است برای به اشتراک گذاشتن آنچ
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
msgid "%s group"
-msgstr ""
+msgstr "گروه %s"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "اعضای گروه %sØŒ صÙحهٔ %d"
+msgstr "گروه %1$sØŒ صÙحهٔ %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
-msgstr ""
+msgstr "نمایهٔ گروه"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
-msgstr ""
+msgstr "نشانی اینترنتی"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
-msgstr ""
+msgstr "یادداشت"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "نام های مستعار"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
-msgstr ""
+msgstr "اعمال گروه"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr ""
+msgstr "خوراک پیام برای گروه %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr ""
+msgstr "خوراک پیام برای گروه %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr ""
+msgstr "خوراک پیام برای گروه %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
-msgstr ""
+msgstr "FOAF برای گروه %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "اعضا"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "هیچ"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
-msgstr "همه ی اعضا"
+msgstr "همهٔ اعضا"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "ساخته شد"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3542,8 +3815,14 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** یک گروه کاربری در %%%%site.name%%%%، یک سرویس [میکروبلاگینگ](http://"
+"fa.wikipedia.org/wiki/%D9%85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%"
+"DB%8C%D9%86%DA%AF) بر پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/)ØŒ "
+"است. کاربران آن پیام‌های کوتاهی را دربارهٔ زندگی و علاقه‌مندی‌هایشان به اشتراک "
+"می‌گذارند. [اکنون بپیوندید ](%%%%action.register%%%%) تا یکی از اعضای این "
+"گروه و بلکه بیش‌تر بشوید! ([بیش‌تر بخوانید](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3551,10 +3830,15 @@ msgid ""
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
msgstr ""
+"**%s** یک گروه کاربری در %%%%site.name%%%%، یک سرویس [میکروبلاگینگ](http://"
+"fa.wikipedia.org/wiki/%D9%85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%"
+"DB%8C%D9%86%DA%AF) بر پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/)ØŒ "
+"است. کاربران آن پیام‌های کوتاهی را دربارهٔ زندگی و علاقه‌مندی‌هایشان به اشتراک "
+"می‌گذارند. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
-msgstr ""
+msgstr "مدیران"
#: actions/showmessage.php:81
msgid "No such message."
@@ -3562,78 +3846,78 @@ msgstr "چنین پیغامی وجود ندارد."
#: actions/showmessage.php:98
msgid "Only the sender and recipient may read this message."
-msgstr ""
+msgstr "تنها Ùرستنده Ùˆ گیرنده می‌توانند این پیام را بخوانند."
#: actions/showmessage.php:108
#, php-format
msgid "Message to %1$s on %2$s"
-msgstr ""
+msgstr "پیام به %1$s در %2$s"
#: actions/showmessage.php:113
#, php-format
msgid "Message from %1$s on %2$s"
-msgstr ""
+msgstr "پیام از %1$s در %2$s"
#: actions/shownotice.php:90
msgid "Notice deleted."
-msgstr ""
+msgstr "پیام پاک شد."
#: actions/showstream.php:73
#, php-format
msgid " tagged %s"
-msgstr ""
+msgstr " برچسب‌گذاری‌شده %s"
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "%s کاربران مسدود شده، صÙحه‌ی %d"
+msgstr "%1$sØŒ صÙحهٔ %2$d"
#: actions/showstream.php:122
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr "خوراک پاسخ‌ها برای %s (RSS 1.0)"
+msgstr "خوراک پیام‌های %1$s دارای برچسب %2$s (RSS 1.0)"
#: actions/showstream.php:129
#, php-format
msgid "Notice feed for %s (RSS 1.0)"
-msgstr ""
+msgstr "خوراک پیام‌های %s (RSS 1.0)"
#: actions/showstream.php:136
#, php-format
msgid "Notice feed for %s (RSS 2.0)"
-msgstr ""
+msgstr "خوراک پیام‌های %s (RSS 2.0)"
#: actions/showstream.php:143
#, php-format
msgid "Notice feed for %s (Atom)"
-msgstr ""
+msgstr "خوراک پیام‌های %s (Atom)"
#: actions/showstream.php:148
#, php-format
msgid "FOAF for %s"
-msgstr ""
+msgstr "FOAF برای %s"
#: actions/showstream.php:200
-#, fuzzy, php-format
+#, php-format
msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
-msgstr "این خط‌زمانی %s و دوستانش است، اما هیچ‌یک تاکنون چیزی پست نکرده‌اند."
+msgstr "این خط‌زمانی %1$s است، اما %2$s تاکنون چیزی Ù†Ùرستاده است."
#: actions/showstream.php:205
msgid ""
"Seen anything interesting recently? You haven't posted any notices yet, now "
"would be a good time to start :)"
msgstr ""
-"اخیرا چیز جالب توجه ای دیده اید؟ شما تا کنون آگهی ارسال نکرده اید، الان می "
-"تواند زمان خوبی برای شروع باشد :)"
+"اخیرا چیز جالب توجهی دیده‌اید؟ شما تاکنون پیامی Ù†Ùرستاده‌اید، الان می‌تواند "
+"زمان خوبی برای شروع باشد :)"
#: actions/showstream.php:207
#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"اولین کسی باشید که در [این موضوع](%%%%action.newnotice%%%%?status_textarea=%"
-"s) پیام می‌Ùرستد."
+"شما می‌توانید یادآوری %1$s را امتحان کنید یا [به توجه او چیزی بÙرستید](%%%%"
+"action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3643,6 +3927,11 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** یک حساب در %%%%site.name%%%%، یک سرویس ]میکروبلاگینگ[(http://fa."
+"wikipedia.org/wiki/%D9%85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%DB%"
+"8C%D9%86%DA%AF) بر پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/) "
+"،دارد. ]اکنون بپیوندید[(%%%%action.register%%%%) تا پیام‌های **%s** و بلکه "
+"بیش‌تر را دنبال کنید! (]بیش‌تر بخوانید[(%%%%doc.help%%%%))"
#: actions/showstream.php:248
#, php-format
@@ -3651,11 +3940,14 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
+"**%s** یک حساب در %%%%site.name%%%%، یک سرویس ]میکروبلاگینگ[(http://fa."
+"wikipedia.org/wiki/%D9%85%DB%8C%DA%A9%D8%B1%D9%88%D8%A8%D9%84%D8%A7%DA%AF%DB%"
+"8C%D9%86%DA%AF) بر پایهٔ نرم‌اÙزار آزاد [StatusNet](http://status.net/) ،دارد. "
#: actions/showstream.php:305
#, php-format
msgid "Repeat of %s"
-msgstr ""
+msgstr "تکرار %s"
#: actions/silence.php:65 actions/unsilence.php:65
msgid "You cannot silence users on this site."
@@ -3666,18 +3958,16 @@ msgid "User is already silenced."
msgstr "کاربر قبلا ساکت شده است."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "تنظیمات پایه ای برای این سایت StatusNet."
+msgstr "تنظیمات پایه برای این وب‌گاه StatusNet"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
-msgstr "نام سایت باید طولی غیر صÙر داشته باشد."
+msgstr "نام وب‌گاه باید طولی غیر صÙر داشته باشد."
#: actions/siteadminpanel.php:141
-#, fuzzy
msgid "You must have a valid contact email address."
-msgstr "شما باید یک آدرس ایمیل قابل قبول برای ارتباط داشته باشید"
+msgstr "شما باید یک نشانی پست الکترونیکی معتبر برای ارتباط داشته باشید."
#: actions/siteadminpanel.php:159
#, php-format
@@ -3685,16 +3975,16 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr ""
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "کمینهٔ محدودیت متن ۰ است (نامحدود)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
msgid "General"
-msgstr ""
+msgstr "عمومی"
#: actions/siteadminpanel.php:224
msgid "Site name"
@@ -3706,23 +3996,23 @@ msgstr "نام وب‌گاه شما، مانند «میکروبلاگ شرکت Ø
#: actions/siteadminpanel.php:229
msgid "Brought by"
-msgstr "أورده شده به وسیله ی"
+msgstr "آورده‌شده به وسیلهٔ"
#: actions/siteadminpanel.php:230
msgid "Text used for credits link in footer of each page"
-msgstr ""
+msgstr "متن استÙاده‌شده برای پیوند سازندگان در انتهای هر صÙحه"
#: actions/siteadminpanel.php:234
msgid "Brought by URL"
-msgstr ""
+msgstr "آورده‌شده با نشانی اینترنتی"
#: actions/siteadminpanel.php:235
msgid "URL used for credits link in footer of each page"
-msgstr ""
+msgstr "نشانی اینترنتی استÙاده‌شده برای پیوند سازندگان در انتهای هر صÙحه"
#: actions/siteadminpanel.php:239
msgid "Contact email address for your site"
-msgstr ""
+msgstr "نشانی پست الکترونیکی تماس برای وب‌گاه شما"
#: actions/siteadminpanel.php:245
msgid "Local"
@@ -3730,20 +4020,19 @@ msgstr "محلی"
#: actions/siteadminpanel.php:256
msgid "Default timezone"
-msgstr "منطقه ÛŒ زمانی پیش Ùرض"
+msgstr "منطقهٔ زمانی پیش‌Ùرض"
#: actions/siteadminpanel.php:257
msgid "Default timezone for the site; usually UTC."
-msgstr "منظقه ÛŒ زمانی پیش Ùرض برای سایت؛ معمولا UTC."
+msgstr "منظقهٔ زمانی پیش‌Ùرض برای وب‌گاه؛ معمولا UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "زبان پیش Ùرض سایت"
+msgstr "زبان پیش‌Ùرض"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
-msgstr ""
+msgstr "شناسایی خودکار زبان وب‌گاه از راه تنظیمات مرورگر در دسترس نیست."
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3755,7 +4044,7 @@ msgstr "محدودیت متن"
#: actions/siteadminpanel.php:274
msgid "Maximum number of characters for notices."
-msgstr "بیشینهٔ تعداد حرو٠برای آگهی‌ها"
+msgstr "بیشینهٔ تعداد نویسه‌ها برای پیام‌ها."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
@@ -3764,180 +4053,232 @@ msgstr ""
#: actions/siteadminpanel.php:278
msgid "How long users must wait (in seconds) to post the same thing again."
msgstr ""
-"چه مدت کاربران باید منتظر بمانند ( به ثانیه ) تا همان چیز را مجددا ارسال "
-"کنند."
+"Ú†Ù‡ مدت کاربران باید منتظر بمانند (به ثانیه) تا همان چیز را دوباره بÙرستند."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "خبر سایت"
+msgstr "پیام وب‌گاه"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "پیام جدید"
+msgstr "ویرایش پیام عمومی وب‌گاه"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "نمی‌توان تنظیمات طرح‌تان را ذخیره کرد."
+msgstr "نمی‌توان پیام وب‌گاه را ذخیره کرد."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "بیشینهٔ طول برای پیام عمومی وب‌گاه ۲۵۵ نویسه است."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "خبر سایت"
+msgstr "متن پیام وب‌گاه"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "متن پیام عمومی وب‌گاه (حداکثر Û²ÛµÛµ نویسه؛ می‌توان از HTML استÙاده کرد)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "خبر سایت"
+msgstr "ذخیرهٔ پیام وب‌گاه"
-#: actions/smssettings.php:58
-#, fuzzy
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
-msgstr "تنظیمات پیام‌رسان Ùوری"
+msgstr "تنظیمات پیامک"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
+"شما می‌توانید پیامک‌ها را از راه پست الکترونیک از %%site.name%% دریاÙت کنید."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
-msgstr ""
+msgstr "پیامک در دسترس نیست."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "نشانی پیامک"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
-msgstr ""
+msgstr "شمارهٔ تلÙÙ† با قابلیت Ùرستادن پیامک Ú©Ù‡ در حال حاضر تایید شده است."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "منتظر تاییدیه برای این شماره تلÙÙ†."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "کد تاییدیه"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
-msgstr "کدی را Ú©Ù‡ در گوشیتان گرÙتید وارد کنید."
+msgstr "کدی را Ú©Ù‡ در گوشی‌تان دریاÙت کردید، وارد کنید"
-#: actions/smssettings.php:138
-#, fuzzy
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "تایید"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
-msgstr "شماره تماس پیامک"
+msgstr "شمارهٔ تماس پیامک"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "شماره تلÙن، بدون نشانه گذاری یا Ùاصله، با کد منطقه"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "ترجیحات پیامک"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
+"پیام‌ها را برای من از راه پیامک بÙرست؛ من متوجه هستم Ú©Ù‡ ممکن است متحمل هزینهٔ "
+"زیادی از طر٠اپراتورم بشوم."
+
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "تنظیمات پیامک ذخیره شد."
-#: actions/smssettings.php:306
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "بدون شماره تلÙÙ†."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
-msgstr ""
+msgstr "هیچ اپراتوری انتخاب نشده است."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "آن قبلا شماره تلÙÙ† شما بوده است."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "أن شماره تلÙÙ† پیش از این به کاربر دیگری تعلق داشته است."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-"یک کد تاییدیه به شماره تلÙÙ†ÛŒ Ú©Ù‡ شما وارد کردید ارسال شد. گوشیتان را بررسی "
-"کنید برای کد Ùˆ دستورالعمل چگونگی استÙاده از آن."
+"یک کد تاییدیه به شماره تلÙÙ†ÛŒ Ú©Ù‡ شما وارد کردید، Ùرستاده شد. گوشی‌تان را برای "
+"کد Ùˆ راهنمای استÙاده از آن بررسی کنید."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
-msgstr "آن کد تاییدیه ی نادرست است."
+msgstr "این کد تاییدیه نادرست است."
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "تایید پیامک لغو شد."
-#: actions/smssettings.php:405
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
-msgstr "آن شماره تلÙÙ† شما نیست."
+msgstr "این شمارهٔ تلÙÙ† شما نیست."
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "شماره تماس پیامک پاک شد."
-#: actions/smssettings.php:465
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
-msgstr "امواج موبایل"
+msgstr "اپراتور موبایل"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
-msgstr ""
+msgstr "یک اپراتور را انتخاب کنید"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
+"اپراتور موبایل برای گوشی شما. اگر شما اپراتوری را می‌شناسید که از پیامک از "
+"راه پست الکترونیک پشتیبانی می‌کند، اما این‌جا Ùهرست نشده است، در %s نامه "
+"بÙرستید تا ما باخبر شویم."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "کدی وارد نشد"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
-msgstr ""
+msgstr "تصاویر لحظه‌ای"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "تغییر پیکربندی سایت"
+msgstr "مدیریت پیکربندی تصویر لحظه‌ای"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
-msgstr ""
+msgstr "مقدار اجرای تصویر لحظه‌ای نامعتبر است."
#: actions/snapshotadminpanel.php:133
msgid "Snapshot frequency must be a number."
-msgstr ""
+msgstr "تناوب تصویر لحظه‌ای باید یک عدد باشد."
#: actions/snapshotadminpanel.php:144
msgid "Invalid snapshot report URL."
-msgstr ""
+msgstr "نشانی اینترنتی گزارش تصویر لحظه‌ای نامعتبر است."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
-msgstr ""
+msgstr "در یک وظیÙÙ‡Ù” برنامه‌ریزی‌شده"
#: actions/snapshotadminpanel.php:206
msgid "Data snapshots"
-msgstr ""
+msgstr "داده‌های تصاویر لحظه‌ای"
#: actions/snapshotadminpanel.php:208
msgid "When to send statistical data to status.net servers"
-msgstr ""
+msgstr "زمان Ùرستادن داده‌های آماری به کارگزارهای status.net"
#: actions/snapshotadminpanel.php:217
msgid "Frequency"
-msgstr ""
+msgstr "Ùرکانس"
#: actions/snapshotadminpanel.php:218
msgid "Snapshots will be sent once every N web hits"
@@ -3945,73 +4286,72 @@ msgstr ""
#: actions/snapshotadminpanel.php:226
msgid "Report URL"
-msgstr ""
+msgstr "نشانی اینترنتی گزارش"
#: actions/snapshotadminpanel.php:227
msgid "Snapshots will be sent to this URL"
-msgstr ""
+msgstr "تصاویر لحظه‌ای به این نشانی اینترنتی Ùرستاده می‌شوند"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "تنظیمات چهره"
+msgstr "ذخیرهٔ تنظیمات تصویر لحظه‌ای"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
-msgstr "شما به این پروÙيل متعهد نشدید"
+msgstr "شما مشترک آن نمایه نیستید."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
-msgstr ""
+msgstr "نمی‌توان اشتراک را ذخیره کرد."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "این عمل تنها درخواست‌های POST را می‌پذیرد."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "چنین پرونده‌ای وجود ندارد."
+msgstr "چنین نمایه‌ای وجود ندارد."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "شما به این پروÙيل متعهد نشدید"
+msgstr "نمی‌توان با این کار مشترک یک نمایهٔ از راه دور OMB 0.1شد."
#: actions/subscribe.php:145
msgid "Subscribed"
-msgstr ""
+msgstr "مشترک‌شده"
#: actions/subscribers.php:50
#, php-format
msgid "%s subscribers"
-msgstr ""
+msgstr "%s مشترک"
#: actions/subscribers.php:52
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscribers, page %2$d"
-msgstr "%s کاربران مسدود شده، صÙحه‌ی %d"
+msgstr "مشترک‌های %1$sØŒ صÙحهٔ %2$d"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
-msgstr "این ها کسانی هستند که به آگهی های شما گوش می دهند."
+msgstr "این‌ها کسانی هستند که پیام‌های شما را دنبال می‌کنند."
#: actions/subscribers.php:67
#, php-format
msgid "These are the people who listen to %s's notices."
-msgstr ""
+msgstr "این‌ها کسانی هستند که پیام‌های %s را دنبال می‌کنند."
#: actions/subscribers.php:108
msgid ""
"You have no subscribers. Try subscribing to people you know and they might "
"return the favor"
msgstr ""
+"شما هیچ مشترکی ندارید. تلاش کنید Ú©Ù‡ مشترک اÙرادی شوید Ú©Ù‡ می‌شناسید Ùˆ شاید "
+"آن‌ها هم مشترک شما شوند."
#: actions/subscribers.php:110
#, php-format
msgid "%s has no subscribers. Want to be the first?"
-msgstr ""
+msgstr "%s هیچ مشترکی ندارد. می‌خواهید اولین مشترک باشید؟"
#: actions/subscribers.php:114
#, php-format
@@ -4019,25 +4359,27 @@ msgid ""
"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
"%) and be the first?"
msgstr ""
+"%s هیچ مشترکی ندارد. چرا ]یک حساب ثبت نمی‌کنید[(%%%%action.register%%%%) و "
+"اولین مشترک نمی‌شوید؟"
#: actions/subscriptions.php:52
#, php-format
msgid "%s subscriptions"
-msgstr ""
+msgstr "%s اشتراک"
#: actions/subscriptions.php:54
-#, fuzzy, php-format
+#, php-format
msgid "%1$s subscriptions, page %2$d"
-msgstr "%d گروه , صÙحه %S"
+msgstr "اشتراک‌های %1$sØŒ صÙحهٔ %2$d"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
-msgstr ""
+msgstr "این‌ها کسانی هستند که پیام‌هایشان را دنبال می‌کنید."
#: actions/subscriptions.php:69
#, php-format
msgid "These are the people whose notices %s listens to."
-msgstr ""
+msgstr "این‌ها کسانی هستند که %s پیام‌هایشان را دنبال می‌کند."
#: actions/subscriptions.php:126
#, php-format
@@ -4048,39 +4390,45 @@ msgid ""
"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
"automatically subscribe to people you already follow there."
msgstr ""
+"شما در حال حاضر پیام‌های هیچ‌کس را دنبال نمی‌کنید، تلاش کنید Ú©Ù‡ مشترک اÙرادی Ú©Ù‡ "
+"می‌شناسید شوید. [جست‌وجوی اÙراد](%%action.peoplesearch%%) را امتحان کنید، "
+"اعضای گروه‌هایی را که به آن‌ها علاقه دارید و یا [کاربران برجسته](%%action."
+"featured%%) را جست‌وجو کنید. اگر شما یک [کاربر توییتر](%%action."
+"twittersettings%%) هستید، شما می‌توانید به‌صورت خودکار مشترک اÙرادی شوید Ú©Ù‡ "
+"اکنون آن‌جا آن‌ها را دنبال می‌کنید."
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
-msgstr ""
+msgstr "%s هیچ‌کس را دنبال نمی‌کند."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr ""
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
-msgstr ""
+msgstr "پیامک"
#: actions/tag.php:69
-#, fuzzy, php-format
+#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr "کاربران خود برچسب‌گذاری شده با %s - صÙحهٔ %d"
+msgstr "پیام‌های برچسب‌دار شده با %1$sØŒ صÙحهٔ %2$d"
#: actions/tag.php:87
#, php-format
msgid "Notice feed for tag %s (RSS 1.0)"
-msgstr ""
+msgstr "خوراک پیام برای برچسب %s (RSS 1.0)"
#: actions/tag.php:93
#, php-format
msgid "Notice feed for tag %s (RSS 2.0)"
-msgstr ""
+msgstr "خوراک پیام برای برچسب %s (RSS 2.0)"
#: actions/tag.php:99
#, php-format
msgid "Notice feed for tag %s (Atom)"
-msgstr ""
+msgstr "خوراک پیام برای برچسب %s (Atom)"
#: actions/tagother.php:39
msgid "No ID argument."
@@ -4089,47 +4437,46 @@ msgstr ""
#: actions/tagother.php:65
#, php-format
msgid "Tag %s"
-msgstr ""
+msgstr "برچسب %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
-msgstr "پروÙایل کاربر"
+msgstr "نمایهٔ کاربر"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
-msgstr ""
+msgstr "تصویر"
#: actions/tagother.php:141
msgid "Tag user"
-msgstr ""
+msgstr "برچسب‌گذاری کاربر"
#: actions/tagother.php:151
msgid ""
"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
"separated"
msgstr ""
+"برچسب‌ها برای این کاربر (حروÙØŒ اعداد، -ØŒ .ØŒ Ùˆ _)ØŒ جدا شده با کاما- یا Ùاصله-"
#: actions/tagother.php:193
msgid ""
"You can only tag people you are subscribed to or who are subscribed to you."
msgstr ""
+"شما تنها می‌توانید اÙرادی را برچسب‌دار کنید Ú©Ù‡ مشترک آن‌ها هستید یا آن‌ها مشترک "
+"شما هستند."
#: actions/tagother.php:200
msgid "Could not save tags."
-msgstr ""
+msgstr "نمی‌توان برچسب‌ها را ذخیره کرد."
#: actions/tagother.php:236
msgid "Use this form to add tags to your subscribers or subscriptions."
-msgstr ""
+msgstr "از این روش برای اÙزودن برچسب به مشترک‌ها یا اشتراک‌هایتان استÙاده کنید."
#: actions/tagrss.php:35
msgid "No such tag."
-msgstr ""
-
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "روش API در دست ساخت."
+msgstr "چنین برچسبی وجود ندارد."
#: actions/unblock.php:59
msgid "You haven't blocked that user."
@@ -4144,12 +4491,12 @@ msgid "User is not silenced."
msgstr "کاربر ساکت نشده است."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+msgid "No profile ID in request."
+msgstr "هیچ شناسهٔ نمایه‌ای درخواست نشده است."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
-msgstr ""
+msgstr "لغو اشتراک شده"
#: actions/updateprofile.php:64 actions/userauthorization.php:337
#, php-format
@@ -4159,44 +4506,44 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "کاربر"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
-msgstr ""
+msgstr "تنظیمات کاربری برای این وب‌گاه StatusNet."
#: actions/useradminpanel.php:149
msgid "Invalid bio limit. Must be numeric."
-msgstr ""
+msgstr "محدودیت شرح‌حال نادرست است. مقدار محدودیت باید عددی باشد."
#: actions/useradminpanel.php:155
msgid "Invalid welcome text. Max length is 255 characters."
-msgstr ""
+msgstr "متن خوشامدگویی نامعتبر است. بیشینهٔ طول متن ۲۵۵ نویسه است."
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
-msgstr ""
+msgstr "اشتراک پیش‌Ùرض نامعتبر است: «%1$s» کاربر نیست."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
-msgstr ""
+msgstr "نمایه"
#: actions/useradminpanel.php:222
msgid "Bio Limit"
-msgstr ""
+msgstr "محدودیت شرح‌حال"
#: actions/useradminpanel.php:223
msgid "Maximum length of a profile bio in characters."
-msgstr "حداکثر طول یک زندگی نامه(در پروÙایل) بر حسب کاراکتر."
+msgstr "بیشینهٔ طول یک شرح‌حال نمایه بر اساس نویسه‌ها."
#: actions/useradminpanel.php:231
msgid "New users"
-msgstr ""
+msgstr "کاربران تازه"
#: actions/useradminpanel.php:235
msgid "New user welcome"
@@ -4204,19 +4551,19 @@ msgstr "خوشامدگویی کاربر جدید"
#: actions/useradminpanel.php:236
msgid "Welcome text for new users (Max 255 chars)."
-msgstr "پیام خوشامدگویی برای کاربران جدید( حداکثر 255 کاراکتر)"
+msgstr "متن خوشامدگویی برای کاربران جدید (حداکثر ۲۵۵ نویسه)."
#: actions/useradminpanel.php:241
msgid "Default subscription"
-msgstr ""
+msgstr "اشتراک پیش‌Ùرض"
#: actions/useradminpanel.php:242
msgid "Automatically subscribe new users to this user."
-msgstr ""
+msgstr "به صورت خودکار کاربران تازه‌وارد را مشترک این کاربر کن."
#: actions/useradminpanel.php:251
msgid "Invitations"
-msgstr "دعوت نامه ها"
+msgstr "دعوت‌نامه‌ها"
#: actions/useradminpanel.php:256
msgid "Invitations enabled"
@@ -4224,11 +4571,11 @@ msgstr "دعوت نامه ها Ùعال شدند"
#: actions/useradminpanel.php:258
msgid "Whether to allow users to invite new users."
-msgstr "خواه به کاربران اجازه ی دعوت کردن کاربران جدید داده شود."
+msgstr "چنان‌که به کاربران اجازهٔ دعوت‌کردن کاربران تازه داده شود."
#: actions/userauthorization.php:105
msgid "Authorize subscription"
-msgstr ""
+msgstr "تصدیق اشتراک"
#: actions/userauthorization.php:110
msgid ""
@@ -4236,10 +4583,13 @@ msgid ""
"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
"click “Rejectâ€."
msgstr ""
+"لطÙا این جزئیات را برای اطمینان از این‌که می‌خواهید مشترک پیام‌های این کاربر "
+"شوید، بررسی کنید. اگر شما درخواست اشتراک پیام‌های کسی را نداده‌اید، روی «رد "
+"کردن» کلیک کنید."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
-msgstr "لیسانس"
+msgstr "مجوز"
#: actions/userauthorization.php:217
msgid "Accept"
@@ -4248,7 +4598,7 @@ msgstr "پذیرÙتن"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr "تصویب این کاریر"
+msgstr "مشترک شدن این کاربر"
#: actions/userauthorization.php:219
msgid "Reject"
@@ -4256,15 +4606,15 @@ msgstr "رد کردن"
#: actions/userauthorization.php:220
msgid "Reject this subscription"
-msgstr ""
+msgstr "رد کردن این اشتراک"
#: actions/userauthorization.php:232
msgid "No authorization request!"
-msgstr ""
+msgstr "هیچ درخواست اجازه‌ای وجود ندارد!"
#: actions/userauthorization.php:254
msgid "Subscription authorized"
-msgstr ""
+msgstr "اشتراک تصدیق شد"
#: actions/userauthorization.php:256
msgid ""
@@ -4275,7 +4625,7 @@ msgstr ""
#: actions/userauthorization.php:266
msgid "Subscription rejected"
-msgstr ""
+msgstr "اشتراک پذیرÙته نشد"
#: actions/userauthorization.php:268
msgid ""
@@ -4302,188 +4652,258 @@ msgstr ""
#: actions/userauthorization.php:329
#, php-format
msgid "Profile URL ‘%s’ is for a local user."
-msgstr ""
+msgstr "نشانی اینترنتی نمایهٔ «%s» برای یک کاربر محلی است."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "نشانی تصویر چهره «%s» معتبر نیست."
#: actions/userauthorization.php:350
#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr ""
+msgstr "نمی‌توان نشانی اینترنتی چهره را خواند«%s»."
#: actions/userauthorization.php:355
#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr ""
+msgstr "نوع تصویر برای نشانی اینترنتی چهره نادرست است «%s»."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
-msgstr "طراحی پروÙیل"
+msgstr "طراحی نمایه"
#: actions/userdesignsettings.php:87 lib/designsettings.php:76
msgid ""
"Customize the way your profile looks with a background image and a colour "
"palette of your choice."
msgstr ""
+"شیوهٔ نمایش نمایهٔ خود را با یک تصویر پیش‌زمینه و یک رنگ از جعبهٔ رنگ‌ها به "
+"انتخاب خودتان سÙارشی‌سازی کنید."
#: actions/userdesignsettings.php:282
msgid "Enjoy your hotdog!"
msgstr "از هات داگ خود لذت ببرید!"
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "اعضای گروه %sØŒ صÙحهٔ %d"
+msgstr "گروه‌های %1$sØŒ صÙحهٔ %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "جستجو برای گروه های بیشتر"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
-msgstr ""
+msgstr "%s عضو هیچ گروهی نیست."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
+"[جست‌وجوی گروه‌ها](%%action.groupsearch%%) را امتحان کنید و به آن‌ها بپیوندید."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "به روز رسانی‌های %1$s در %2$s"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "آمار"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
+"این وب‌گاه برگرÙته از قدرت %1$s نسخهٔ %2$s دارای حق تکثیر ۲۰۰۸−۲۰۰۹ StatusNet "
+"Inc. و مشارکت‌کنندگان است."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
-msgstr ""
+msgstr "مشارکت‌کنندگان"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
"Software Foundation, either version 3 of the License, or (at your option) "
"any later version. "
msgstr ""
+"StatusNet یک نرم‌اÙزار آزاد است: شما می‌توانید آن را بازتوزیع کنید Ùˆ/یا آن را "
+"تحت شرایط مجوز GNU Affero General Public License نسخهٔ ۳، یا (به انتخاب شما) "
+"هر نسخهٔ بعدی دیگری، Ú©Ù‡ توسط بنیاد نرم‌اÙزارهای آزاد منتشر شده است، ویرایش کنید"
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"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. "
msgstr ""
+"این برنامه به امید این‌که سودمند خواهد بود، توزیع شده است، اما بدون ضمانت؛ "
+"حتی بدون ضمانت جزئی دارای Ú©ÛŒÙیت Ùروش یا مناسب بودن برای هدÙÛŒ خاص. برای "
+"جزئیات بیش‌تر مجوز «GNU Affero General Public License» را ببینید. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
+"شما باید یک رونوشت از مجوز GNU Affero General Public License را همراه این "
+"برنامه دریاÙت کرده باشید. اگر چنین نیست، %s را ببینید."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
-msgstr ""
+msgstr "اÙزونه‌ها"
-#: actions/version.php:196 lib/action.php:767
-#, fuzzy
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
-msgstr "شخصی"
+msgstr "نسخه"
-#: actions/version.php:197
-#, fuzzy
+#: actions/version.php:199
msgid "Author(s)"
-msgstr "مؤلÙ"
+msgstr "مؤلÙ(ها)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
+"هیچ پرونده‌ای نباید بزرگ‌تر از %d بایت باشد Ùˆ پرونده‌ای Ú©Ù‡ شما Ùرستادید %d بایت "
+"بود. بارگذاری یک نسخهٔ کوچک‌تر را امتحان کنید."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
+"یک پرونده با این حجم زیاد می‌تواند از سهمیهٔ کاربری شما از %d بایت بگذرد."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
+"یک پرونده با این حجم زیاد می‌تواند از سهمیهٔ کاربری ماهانهٔ شما از %d بایت "
+"بگذرد."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "اندازه‌ی نادرست"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
-msgstr ""
+msgstr "پیوستن به گروه شکست خورد."
-#: classes/Group_member.php:53
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
-msgstr "نمی‌توان گروه را به‌هنگام‌سازی کرد."
+msgstr "بخشی از گروه نیست."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
-msgstr ""
+msgstr "ترک کردن گروه شکست خورد."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "نمی‌توان گروه را به‌هنگام‌سازی کرد."
+msgstr "نمی‌توان گروه محلی را به‌هنگام‌سازی کرد."
-#: classes/Login_token.php:76
-#, fuzzy, php-format
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
msgid "Could not create login token for %s"
-msgstr "نمی‌توان نام‌های مستعار را ساخت."
+msgstr "نمی‌توان رمز ورود را برای %s ایجاد کرد"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "شما از Ùرستادن پیام مستقیم مردود شده اید."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "پیغام نمی تواند درج گردد"
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "هنگام اÙزودن برچسب خطا در پایگاه داده رخ داد: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "مشکل در ذخیره کردن پیام. بسیار طولانی."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "مشکل در ذخیره کردن پیام. کاربر نا شناخته."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-"تعداد خیلی زیاد آگهی و بسیار سریع؛ استراحت کنید و مجددا دقایقی دیگر ارسال "
-"کنید."
+"تعداد زیادی پیام Ùˆ خیلی سریع Ùرستاده شده‌اند؛ استراحت کنید Ùˆ دقایقی دیگر "
+"دوباره بÙرستید."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4491,790 +4911,927 @@ msgstr ""
"تعداد زیاد پیام های دو نسخه ای و بسرعت؛ استراحت کنید و دقایقی دیگر مجددا "
"ارسال کنید."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
-msgstr "شما از Ùرستادن پست در این سایت مردود شدید ."
+msgstr "شما از Ùرستادن پیام در این وب‌گاه منع شده‌اید."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
-msgstr "مشکل در ذخیره کردن آگهی."
+msgstr "هنگام ذخیرهٔ پیام مشکلی ایجاد شد."
-#: classes/Notice.php:927
-#, fuzzy
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr "مشکل در ذخیره کردن آگهی."
+msgstr "هنگام ذخیرهٔ صندوق ورودی گروه مشکلی رخ داد."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
-msgid "You have been banned from subscribing."
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "کاربر هیچ نمایه‌ای ندارد."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "نمی‌توان پیام وب‌گاه را ذخیره کرد."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr "شما از اشتراک منع شده‌اید."
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
-msgstr "قبلا تایید شده !"
+msgstr "قبلا اشتراک انجام شده است!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
-msgstr ""
+msgstr "کاربر شما را مسدود کرده است."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "تایید نشده!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr ""
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
+msgstr "نمی‌توان خود-اشتراکی را حذ٠کرد."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "نمی‌توان تصدیق پست الکترونیک را پاک کرد."
+msgid "Could not delete subscription OMB token."
+msgstr "نمی‌توان رمز اشتراک OMB را حذ٠کرد."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr ""
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
+msgstr "نمی‌توان اشتراک را لغو کرد."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
-msgstr "خوش امدید به %1$s , @%2$s!"
+msgstr "@%2$s، به %1$s خوش آمدید!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "نمیتوان گروه را تشکیل داد"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "نمیتوان گروه را تشکیل داد"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
-msgstr ""
+msgstr "نمی‌توان عضویت گروه را تعیین کرد."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "نمی‌توان شناس‌نامه را ذخیره کرد."
+msgstr "نمی‌توان اطلاعات گروه محلی را ذخیره کرد."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
-msgstr "تنضبمات پروÙيلتان را تغیر دهید"
+msgstr "تنظیمات نمایه‌تان را تغییر دهید"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
-msgstr "یک آواتار ارسال کنید"
+msgstr "بارگذاری یک چهره"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
-msgstr "کلمه ی عبور خود را تغییر دهید"
+msgstr "تغییر گذرواژهٔ شما"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "تغیر تنظیمات ایمل ."
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
-msgstr "پروÙایل خود را طراحی کنید"
+msgstr "نمایهٔ خود را طراحی کنید"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "دیگر"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "انتخابات دیگر"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "دیگر"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%s گروه %s را ترک کرد."
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
-msgstr "صÙحه ÛŒ بدون عنوان"
+msgstr "صÙحهٔ بدون عنوان"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
-msgstr ""
+msgstr "مسیریابی اصلی وب‌گاه"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
-msgstr ""
+msgstr "نمایهٔ شخصی و خط‌زمانی دوستان"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "شخصی"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "آدرس ایمیل، آواتار، کلمه ÛŒ عبور، پروÙایل خود را تغییر دهید"
+msgstr "پست الکترونیکی، تصویر، گذرواژه یا نمایهٔ خودتان را تغییر دهید"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "متصل شدن به خدمات"
+msgstr "اتصال به سرویس‌ها"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "وصل‌شدن"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr "تغییر پیکربندی سایت"
+msgstr "تغییر پیکربندی وب‌گاه"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "مدیر"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr " به شما ملحق شوند %s دوستان و همکاران را دعوت کنید تا در"
+msgstr "دوستان و همکاران‌تان را دعوت کنید تا به شما در %s بپیوندند"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "دعوت‌کردن"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
-msgstr "خارج شدن از سایت ."
+msgstr "خارج‌شدن از وب‌گاه"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "خروج"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
-msgstr "یک حساب کاربری بسازید"
+msgstr "ساختن یک جساب‌کاربری"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
-msgstr "ثبت نام"
+msgstr "ثبت‌نام"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "ورود به وب‌گاه"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "ورود"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "به من کمک کنید!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Ú©Ù…Ú©"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
-msgstr "جستجو برای شخص با متن"
+msgstr "جست‌وجو برای اÙراد یا متن"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "جست‌وجو"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr "خبر سایت"
+msgstr "پیام وب‌گاه"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "دید محلی"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
-msgstr "خبر صÙحه"
+msgstr "پیام صÙحه"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
-msgstr ""
+msgstr "مسیریابی Ùرعی وب‌گاه"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ú©Ù…Ú©"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "دربارهٔ"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "سوال‌های رایج"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
-msgstr ""
+msgstr "شرایط سرویس"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "خصوصی"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "منبع"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "تماس"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
-msgstr ""
+msgstr "نشان"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet مجوز نرم اÙزار"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
+"**%%site.name%%** یک سرویس میکروبلاگینگ که توسط [%%site.broughtby%%](%%site."
+"broughtbyurl%%) برای شما راه‌اندازی شده است."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr ""
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** یک سرویس میکروبلاگینگ است."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
"s, available under the [GNU Affero General Public License](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
+"این وب‌گاه نرم‌اÙزار میکروبلاگینگ [StatusNet](http://status.net/) نسخهٔ %s را "
+"اجرا می‌کند که زیر مجوز [GNU Affero General Public License](http://www.fsf."
+"org/licensing/licenses/agpl-3.0.html) در دسترس است."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
-msgstr "مجوز محتویات سایت"
+msgstr "مجوز محتویات وب‌گاه"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
-msgstr ""
+msgstr "محتویات و داده‌های %1$s خصوصی و محرمانه هستند."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
-msgstr ""
+msgstr "حق تکثیر محتوا Ùˆ داده‌ها با %1$s است. تمام حقوق محÙوظ است."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
-msgstr ""
-
-#: lib/action.php:847
-msgid "All "
-msgstr "همه "
+msgstr "حق تکثیر محتوا Ùˆ داده‌ها با مشارکت‌کنندگان است. تمام حقوق محÙوظ است."
-#: lib/action.php:853
-msgid "license."
-msgstr "مجوز."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "تمام محتویات و داده‌های %1$s زیر مجوز %2$s در دسترس هستند."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "صÙحه بندى"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
-msgstr "بعد از"
+msgstr "پس از"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "قبل از"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"در حال انتظار برای یک عامل خوراک ریشه‌ای، اما یک سند XML کامل دریاÙت شد."
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "هنوز نمی‌توان محتویات ازراه‌دور را به‌کار برد."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "هنوز نمی‌توان محتویات XML جاسازی‌شده را به‌کار برد."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "هنوز نمی‌توان محتوای جاسازی‌شدهٔ Base64 را به‌کار برد."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
-msgstr "شما نمی توانید در این سایت تغیری ایجاد کنید"
+msgstr "شما نمی توانید در این وب‌گاه تغییر ایجاد کنید"
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
-#, fuzzy
msgid "Changes to that panel are not allowed."
-msgstr "اجازه‌ی ثبت نام داده نشده است."
+msgstr "تغییرات در آن قطعه مجاز نیست."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
-msgstr ""
+msgstr "showForm() پیاده نشده است."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
msgid "saveSettings() not implemented."
-msgstr ""
+msgstr "saveSettings() پیاده نشده است."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "نمی توان تنظیمات طراحی شده را پاک کرد ."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
-msgstr "پیکره بندی اصلی سایت"
+msgstr "پیکربندی اولیه وب‌گاه"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
-msgstr "سایت"
+msgstr "وب‌گاه"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
-msgstr ""
+msgstr "پیکربندی طرح"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "طرح"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
-#, fuzzy
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr "پیکره بندی اصلی سایت"
+msgstr "پیکربندی کاربر"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "کاربر"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
-#, fuzzy
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr "پیکره بندی اصلی سایت"
+msgstr "پیکربندی دسترسی"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
-msgstr ""
+msgstr "پیکربندی مسیرها"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
-#, fuzzy
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
-msgstr "پیکره بندی اصلی سایت"
+msgstr "پیکربندی نشست‌ها"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "خبر سایت"
+msgstr "ویرایش پیام وب‌گاه"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "پیکره بندی اصلی سایت"
+msgstr "پیکربندی تصاویر لحظه‌ای"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
+"منبع API به دسترسی خواندن-نوشتن نیاز دارد، اما شما تنها دسترسی خواندن را "
+"دارید."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
-msgstr ""
+msgstr "ویرایش برنامه"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "شمایل این برنامه"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
-msgstr ""
+msgstr "برنامهٔ خود را در %d نویسه توصی٠کنید"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr ""
+msgstr "برنامهٔ خود را توصی٠کنید"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "منبع"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
-msgstr ""
+msgstr "نشانی اینترنتی صÙحهٔ خانگی این برنامه"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "نشانی اینترنتی منبع"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "سازمان مسئول این برنامه"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr ""
+msgstr "نشانی اینترنتی برای صÙحهٔ خانگی سازمان"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "نشانی اینترنتی برای دوباره‌هدایت‌کردن بعد از تصدیق"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
-msgstr ""
+msgstr "مرورگر"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "میزکار"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "نوع برنامه، مرورگر یا میزکار"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "تنها خواندنی"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "خواندن-نوشتن"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
+msgstr "دسترسی پیش‌Ùرض برای این برنامه: تنها خواندنی یا خواندن-نوشتن"
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "انصراÙ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "خواندن-نوشتن"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "تنها خواندنی"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
msgstr ""
-#: lib/applicationlist.php:154
-#, fuzzy
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr "حذÙ"
+msgstr "لغو کردن"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "ضمائم"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "مؤلÙ"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "مهیا کننده"
#: lib/attachmentnoticesection.php:67
msgid "Notices where this attachment appears"
-msgstr ""
+msgstr "پیام‌هایی که این پیوست در آن‌جا ظاهر می‌شود"
#: lib/attachmenttagcloudsection.php:48
msgid "Tags for this attachment"
-msgstr ""
+msgstr "برچسب‌ها برای این پیوست"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
-#, fuzzy
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
-msgstr "تغییر گذرواژه"
+msgstr "تغییر گذرواژه شکست خورد"
-#: lib/authenticationplugin.php:235
-#, fuzzy
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
-msgstr "تغییر گذرواژه"
+msgstr "تغییر گذرواژه مجاز نیست"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "نتیجه دستور"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "دستور انجام شد"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Ùرمان شکست خورد"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "متاسÙانه این دستور هنوز اجرا نشده."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "پیامی با این شناسه وجود ندارد"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "کاربر پیام آخر ندارد"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "پیدا نشد %s کاریری یا نام مستعار"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "نمی‌توان یک کاربر محلی با نام کاربری %s پیدا کرد"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "متاسÙانه این دستور هنوز پیاده نشده است."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
-msgstr ""
+msgstr "خیلی جالب نیست که به خودتان یادآوری کنید!"
-#: lib/command.php:99
-#, fuzzy, php-format
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
msgid "Nudge sent to %s"
-msgstr "Ùرتادن اژیر"
+msgstr "یادآوری به %s Ùرستاده‌شد"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
"Subscribers: %2$s\n"
"Notices: %3$s"
msgstr ""
-"اشتراک : %1$s\n"
-"مشترک : %2$s\n"
-"خبر : %3$s"
-
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "خبری با این مشخصه ایجاد نشد"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "کاربر آگهی آخر ندارد"
+"اشتراک‌ها: %1$s\n"
+"مشترک‌ها: %2$s\n"
+"پیام‌ها: %3$s"
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
-msgstr ""
+msgstr "پیام به‌عنوان برگزیده مشخص شد."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "شما از پیش یک عضو این گروه هستید."
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "عضویت %s در گروه %s نا موÙÙ‚ بود."
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "ملحق شدن به گروه"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "خارج شدن %s از گروه %s نا موÙÙ‚ بود"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "نمی‌توان کاربر %1$s را عضو گروه %2$s کرد"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s گروه %s را ترک کرد."
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "نمی‌توان کاربر %1$s را از گروه %2$s حذ٠کرد"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "نام کامل : %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "موقعیت : %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "صÙحه خانگی : %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
-msgstr "درباره ی : %s"
+msgstr "دربارهٔ: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s یک نمایهٔ ازراه‌دور است؛ شما تنها می‌توانید پیام‌های مستقیم را به کاربران در "
+"یک کارگزار بÙرستید."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-"پیغام بسیار طولانی است - بیشترین اندازه امکان پذیر %d کاراکتر است , شما %d "
-"تا Ùرستادید"
+"پیام خیلی طولانی است - حداکثر تعداد مجاز %1$d نویسه است که شما %2$d نویسه را "
+"Ùرستادید"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "پیام مستقیم به %s Ùرستاده شد."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "خطا در Ùرستادن پیام مستقیم."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
-msgstr "نمی توان آگهی خودتان را تکرار کرد"
+msgstr "امکان تکرار پیام خودتان وجود ندارد"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
-msgstr "آن آگهی قبلا تکرار شده است."
+msgstr "آن پیام قبلا تکرار شده است."
-#: lib/command.php:426
-#, fuzzy, php-format
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
msgid "Notice from %s repeated"
-msgstr "آگهی تکرار شد"
+msgstr "پیام از %s تکرار شد"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
-msgstr "خطا هنگام تکرار آگهی."
+msgstr "هنگام تکرار پیام خطایی رخ داد."
-#: lib/command.php:482
-#, fuzzy, php-format
+#: lib/command.php:562
+#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-"پیغام بسیار طولانی است - بیشترین اندازه امکان پذیر %d کاراکتر است , شما %d "
-"تا Ùرستادید"
+"پیام خیلی طولانی است - حداکثر تعداد مجاز %1$d نویسه است که شما %2$d نویسه را "
+"Ùرستادید"
-#: lib/command.php:491
-#, fuzzy, php-format
+#: lib/command.php:571
+#, php-format
msgid "Reply to %s sent"
-msgstr "به این آگهی جواب دهید"
+msgstr "پاسخ به %s Ùرستاده شد"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
-msgstr "خطا هنگام ذخیره ی آگهی"
+msgstr "هنگام ذخیرهٔ پیام خطا رخ داد."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
-msgstr ""
+msgstr "نام کاربر را برای مشترک‌شدن مشخص کنید"
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "چنین کاربری وجود ندارد."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "نمی‌توان با دستور مشترک نمایه‌های OMB شد."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
-msgstr ""
+msgstr "مشترک‌شدن %s انجام‌شد"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
-msgstr ""
+msgstr "نام کاربر را برای لغو اشتراک از او مشخص کنید."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
-msgstr ""
+msgstr "از %s لغو اشتراک شد"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
-msgstr "دستور هنوز اجرا نشده"
+msgstr "دستور هنوز پیاده نشده است."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
-msgstr ""
+msgstr "آگاه‌سازی خاموش شد."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "ناتوان در خاموش کردن آگاه سازی."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "آگاه سازی Ùعال است."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "ناتوان در روشن کردن آگاه سازی."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Ùرمان ورود از کار اÙتاده است"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
+"این پیوند تنها یک‌بار قابل استÙاده است Ùˆ تنها برای دو دقیقه Ù…Ùید است: %s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
-msgstr "مشترک‌ها"
+msgstr "لغو اشتراک شده %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
-msgstr "شما توسط هیچ کس تصویب نشده اید ."
+msgstr "شما مشترک هیچ‌کسی نشده‌اید."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
-msgstr[0] "هم اکنون شما این کاربران را دنبال می‌کنید: "
+msgstr[0] "شما مشترک این Ùرد شده‌اید:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
-msgstr "هیچکس شما را تایید نکرده ."
+msgstr "هیچ‌کس مشترک شما نشده است."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
-msgstr[0] "هیچکس شما را تایید نکرده ."
+msgstr[0] "این Ùرد مشترک شما شده است:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "شما در هیچ گروهی عضو نیستید ."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
-msgstr[0] "شما یک عضو این گروه نیستید."
+msgstr[0] "شما یک عضو این گروه هستید:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5315,20 +5872,58 @@ msgid ""
"tracks - not yet implemented.\n"
"tracking - not yet implemented.\n"
msgstr ""
-
-#: lib/common.php:148
+"دستورات:\n"
+"on - روشن‌کردن آگاه‌سازی‌ها\n"
+"off - خاموش‌کردن آگاه‌سازی‌ها\n"
+"help - نشان دادن این کمک\n"
+"follow <nickname> - مشترک کاربر شدن\n"
+"groups - گروه‌هایی را Ú©Ù‡ به آن‌ها پیوسته‌اید، Ùهرست می‌کند\n"
+"subscriptions - اÙرادی را Ú©Ù‡ دنبال می‌کنید، Ùهرست می‌کند\n"
+"subscribers - کاربرانی را Ú©Ù‡ شما را دنبال می‌کنند، Ùهرست می‌کند\n"
+"leave <nickname> - لغو اشتراک از کاربر\n"
+"d <nickname> <text> - پیام مستقیم به کاربر\n"
+"get <nickname> - دریاÙت آخرین پیام از کاربر\n"
+"whois <nickname> - دریاÙت اطلاعات نمایهٔ کاربر\n"
+"lose <nickname> - وادار کردن کاربر به توق٠دنبال‌کردن شما\n"
+"fav <nickname> - اÙزودن آخرین پیام کاربر به عنوان برگزیده\n"
+"fav #<notice_id> - اÙزودن پیام با یک شناسهٔ داده‌شده به عنوان برگزیده\n"
+"repeat #<notice_id> - تکرار کردن یک پیام با یک شناسهٔ داده‌شده\n"
+"repeat <nickname> - تکرار کردن آخرین پیام از کاربر\n"
+"reply #<notice_id> - پاسخ‌دادن به یک پیام با یک شناسهٔ داده‌شده\n"
+"reply <nickname> - پاسخ‌دادن به آخرین پیام از کاربر\n"
+"join <group> - پیوستن به گروه\n"
+"login - دریاÙت یک پیوند برای واردشدن به رابط وب\n"
+"drop <group> - ترک‌کردن گروه\n"
+"stats - دریاÙت آمار شما\n"
+"stop - مانند «off»\n"
+"quit - مانند «off»\n"
+"sub <nickname> - مانند «follow»\n"
+"unsub <nickname> - مانند «leave»\n"
+"last <nickname> - مانند «get»\n"
+"on <nickname> - هنوز پیاده نشده است.\n"
+"off <nickname> - هنوز پیاده نشده است.\n"
+"nudge <nickname> - یادآوری‌کردن به یک کاربر برای به‌روز کردن\n"
+"invite <phone number> - هنوز پیاده نشده است.\n"
+"track <word> - هنوز پیاده نشده است.\n"
+"untrack <word> - هنوز پیاده نشده است.\n"
+"track off - هنوز پیاده نشده است.\n"
+"untrack all - هنوز پیاده نشده است.\n"
+"tracks - هنوز پیاده نشده است.\n"
+"tracking - هنوز پیاده نشده است.\n"
+
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr ""
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "من به دنبال پرونده‌های پیکربندی در مکان‌های زیر بودم: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "شما ممکن است بخواهید نصاب را اجرا کنید تا این را تعمیر کند."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "برو به نصاب."
@@ -5338,20 +5933,19 @@ msgstr "پیام‌رسان Ùوری"
#: lib/connectsettingsaction.php:111
msgid "Updates by instant messenger (IM)"
-msgstr ""
+msgstr "به‌هنگام‌سازی‌های انجام‌شده با پیام‌رسان Ùوری (IM)"
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
-msgstr "به روز رسانی با پیامک"
+msgstr "به‌روزرسانی با پیامک"
#: lib/connectsettingsaction.php:120
-#, fuzzy
msgid "Connections"
-msgstr "وصل‌شدن"
+msgstr "اتصال‌ها"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "برنامه‌های وصل‌شدهٔ مجاز"
#: lib/dberroraction.php:60
msgid "Database error"
@@ -5359,28 +5953,30 @@ msgstr "خطای پایگاه داده"
#: lib/designsettings.php:105
msgid "Upload file"
-msgstr "ارسال Ùایل"
+msgstr "بارگذاری پرونده"
#: lib/designsettings.php:109
msgid ""
"You can upload your personal background image. The maximum file size is 2MB."
msgstr ""
+"شما می‌توانید تصویر پیش‌زمینهٔ شخصی خود را بارگذاری کنید. بیشینهٔ اندازهٔ پرونده "
+"۲ مگابایت است."
#: lib/designsettings.php:418
msgid "Design defaults restored."
-msgstr ""
+msgstr "پیش‌Ùرض‌های طراحی برگردانده شدند."
#: lib/disfavorform.php:114 lib/disfavorform.php:140
msgid "Disfavor this notice"
-msgstr ""
+msgstr "خارج‌کردن این پیام از برگزیده‌ها"
#: lib/favorform.php:114 lib/favorform.php:140
msgid "Favor this notice"
-msgstr "طرÙدار این خبر"
+msgstr "برگزیده‌کردن این پیام"
#: lib/favorform.php:140
msgid "Favor"
-msgstr "توجه کردن"
+msgstr "برگزیده‌کردن"
#: lib/feed.php:85
msgid "RSS 1.0"
@@ -5404,7 +6000,7 @@ msgstr "صادر کردن داده"
#: lib/galleryaction.php:121
msgid "Filter tags"
-msgstr ""
+msgstr "پالایهٔ برچسب‌ها"
#: lib/galleryaction.php:131
msgid "All"
@@ -5412,15 +6008,15 @@ msgstr "همه"
#: lib/galleryaction.php:139
msgid "Select tag to filter"
-msgstr ""
+msgstr "برچسب را برای پالودن انتخاب کنید"
#: lib/galleryaction.php:140
msgid "Tag"
-msgstr ""
+msgstr "برچسب"
#: lib/galleryaction.php:141
msgid "Choose a tag to narrow list"
-msgstr ""
+msgstr "یک برچسب را برای محدود کردن Ùهرست انتخاب کنید"
#: lib/galleryaction.php:143
msgid "Go"
@@ -5433,26 +6029,26 @@ msgstr ""
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
-msgstr ""
+msgstr "نشانی اینترنتی صÙحهٔ‌خانگی یا وبلاگ گروه یا موضوع"
#: lib/groupeditform.php:168
msgid "Describe the group or topic"
-msgstr ""
+msgstr "گروه یا موضوع را توصی٠کنید"
#: lib/groupeditform.php:170
#, php-format
msgid "Describe the group or topic in %d characters"
-msgstr ""
+msgstr "گروه یا موضوع را در %d نویسه توصی٠کنید"
#: lib/groupeditform.php:179
msgid ""
"Location for the group, if any, like \"City, State (or Region), Country\""
-msgstr ""
+msgstr "مکان گروه، در صورت وجود داشتن، مانند «شهر، ایالت (یا استان)، کشور»"
#: lib/groupeditform.php:187
#, php-format
msgid "Extra nicknames for the group, comma- or space- separated, max %d"
-msgstr ""
+msgstr "نام‌های مستعار اضاÙÛŒ برای گروه، با کاما- یا Ùاصله- جدا شود، بیشینه %d"
#: lib/groupnav.php:85
msgid "Group"
@@ -5465,7 +6061,7 @@ msgstr "مسدود شده"
#: lib/groupnav.php:102
#, php-format
msgid "%s blocked users"
-msgstr ""
+msgstr "%s کاربر مسدود شده"
#: lib/groupnav.php:108
#, php-format
@@ -5479,12 +6075,12 @@ msgstr "نشان"
#: lib/groupnav.php:114
#, php-format
msgid "Add or edit %s logo"
-msgstr ""
+msgstr "اÙزودن یا ویرایش نشان"
#: lib/groupnav.php:120
#, php-format
msgid "Add or edit %s design"
-msgstr ""
+msgstr "طرح %s را اضاÙÙ‡ یا ویرایش کنید"
#: lib/groupsbymemberssection.php:71
msgid "Groups with most members"
@@ -5497,59 +6093,59 @@ msgstr "گروه های با پست های بیشتر"
#: lib/grouptagcloudsection.php:56
#, php-format
msgid "Tags in %s group's notices"
-msgstr ""
+msgstr "برچسب‌ها در پیام‌های گروه %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
-msgstr ""
+msgstr "این صÙحه در نوع رسانه‌ای Ú©Ù‡ پذیرÙته‌اید، در دسترس نیست."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Ùرمت(Ùایل) عکس پشتیبانی نشده."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
-msgstr ""
-"است . این Ùایل بسیار یزرگ است %s بیشترین مقدار قابل قبول برای اندازه ÛŒ Ùایل."
+msgstr "این پرونده خیلی بزرگ است. بیشینهٔ اندازهٔ پرونده %s است."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
-msgstr "خطای سیستم ارسال Ùایل."
+msgstr "هنگام بارگذاری پرونده خطای سیستمی رخ داد."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "تصویر یا Ùایل خرابی نیست"
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Ùرمت(Ùایل) عکس پشتیبانی نشده."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Ùایلمان Ú¯Ù… شده"
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "نوع Ùایل پشتیبانی نشده"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "مگابایت"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "کیلوبایت"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
-msgstr ""
+msgstr "منبع صندوق ورودی نامعلوم است %d."
#: lib/joinform.php:114
msgid "Join"
@@ -5561,17 +6157,19 @@ msgstr "ترک کردن"
#: lib/logingroupnav.php:80
msgid "Login with a username and password"
-msgstr "وارد شدن با یک نام کاربری و کلمه ی عبور"
+msgstr "وارد شدن با یک نام کاربری و گذرواژه"
#: lib/logingroupnav.php:86
msgid "Sign up for a new account"
msgstr "عضویت برای حساب کاربری جدید"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
-msgstr "تاییدیه ی آدرس ایمیل"
+msgstr "تایید نشانی پست الکترونیکی"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5587,13 +6185,35 @@ msgid ""
"Thanks for your time, \n"
"%s\n"
msgstr ""
+"سلام %s. \n"
+"\n"
+"کسی این پست الکترونیکی را در %s وارد کرده است.\n"
+"\n"
+"اگر شما بودید، و می‌خواهید که ورودی خود را تایید کنید، از نشانی اینترنتی زیر "
+"استÙاده کنید:\n"
+"\n"
+"\t%s\n"
+"\n"
+"اگر چنین نیست، این پیام را نادیده بگیرید.\n"
+"\n"
+"از این‌که وقت خود را در اختیار ما گذاشتید، سپاس‌گزاریم، \n"
+"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
-msgstr "%2$s از حالا به خبر های شما گوش میده %1$s"
+msgstr "%1$s اکنون پیام‌های شما را در %2$s دنبال می‌کند."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5607,18 +6227,31 @@ msgid ""
"----\n"
"Change your email address or notification options at %8$s\n"
msgstr ""
+"%1$s اکنون پیام‌های شما را در %2$s دنبال می‌کند.\n"
+"\n"
+"%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"با تشکر از شما،\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"نشانی پست الکترونیک یا گزینه‌های آگاه‌سازی را در %8$s تغییر دهید\n"
-#: lib/mail.php:262
-#, fuzzy, php-format
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
msgid "Bio: %s"
-msgstr "موقعیت : %s"
+msgstr "شرح‌حال: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "%s ادرس ایمیل جدید برای"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5630,28 +6263,40 @@ msgid ""
"Faithfully yours,\n"
"%4$s"
msgstr ""
-" %1$s شما یک ادرس پست جدید دارید در .\n"
-"ایمیل بزنید %s برای پست یک پیغام جدید به .\n"
-" %3$s راهنمای ایمیل بیشتر در .\n"
+"شما یک نشانی ارسال تازه در %1$s دارید.\n"
+"\n"
+"برای Ùرستادن پیام‌های جدید به %2$s نامه بÙرستید.\n"
+"\n"
+"راهنمایی‌های پست الکترونیکی بیش‌تر در %3$s وجود دارد.\n"
"\n"
-", ازروی ÙˆÙاداری خود شما \n"
+"با تشکر از شما،\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "وضعیت %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
-msgstr "تایید پیامک"
+msgstr "تأیید پیامک"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: شماره تلÙÙ† خود را با این کد تایید کنید:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
-msgstr ""
+msgstr "شما توسط %s یادآوری شدید."
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5666,13 +6311,26 @@ msgid ""
"With kind regards,\n"
"%4$s\n"
msgstr ""
+"%1$s (%2$s) کنجکاو است Ú©Ù‡ این روزها چکار می‌کنید Ùˆ شما را برای Ùرستادن "
+"خبرهایی دعوت کرده است.\n"
+"\n"
+"پس بیایید که از شما بیش‌تر بشنویم :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"به این نامه پاسخ ندهید؛ زیرا به آن‌ها نخواهد رسید.\n"
+"\n"
+"با احترام،\n"
+"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
-msgstr ""
+msgstr "پیام خصوصی تازه از %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5690,13 +6348,29 @@ msgid ""
"With kind regards,\n"
"%5$s\n"
msgstr ""
+"%1$s (%2$s) یک پیام خصوصی برای شما Ùرستاده است:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"شما می‌توانید این‌جا به پیام‌شان پاسخ دهید:\n"
+"\n"
+"%4$s\n"
+"\n"
+"به این پست الکترونیک پاسخ ندهید، چون پاسخ شما به آن‌ها نمی‌رسد.\n"
+"\n"
+"با احترام،\n"
+"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
-msgstr " خبر شما را به علایق خود اضاÙÙ‡ کرد %s (@%s)"
+msgstr "پیام شما را به برگزیده‌های خود اضاÙÙ‡ کرد %s (@%s)"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5716,13 +6390,46 @@ msgid ""
"Faithfully yours,\n"
"%6$s\n"
msgstr ""
+"%1$s (@%7$s) پیام شما در %2$s را به‌عنوان یکی از برگزیده‌هایشان اÙزوده است.\n"
+"\n"
+"نشانی اینترنتی پیام شما \n"
+"\n"
+"%3$s\n"
+"\n"
+"است.\n"
+"\n"
+"متن پیام شما\n"
+"\n"
+"%4$s\n"
+"\n"
+"است.\n"
+"\n"
+"شما می‌توانید Ùهرست برگزیده‌های %1$s را این‌جا ببینید:\n"
+"\n"
+"%5$s\n"
+"\n"
+"با تشکر از شما،\n"
+"%6$s\n"
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Ú¯Ùت‌وگوی کامل می‌تواند این‌جا خوانده شود:\n"
+"\n"
+"\t\t%s"
-#: lib/mail.php:635
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
-msgstr "به توجه شما یک خبر Ùرستاده شده %s (@%s)"
+msgstr "%s (@%s) به توجه شما یک پیام Ùرستاد"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5735,11 +6442,45 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
+"%1$s (@%9$s) یک پاسخ به پیام شما (یک «@-پاسخ») در %2$s داده است.\n"
+"\n"
+"پیام این است:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"پاسخ داده است:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$sشما می‌توانید این‌جا پاسخ دهید:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"Ùهرست تمام @-پاسخ‌ها برای شما این‌جا است:\n"
+"\n"
+"%7$s\n"
+"\n"
+"با تشکر،\n"
+"%2$s\n"
+"\n"
+"پ.ن. شما می‌توانید این آگاه‌سازی با نامه را این‌جا خاموش کنید:%8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
-msgstr "تنها کاربران می تواند صندوق نامه ی خودشان را بخوانند."
+msgstr "تنها کاربران می تواند صندوق نامهٔ خودشان را بخوانند."
#: lib/mailbox.php:139
msgid ""
@@ -5747,7 +6488,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "از"
@@ -5768,9 +6509,9 @@ msgid "Sorry, no incoming email allowed."
msgstr "با عرض پوزش، اجازه‌ی ورودی پست الکترونیک وجود ندارد"
#: lib/mailhandler.php:228
-#, fuzzy, php-format
+#, php-format
msgid "Unsupported message type: %s"
-msgstr "Ùرمت(Ùایل) عکس پشتیبانی نشده."
+msgstr "نوع پیام پشتیبانی نشده است: %s"
#: lib/mediafile.php:98 lib/mediafile.php:123
msgid "There was a database error while saving your file. Please try again."
@@ -5789,7 +6530,7 @@ msgstr ""
#: lib/mediafile.php:152
msgid "The uploaded file was only partially uploaded."
-msgstr "Ùایل ارسال شده نتها اندکی ارسال شد."
+msgstr "نتها اندکی از Ùایل بارگذاری‌شده Ùرستاده شد."
#: lib/mediafile.php:159
msgid "Missing a temporary folder."
@@ -5801,34 +6542,33 @@ msgstr "شکست خوردن در نوشتن Ùایل روی دیسک."
#: lib/mediafile.php:165
msgid "File upload stopped by extension."
-msgstr ""
+msgstr "بارگذاری پرونده توسط اÙزونه متوق٠شد."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
-msgstr ""
+msgstr "پرونده از سهمیهٔ کاربر می‌گذرد."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Ùایل نتوانست به دایرکتوری مقصد منتقل شود."
-#: lib/mediafile.php:201 lib/mediafile.php:237
-#, fuzzy
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
-msgstr "نمی‌توان کاربر منبع را تعیین کرد."
+msgstr "نمی‌توان Ùرمت پرونده را تعیین کرد."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr "تلاش برای امتحان نوع دیگر %s"
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
-msgstr ""
+msgstr "%s یک گونهٔ پروندهٔ پیشتیبانی شده روی این کارگزار نیست."
#: lib/messageform.php:120
msgid "Send a direct notice"
-msgstr "یک Ø¢Ú¯Ù‡ÛŒ مستقیم بÙرستید."
+msgstr "Ùرستادن یک پیام مستقیم"
#: lib/messageform.php:146
msgid "To"
@@ -5839,120 +6579,127 @@ msgid "Available characters"
msgstr "کاراکترهای موجود"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Ùرستادن"
#: lib/noticeform.php:160
msgid "Send a notice"
-msgstr "یک Ø¢Ú¯Ù‡ÛŒ بÙرستید"
+msgstr "Ùرستادن یک پیام"
#: lib/noticeform.php:173
#, php-format
msgid "What's up, %s?"
-msgstr "چه شده %s ?"
+msgstr "چه خبر، %s؟"
#: lib/noticeform.php:192
msgid "Attach"
-msgstr "ضمیمه کردن"
+msgstr "پیوست کردن"
#: lib/noticeform.php:196
msgid "Attach a file"
-msgstr "یک Ùایل ضمیمه کنید"
+msgstr "یک Ùایل پیوست کنید"
#: lib/noticeform.php:212
-#, fuzzy
msgid "Share my location"
-msgstr "نمی‌توان تنظیمات مکانی را تنظیم کرد."
+msgstr "مکان من به اشتراک گذاشته شود"
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "نمی‌توان تنظیمات مکانی را تنظیم کرد."
+msgstr "موقعیت من به اشتراک گذاشته نشود"
#: lib/noticeform.php:216
msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please "
"try again later"
msgstr ""
+"متاسÙیم، دریاÙت محل جغراÙیایی شما بیش از انتظار طول کشیده است، لطÙا بعدا "
+"دوباره تلاش کنید."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr ""
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "در"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "در زمینه"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "تکرار از"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
-msgstr "به این آگهی جواب دهید"
+msgstr "به این پیام پاسخ دهید"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
-msgstr "جواب دادن"
+msgstr "پاسخ"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
-msgstr "آگهی تکرار شد"
+msgstr "پیام تکرار شد"
#: lib/nudgeform.php:116
msgid "Nudge this user"
-msgstr ""
+msgstr "یادآوری‌کردن به این کاربر"
#: lib/nudgeform.php:128
msgid "Nudge"
-msgstr ""
+msgstr "یادآوری‌کردن"
#: lib/nudgeform.php:128
msgid "Send a nudge to this user"
-msgstr "برای این کاربر اژير بÙرست"
+msgstr "یک یادآوری به این کاربر Ùرستاده شود"
#: lib/oauthstore.php:283
msgid "Error inserting new profile"
-msgstr "خطا در درج مشخصات جدید"
+msgstr "هنگام قرار دادن نمایهٔ تازه خطا رخ داد"
#: lib/oauthstore.php:291
msgid "Error inserting avatar"
-msgstr ""
+msgstr "هنگام اÙزودن چهره خطایی رخ داد"
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "هنگام به‌روز کردن نمایهٔ از راه دور خطا رخ داد"
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
-msgstr ""
+msgstr "هنگام اÙزودن نمایهٔ ازراه‌دور خطایی رخ داد"
#: lib/oauthstore.php:345
msgid "Duplicate notice"
-msgstr ""
+msgstr "رونوشت‌برداری از پیام"
#: lib/oauthstore.php:490
msgid "Couldn't insert new subscription."
-msgstr ""
+msgstr "نمی‌توان اشتراک تازه‌ای اÙزود."
#: lib/personalgroupnav.php:99
msgid "Personal"
@@ -5964,7 +6711,7 @@ msgstr "پاسخ ها"
#: lib/personalgroupnav.php:114
msgid "Favorites"
-msgstr "چیزهای مورد علاقه"
+msgstr "برگزیده‌ها"
#: lib/personalgroupnav.php:125
msgid "Inbox"
@@ -5980,18 +6727,18 @@ msgstr "صندوق خروجی"
#: lib/personalgroupnav.php:131
msgid "Your sent messages"
-msgstr "پیام های Ùرستاده شده به وسیله ÛŒ شما"
+msgstr "پیام‌های Ùرستاده شدهٔ شما"
#: lib/personaltagcloudsection.php:56
#, php-format
msgid "Tags in %s's notices"
-msgstr ""
+msgstr "برچسب‌ها در پیام‌های %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
-msgstr ""
+msgstr "ناشناخته"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "اشتراک‌ها"
@@ -5999,33 +6746,34 @@ msgstr "اشتراک‌ها"
msgid "All subscriptions"
msgstr "تمام اشتراک‌ها"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "مشترک‌ها"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "تمام مشترک‌ها"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "شناسه کاربر"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "عضو شده از"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "میانگین روزانه"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "تمام گروه‌ها"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr ""
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
-msgstr ""
+msgstr "روش پیاده نشده است."
#: lib/publicgroupnav.php:78
msgid "Public"
@@ -6047,23 +6795,30 @@ msgstr "خصوصیت"
msgid "Popular"
msgstr "محبوب"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
#: lib/repeatform.php:107
-#, fuzzy
msgid "Repeat this notice?"
-msgstr "به این آگهی جواب دهید"
+msgstr "این پیام تکرار شود؟"
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "بله"
#: lib/repeatform.php:132
msgid "Repeat this notice"
-msgstr ""
+msgstr "تکرار این پیام"
#: lib/revokeroleform.php:91
#, fuzzy, php-format
msgid "Revoke the \"%s\" role from this user"
msgstr "دسترسی کاربر را به گروه مسدود کن"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "هیچ کاربر تنهایی برای حالت تک کاربره مشخص نشده است."
#: lib/sandboxform.php:67
msgid "Sandbox"
@@ -6091,23 +6846,23 @@ msgstr "راهنمای جستجو"
#: lib/searchgroupnav.php:80
msgid "People"
-msgstr "شخص"
+msgstr "اÙراد"
#: lib/searchgroupnav.php:81
msgid "Find people on this site"
-msgstr "پیدا کردن شخص در این سایت"
+msgstr "پیدا کردن اÙراد در این وب‌گاه"
#: lib/searchgroupnav.php:83
msgid "Find content of notices"
-msgstr ""
+msgstr "پیدا کردن محتوای پیام‌ها"
#: lib/searchgroupnav.php:85
msgid "Find groups on this site"
-msgstr "پیداا کردن گروه ها در این سایت"
+msgstr "پیدا کردن گروه‌ها در این وب‌گاه"
#: lib/section.php:89
msgid "Untitled section"
-msgstr ""
+msgstr "بخش بی‌نام"
#: lib/section.php:106
msgid "More..."
@@ -6115,11 +6870,11 @@ msgstr "بیش‌تر..."
#: lib/silenceform.php:67
msgid "Silence"
-msgstr "آرامش"
+msgstr "ساکت کردن"
#: lib/silenceform.php:78
msgid "Silence this user"
-msgstr "آرامش این کاربر"
+msgstr "ساکت کردن این کاربر"
#: lib/subgroupnav.php:83
#, php-format
@@ -6129,7 +6884,7 @@ msgstr ""
#: lib/subgroupnav.php:91
#, php-format
msgid "People subscribed to %s"
-msgstr ""
+msgstr "اÙراد مشترک %s"
#: lib/subgroupnav.php:99
#, php-format
@@ -6143,7 +6898,7 @@ msgstr "دعوت‌کردن"
#: lib/subgroupnav.php:106
#, php-format
msgid "Invite friends and colleagues to join you on %s"
-msgstr " به شما ملحق شوند %s دوستان و همکاران را دعوت کنید تا در"
+msgstr "به شما ملحق شوند %s دوستان و همکاران را دعوت کنید تا در"
#: lib/subscriberspeopleselftagcloudsection.php:48
#: lib/subscriptionspeopleselftagcloudsection.php:48
@@ -6159,6 +6914,50 @@ msgstr ""
msgid "None"
msgstr "هیچ"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "به روز رسانی چهره موÙقیت آمیر نبود."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "خطا هنگام به‌هنگام‌سازی نمایهٔ از راه دور."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "اعلان های بالا"
@@ -6173,104 +6972,122 @@ msgstr ""
#: lib/unsilenceform.php:67
msgid "Unsilence"
-msgstr ""
+msgstr "از حالت سکوت درآوردن"
#: lib/unsilenceform.php:78
msgid "Unsilence this user"
-msgstr ""
+msgstr "این کاربر از حالت سکوت خارج شود"
#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
msgid "Unsubscribe from this user"
-msgstr ""
+msgstr "لغو مشترک‌شدن از این کاربر"
#: lib/unsubscribeform.php:137
msgid "Unsubscribe"
-msgstr ""
+msgstr "لغو اشتراک"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "کاربر %s (%d) هیچ تاریخچهٔ نمایه‌ای ندارد."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "ویرایش اواتور"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
-msgstr ""
+msgstr "اعمال کاربر"
+
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "پاک‌کردن کاربر در حالت اجرا است..."
-#: lib/userprofile.php:251
+#: lib/userprofile.php:263
msgid "Edit profile settings"
-msgstr "ویرایش تنظیمات پروÙيل"
+msgstr "ویرایش تنظیمات نمایه"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "ویرایش"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "پیام مستقیم به این کاربر بÙرستید"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "پیام"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
-msgstr ""
+msgstr "اداره کردن"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "پروÙایل کاربر"
+msgstr "وظیÙÙ‡Ù” کاربر"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr ""
+msgstr "رئیس"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "مدیر"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "چند ثانیه پیش"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "حدود یک دقیقه پیش"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "حدود %d دقیقه پیش"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "حدود یک ساعت پیش"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "حدود %d ساعت پیش"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "حدود یک روز پیش"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "حدود %d روز پیش"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "حدود یک ماه پیش"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "حدود %d ماه پیش"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "حدود یک سال پیش"
@@ -6282,11 +7099,11 @@ msgstr "%s یک رنگ صحیح نیست!"
#: lib/webcolor.php:123
#, php-format
msgid "%s is not a valid color! Use 3 or 6 hex chars."
-msgstr "%s یک رنگ صحیح نیست! از Û³ یا Û¶ حر٠مبنای شانزده استÙاده کنید"
+msgstr "%s یک رنگ صحیح نیست! از Û³ یا Û¶ نویسه مبنای شانزده استÙاده کنید"
-#: lib/xmppmanager.php:402
-#, fuzzy, php-format
+#: lib/xmppmanager.php:403
+#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
-"پیغام بسیار طولانی است - بیشترین اندازه امکان پذیر %d کاراکتر است , شما %d "
-"تا Ùرستادید"
+"پیام خیلی طولانی است - حداکثر تعداد مجاز %1$d نویسه است که شما %2$d نویسه را "
+"Ùرستادید."
diff --git a/locale/fi/LC_MESSAGES/statusnet.po b/locale/fi/LC_MESSAGES/statusnet.po
index 68a63537b..5b1465bc5 100644
--- a/locale/fi/LC_MESSAGES/statusnet.po
+++ b/locale/fi/LC_MESSAGES/statusnet.po
@@ -10,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:46+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:23+0000\n"
"Language-Team: Finnish\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: fi\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +23,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Hyväksy"
@@ -70,9 +70,8 @@ msgstr ""
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
-#, fuzzy
msgid "Closed"
-msgstr "Estä"
+msgstr "Suljettu"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
@@ -80,79 +79,85 @@ msgstr "Estä"
msgid "Save access settings"
msgstr "Profiilikuva-asetukset"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Tallenna"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+#, fuzzy
+msgid "No such page."
msgstr "Sivua ei ole."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Käyttäjää ei ole."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s ja kaverit, sivu %d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s ja kaverit"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Käyttäjän %s kavereiden syöte (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Käyttäjän %s kavereiden syöte (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Käyttäjän %s kavereiden syöte (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -160,7 +165,7 @@ msgstr ""
"Tämä on käyttäjän %s ja kavereiden aikajana, mutta kukaan ei ole lähettyänyt "
"vielä mitään."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -170,80 +175,82 @@ msgstr ""
"tai lähetä päivitys itse."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Ole ensimmäinen joka [lähettää päivityksen tästä aiheesta] (%%%%action."
"newnotice%%%%?status_textarea=%s)!"
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Sinä ja kaverit"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Käyttäjän %1$s ja kavereiden päivitykset palvelussa %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "API-metodia ei löytynyt!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Tämä metodi edellyttää POST sanoman."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Ei voitu päivittää käyttäjää."
@@ -253,7 +260,7 @@ msgstr "Ei voitu päivittää käyttäjää."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Käyttäjällä ei ole profiilia."
@@ -264,9 +271,9 @@ msgid "Could not save profile."
msgstr "Ei voitu tallentaa profiilia."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -325,49 +332,50 @@ msgstr "Suorat viestit käyttäjälle %s"
msgid "All the direct messages sent to %s"
msgstr "Kaikki suorat viestit käyttäjälle %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Viestissä ei ole tekstiä!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Liian pitkä päivitys. Maksimikoko päivitykselle on %d merkkiä."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Vastaanottajaa ei löytynyt."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Et voi lähettää suoraa viestiä käyttäjälle, jonka kanssa et ole vielä kaveri."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Käyttäjätunnukselle ei löytynyt statusviestiä."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Tämä päivitys on jo suosikki!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Ei voitu lisätä suosikiksi."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "Tämä päivitys ei ole suosikki!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Ei voitu poistaa suosikkia."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Ei voitu tilata käyttäjää: Käyttäjää ei löytynyt."
#: actions/apifriendshipscreate.php:118
@@ -384,8 +392,9 @@ msgstr "Ei voitu lopettaa tilausta: Käyttäjää ei löytynyt."
msgid "You cannot unfollow yourself."
msgstr "Et voi lopettaa itsesi tilausta!"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Kaksi käyttäjätunnusta tai nimeä täytyy antaa."
#: actions/apifriendshipsshow.php:134
@@ -398,117 +407,131 @@ msgstr "Julkista päivitysvirtaa ei saatu."
msgid "Could not find target user."
msgstr "Ei löytynyt yhtään päivitystä."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Käyttäjätunnuksessa voi olla ainoastaan pieniä kirjaimia ja numeroita ilman "
"välilyöntiä."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Tunnus on jo käytössä. Yritä toista tunnusta."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Tuo ei ole kelvollinen tunnus."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Kotisivun verkko-osoite ei ole toimiva."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Koko nimi on liian pitkä (max 255 merkkiä)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "kuvaus on liian pitkä (max 140 merkkiä)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Kotipaikka on liian pitkä (max 255 merkkiä)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Liikaa aliaksia. Maksimimäärä on %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
msgstr "Virheellinen alias: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias \"%s\" on jo käytössä. Yritä toista aliasta."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias ei voi olla sama kuin ryhmätunnus."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#, fuzzy
+msgid "Group not found."
msgstr "Ryhmää ei löytynyt!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Sinä kuulut jo tähän ryhmään."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Sinut on estetty osallistumasta tähän ryhmään ylläpitäjän toimesta."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Käyttäjä %s ei voinut liittyä ryhmään %s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Sinä et kuulu tähän ryhmään."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Ei voitu poistaa käyttäjää %s ryhmästä %s"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Käyttäjän %s ryhmät"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Ryhmät, joiden jäsen %s on"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Käyttäjän %s ryhmät"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "Ryhmän toiminnot"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Lataa"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -519,17 +542,17 @@ msgid "Invalid token."
msgstr "Koko ei kelpaa."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -565,12 +588,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Odottamaton lomakkeen lähetys."
@@ -590,20 +616,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Käyttäjätili"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Tunnus"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Salasana"
@@ -621,11 +649,11 @@ msgstr "Kaikki"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Tämä metodi edellyttää joko POST tai DELETE sanoman."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Et voi poistaa toisen käyttäjän päivitystä."
@@ -644,60 +672,64 @@ msgstr "Ilmoituksia ei voi pistää päälle."
msgid "Already repeated that notice."
msgstr "Poista tämä päivitys"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Päivitys poistettu."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Käyttäjätunnukselle ei löytynyt statusviestiä."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Päivitys on liian pitkä. Maksimipituus on %d merkkiä."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Ei löytynyt"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ei löytynyt."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "Maksimikoko päivitykselle on %d merkkiä, mukaan lukien URL-osoite."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formaattia ei ole tuettu."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / Käyttäjän %s suosikit"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr " Palvelun %s päivitykset, jotka %s / %s on merkinnyt suosikikseen."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Vastaukset päivitykseen %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
"%1$s -päivitykset, jotka on vastauksia käyttäjän %2$s / %3$s päivityksiin."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s julkinen aikajana"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s päivitykset kaikilta!"
@@ -712,19 +744,19 @@ msgstr "Vastaukset käyttäjälle %s"
msgid "Repeats of %s"
msgstr "Vastaukset käyttäjälle %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Päivitykset joilla on tagi %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Käyttäjän %1$s päivitykset palvelussa %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ei löytynyt."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-metodi on työn alla!"
#: actions/attachment.php:73
msgid "No such attachment."
@@ -745,8 +777,9 @@ msgstr "Kokoa ei ole."
msgid "Invalid size."
msgstr "Koko ei kelpaa."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Kuva"
@@ -756,9 +789,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Voit ladata oman profiilikuvasi. Maksimikoko on %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "Käyttäjälle ei löydy profiilia"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -777,7 +811,7 @@ msgid "Preview"
msgstr "Esikatselu"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Poista"
@@ -789,23 +823,28 @@ msgstr "Lataa"
msgid "Crop"
msgstr "Rajaa"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Profiilia ei ole määritelty."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Valitse neliön muotoinen alue kuvasta profiilikuvaksi"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Tiedoston data hävisi."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Kuva päivitetty."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Profiilikuvan päivittäminen epäonnistui."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Kuva poistettu."
@@ -814,38 +853,55 @@ msgstr "Kuva poistettu."
msgid "You already blocked that user."
msgstr "Sinä olet jo estänyt tämän käyttäjän."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Estä käyttäjä"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Ei"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Älä estä tätä käyttäjää"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Kyllä"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Estä tämä käyttäjä"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Käyttäjän estotiedon tallennus epäonnistui."
@@ -858,8 +914,8 @@ msgstr "Käyttäjän estotiedon tallennus epäonnistui."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Tuota ryhmää ei ole."
@@ -889,9 +945,10 @@ msgstr "Poista esto"
msgid "Unblock this user"
msgstr "Poista esto tältä käyttäjältä"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "Kuva"
#: actions/confirmaddress.php:75
@@ -906,34 +963,44 @@ msgstr "Vahvistuskoodia ei löytynyt."
msgid "That confirmation code is not for you!"
msgstr "Tämä vahvistuskoodi ei ole sinun!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Tuntematon osoitetyyppi %s "
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Tämä osoite on jo vahvistettu."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Ei voitu päivittää käyttäjää."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Ei voitu poistaa sähköpostivahvistusta."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Vahvista osoite"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Osoite \"%s\" on vahvistettu sinun käyttäjätunnuksellesi."
@@ -943,7 +1010,7 @@ msgid "Conversation"
msgstr "Keskustelu"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Päivitykset"
@@ -966,7 +1033,7 @@ msgstr "Sinä et kuulu tähän ryhmään."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Istuntoavaimesi kanssa oli ongelma."
@@ -982,23 +1049,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Älä poista tätä päivitystä"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Poista tämä päivitys"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Et ole kirjautunut sisään."
@@ -1023,11 +1092,13 @@ msgstr "Poista päivitys"
msgid "Are you sure you want to delete this notice?"
msgstr "Oletko varma että haluat poistaa tämän päivityksen?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Älä poista tätä päivitystä"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Poista tämä päivitys"
@@ -1050,133 +1121,154 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Poista tämä päivitys"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Ulkoasu"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Ulkoasuasetukset tälle StatusNet palvelulle."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Koko ei kelpaa."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Pikaviestin ei ole käytettävissä."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Vaihda salasanasi"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Kutsu"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Vaihda"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Palvelun ilmoitus"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
#, fuzzy
msgid "Theme for the site."
msgstr "Kirjaudu ulos palvelusta"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Palvelun ilmoitus"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Vaihda tautakuva"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Tausta"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Voit ladata ryhmälle logokuvan. Maksimikoko on %s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "On"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Off"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Vaihda väriä"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Sisältö"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Haku"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Teksti"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Linkit"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Käytä oletusasetuksia"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Tallenna"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1294,11 +1386,17 @@ msgstr "Käytä tätä lomaketta muokataksesi ryhmää."
msgid "description is too long (max %d chars)."
msgstr "kuvaus on liian pitkä (max %d merkkiä)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Virheellinen alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Ei voitu päivittää ryhmää."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Ei voitu lisätä aliasta."
@@ -1306,32 +1404,44 @@ msgstr "Ei voitu lisätä aliasta."
msgid "Options saved."
msgstr "Asetukset tallennettu."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Sähköpostiasetukset"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Määritä miten saat sähköpostin palvelusta %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Osoite"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Sähköpostiosoitteet"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Tämän hetken vahvistettu sähköpostiosoite."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Poista"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1340,109 +1450,143 @@ msgstr ""
"sähköpostilaatikostasi (ja roskapostikansiosta!) viesti, jossa on "
"lisäohjeita. "
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Peruuta"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Sähköpostiosoitteet"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Sähköpostiosoite, esimerkiksi \"käyttäjätunnus@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Lisää"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Saapuva sähköposti"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Lähetä sähköpostia tähän osoitteeseen tehdäksesi päivityksiä."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Tee uusi sähköpostiosoite johon lähettää päivityksiä; tämä poistaa vanhan "
"osoitteen"
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Uusi"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Asetukset"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Lähetä sähköpostilla tieto uusista tilaajista."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Lähetä sähköpostia, jos joku lisää päivitykseni suosikiksi."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Lähetä sähköpostia, jos joku lähettää minulle yksityisviestin."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Lähetä sähköpostia, jos joku lähettää minulle \"@-vastauksen\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Salli kavereiden tönäistä minua ja lähetä sähköpostilla ilmoitus."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Haluan lähettää päivityksiä sähköpostilla."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Julkaise MicroID sähköpostiosoitteelleni."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Asetukset tallennettu."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "Ulkoasuasetukset tallennettu."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Sähköpostiosoitetta ei ole."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Ei voida normalisoida sähköpostiosoitetta"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Tuo ei ole kelvollinen sähköpostiosoite."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Tämä on jo sähköpostiosoitteesi."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Tämä sähköpostiosoite kuuluu jo toisella käyttäjällä."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Ei voitu asettaa vahvistuskoodia."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1451,43 +1595,56 @@ msgstr ""
"sähköpostilaatikostasi (ja roskapostilaatikostasi!) vahvistuskoodisi ja "
"miten sitä käytetään. "
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Avoimia vahvistuksia ei ole peruutettavana."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Tämä on väärä pikaviestiosoite."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Vahvistus peruttu."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Tämä ei ole sähköpostiosoitteesi."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Osoite on poistettu."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Saapuvan sähköpostin osoitetta ei ole."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Ei voitu päivittää käyttäjätietoja."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Saapuvan sähköpostin osoite poistettu."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Uusi saapuvan sähköpostin osoite lisätty."
@@ -1607,8 +1764,9 @@ msgstr "Ei voitu muuttaa request tokeneita access tokeneiksi."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Tuntematon OMB-protokollan versio."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Virhe tapahtui etäprofiilin päivittämisessä"
#: actions/getfile.php:79
@@ -1640,13 +1798,13 @@ msgstr "Käyttäjä on asettanut eston sinulle."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Profiilia ei ole määritelty."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ei profiilia tuolle ID:lle."
@@ -1668,11 +1826,11 @@ msgstr "Käyttäjä on asettanut eston sinulle."
msgid "User is not a member of group."
msgstr "Käyttäjä ei kuulu tähän ryhmään."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Estä käyttäjä ryhmästä"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1680,15 +1838,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Älä estä tätä käyttäjää tästä ryhmästä"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Estä tätä käyttäjää osallistumassa tähän ryhmään"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1731,11 +1891,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "Voit ladata ryhmälle logokuvan. Maksimikoko on %s."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Käyttäjälle ei löydy profiilia"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Valitse neliön muotoinen alue kuvasta logokuvaksi"
@@ -1766,34 +1921,38 @@ msgstr "Lista ryhmän käyttäjistä."
msgid "Admin"
msgstr "Ylläpito"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Estä"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Tee tästä käyttäjästä ylläpitäjä"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Tee ylläpitäjäksi"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Tee tästä käyttäjästä ylläpitäjä"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s aikajana"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Ryhmän %1$s käyttäjien päivitykset palvelussa %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Ryhmät"
@@ -1813,7 +1972,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Luo uusi ryhmä"
@@ -1862,12 +2021,16 @@ msgstr "Käyttäjää ei ole estetty ryhmästä."
msgid "Error removing the block."
msgstr "Tapahtui virhe, kun estoa poistettiin."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Pikaviestiasetukset"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1876,15 +2039,25 @@ msgstr ""
"Voit lähettää ja vastaanottaa päivityksiä Jabber/GTalk-[pikaviestintä](%%doc."
"im%%) käyttäen. Alla voit määrittää osoitteesi ja asetuksesi. "
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Pikaviestin ei ole käytettävissä."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "Pikaviestiosoite"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Tämän hetken vahvistettu Jabber/GTalk -osoite."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1894,12 +2067,9 @@ msgstr ""
"käyttäjätililtäsi viesti, jossa on lisäohjeet. (Lisäsitkö %s:n "
"ystävälistaasi?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "Pikaviestiosoite"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1909,45 +2079,67 @@ msgstr ""
"Varmista että olet lisännyt %s kaverilistaasi pikaviestiohjelmassasi tai "
"GTalkissa."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Asetukset"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Lähetä minulle päivityksiä Jabberilla/GTalkilla."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Lähetä päivitys kun Jabber/GTalk -tilatietoni vaihtuu."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Lähetä Jabberilla/GTalkilla sellaistenkin ihmisten vastaukset, joita en ole "
"tilannut. "
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Julkaise MicroID Jabber/GTalk-osoitteelleni."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Asetukset tallennettu."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ei Jabber ID -osoitetta"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Ei voida normalisoida Jabber ID -tunnusta"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Tuo ei ole kelvollinen Jabber ID."
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Tämä on jo Jabber ID -tunnuksesi."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID kuuluu jo toiselle käyttäjälle."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1956,10 +2148,35 @@ msgstr ""
"Vahvistuskoodi lähetettiin antamaasi pikaviestinosoitteeseen. Sinun täytyy "
"antaa osoitteelle %s oikeus lähettää viestejä sinulle."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Tämä on väärä pikaviestiosoite."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Ei voitu poistaa sähköpostivahvistusta."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Vahvistus peruttu."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Tämä ei ole Jabber ID-tunnuksesi."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Osoite on poistettu."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1979,8 +2196,8 @@ msgid "Invites have been disabled."
msgstr "Kutsut ovat pois käytöstä."
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
"Sinun täytyy olla kirjautuneena sisään kutsuaksesi uusia käyttäjiä palveluun "
"%s"
@@ -2002,7 +2219,9 @@ msgstr "Kutsu uusia käyttäjiä"
msgid "You are already subscribed to these users:"
msgstr "Olet jos tilannut seuraavien käyttäjien päivitykset:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2056,12 +2275,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Lähetä"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s on kutsunut sinut liittymään palveluun %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2126,7 +2347,9 @@ msgstr "Sinun pitää olla kirjautunut sisään, jos haluat liittyä ryhmään."
msgid "No nickname or ID."
msgstr "Tunnusta ei ole."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s liittyi ryhmään %s"
@@ -2135,51 +2358,53 @@ msgstr "%s liittyi ryhmään %s"
msgid "You must be logged in to leave a group."
msgstr "Sinun pitää olla kirjautunut sisään, jotta voit erota ryhmästä."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Sinä et kuulu tähän ryhmään."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s erosi ryhmästä %s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Olet jo kirjautunut sisään."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Väärä käyttäjätunnus tai salasana"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Sinulla ei ole valtuutusta tähän."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Kirjaudu sisään"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Kirjaudu sisään"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Muista minut"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Kirjaudu sisään automaattisesti tulevaisuudessa; ei tietokoneille joilla "
"useampi käyttäjä!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Oletko hukannut tai unohtanut salasanasi?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2187,11 +2412,15 @@ msgstr ""
"Syötä turvallisuussyistä käyttäjätunnuksesi ja salasanasi uudelleen ennen "
"asetuksiesi muuttamista."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Kirjaudu sisään käyttäjätunnuksella ja salasanalla"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Kirjaud sisään käyttäjätunnuksella ja salasanalla. Ei vielä "
"käyttäjätunnusta? [Rekisteröi](%%action.register%%) käyttäjätunnus tai "
@@ -2217,7 +2446,8 @@ 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"
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "Ei nykyistä tilatietoa"
#: actions/newapplication.php:52
@@ -2256,12 +2486,12 @@ msgstr "Käytä tätä lomaketta luodaksesi ryhmän."
msgid "New message"
msgstr "Uusi viesti"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Et voi lähettää viestiä tälle käyttäjälle."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ei sisältöä!"
@@ -2269,7 +2499,7 @@ msgstr "Ei sisältöä!"
msgid "No recipient specified."
msgstr "Vastaanottajaa ei ole määritelty."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Älä lähetä viestiä itsellesi, vaan kuiskaa se vain hiljaa itsellesi."
@@ -2283,7 +2513,7 @@ msgstr "Viesti lähetetty"
msgid "Direct message to %s sent."
msgstr "Suora viesti käyttäjälle %s lähetetty"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax-virhe"
@@ -2291,7 +2521,7 @@ msgstr "Ajax-virhe"
msgid "New notice"
msgstr "Uusi päivitys"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Päivitys lähetetty"
@@ -2340,8 +2570,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Kaikki päivitykset hakuehdolla \"%s\""
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Käyttäjä ei ole sallinut tönäisyjä tai ei ole vahvistanut "
"sähköpostiosoitettaan."
@@ -2388,11 +2619,11 @@ msgid "You are not a user of that application."
msgstr "Sinä et kuulu tähän ryhmään."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2400,26 +2631,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Päivitykselle ei ole profiilia"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Käyttäjän %1$s päivitys %2$s"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "Yhdistä"
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Vain "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Tuo ei ole tuettu tietomuoto."
@@ -2529,7 +2765,7 @@ msgid "6 or more characters"
msgstr "6 tai useampia merkkejä"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Vahvista"
@@ -2541,11 +2777,11 @@ msgstr "Sama kuin ylläoleva salasana"
msgid "Change"
msgstr "Vaihda"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Salasanassa pitää olla 6 tai useampia merkkejä."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Salasanat eivät täsmää."
@@ -2557,7 +2793,7 @@ msgstr "Väärä vanha salasana"
msgid "Error saving user; invalid."
msgstr "Virhe tapahtui käyttäjän tallentamisessa; epäkelpo."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Uutta salasanaa ei voida tallentaa."
@@ -2566,7 +2802,7 @@ msgid "Password saved."
msgstr "Salasana tallennettu."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Polut"
@@ -2576,23 +2812,23 @@ msgstr "Polut ja palvelin asetukset tälle StatusNet palvelulle."
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Pikaviestin ei ole käytettävissä."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Pikaviestin ei ole käytettävissä."
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Taustakuvan hakemisto"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Pikaviestin ei ole käytettävissä."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2745,18 +2981,19 @@ msgstr ""
msgid "People search"
msgstr "Etsi ihmisiä"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "Ei sallittu henkilötagi: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Käyttäjät joilla henkilötagi %s - sivu %d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Päivityksen sisältö ei kelpaa"
#: actions/postnotice.php:101
@@ -2785,42 +3022,43 @@ msgstr ""
"1-64 pientä kirjainta tai numeroa, ei ääkkösiä eikä välimerkkejä tai "
"välilyöntejä"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Koko nimi"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Kotisivu"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "Kotisivusi, blogisi tai toisella sivustolla olevan profiilisi osoite."
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Kuvaile itseäsi ja kiinnostuksen kohteitasi %d merkillä"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Kuvaile itseäsi ja kiinnostuksen kohteitasi"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Tietoja"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Kotipaikka"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Olinpaikka kuten \"Kaupunki, Maakunta (tai Lääni), Maa\""
@@ -2830,7 +3068,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Tagit"
@@ -2864,7 +3102,7 @@ msgstr ""
"Tilaa automaattisesti kaikki, jotka tilaavat päivitykseni (ei sovi hyvin "
"ihmiskäyttäjille)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "\"Tietoja\" on liian pitkä (max 140 merkkiä)."
@@ -2906,7 +3144,7 @@ msgstr "Asetukset tallennettu."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3064,7 +3302,7 @@ msgstr "Vaihda salasana"
msgid "Recover password"
msgstr "Salasanan palautus"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Salasanan palautuspyyntö lähetetty."
@@ -3084,19 +3322,19 @@ msgstr "Vaihda"
msgid "Enter a nickname or email address."
msgstr "Syötä käyttäjätunnus tai sähköpostiosoite"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Käyttäjää tuolla sähköpostilla tai käyttäjätunnuksella ei ole."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Rekisteröityä sähköpostiosoitetta ei ole tälle käyttäjälle."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Virhe tapahtui osoitevahvistuksen tallentamisessa"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3104,113 +3342,127 @@ msgstr ""
"Ohjeet salasanan palauttamiseksi on lähetetty sähköpostiisiosoitteeseen, "
"joka on rekisteröity käyttäjätunnuksellesi."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Odottamaton salasanan uudelleenasetus."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Salasanassa pitää olla 6 tai useampia merkkejä."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Salasana ja salasanan vahvistus eivät täsmää."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Virhe tapahtui käyttäjän asettamisessa."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
"Uusi salasana tallennettiin onnistuneesti. Olet nyt kirjautunut sisään."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Valitettavasti vain kutsutut ihmiset voivat rekisteröityä."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Virheellinen kutsukoodin."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Rekisteröityminen onnistui"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Rekisteröidy"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Rekisteröityminen ei ole sallittu."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Et voi rekisteröityä, jos et hyväksy lisenssiehtoja."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Sähköpostiosoite on jo käytössä."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Käyttäjätunnus tai salasana ei kelpaa."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 pientä kirjainta tai numeroa, ei ääkkösiä eikä välimerkkejä tai "
"välilyöntejä. Pakollinen."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 tai useampia merkkejä. Pakollinen."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Sama kuin ylläoleva salasana. Pakollinen."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Sähköposti"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Käytetään ainoastaan päivityksien lähettämiseen, ilmoitusasioihin ja "
"salasanan uudelleen käyttöönottoon."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Pitempi nimi, mieluiten oikea nimesi"
-#: actions/register.php:494
-msgid "My text and files are available under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-"Minun tekstini ja tiedostoni ovat käytettävissä seuraavan lisenssin "
-"mukaisesti "
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
"poislukien yksityinen tieto: salasana, sähköpostiosoite, IM-osoite, "
"puhelinnumero."
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3243,7 +3495,7 @@ msgstr ""
"\n"
"Kiitokset rekisteröitymisestäsi ja toivomme että pidät palvelustamme."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3288,7 +3540,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Profiilisi URL-osoite toisessa yhteensopivassa mikroblogauspalvelussa"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Tilaa"
@@ -3332,7 +3584,7 @@ msgstr "Et voi rekisteröityä, jos et hyväksy lisenssiehtoja."
msgid "You already repeated that notice."
msgstr "Sinä olet jo estänyt tämän käyttäjän."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Luotu"
@@ -3372,7 +3624,7 @@ msgstr "Päivityksien syöte käyttäjälle %s"
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Tämä on käyttäjän %s aikajana, mutta %s ei ole lähettänyt vielä yhtään "
"päivitystä."
@@ -3387,8 +3639,8 @@ msgstr ""
#: actions/replies.php:206
#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Ole ensimmäinen joka [lähettää päivityksen tästä aiheesta] (%%%%action."
"newnotice%%%%?status_textarea=%s)!"
@@ -3408,7 +3660,7 @@ msgstr "Et voi lähettää viestiä tälle käyttäjälle."
msgid "User doesn't have this role."
msgstr "Käyttäjälle ei löydy profiilia"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Päivitys poistettu."
@@ -3425,7 +3677,7 @@ msgstr "Käyttäjä on asettanut eston sinulle."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3466,28 +3718,32 @@ msgstr "Sinun pitää olla kirjautunut sisään, jotta voit erota ryhmästä."
msgid "Application profile"
msgstr "Päivitykselle ei ole profiilia"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Tunnus"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Sivutus"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Kuvaus"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Tilastot"
@@ -3572,16 +3828,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3598,67 +3854,67 @@ msgstr "Ryhmä %s"
msgid "%1$s group, page %2$d"
msgstr "Ryhmän %s jäsenet, sivu %d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Ryhmän profiili"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Huomaa"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliakset"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Ryhmän toiminnot"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Syöte ryhmän %s päivityksille (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Syöte ryhmän %s päivityksille (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Syöte ryhmän %s päivityksille (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Käyttäjän %s lähetetyt viestit"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Jäsenet"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Tyhjä)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Kaikki jäsenet"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Luotu"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3668,7 +3924,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3679,7 +3935,7 @@ msgstr ""
"**%s** on ryhmä palvelussa %%%%site.name%%%%, joka on [mikroblogauspalvelu]"
"(http://en.wikipedia.org/wiki/Micro-blogging)"
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Ylläpitäjät"
@@ -3756,8 +4012,8 @@ msgstr ""
#: actions/showstream.php:207
#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Ole ensimmäinen joka [lähettää päivityksen tästä aiheesta] (%%%%action."
"newnotice%%%%?status_textarea=%s)!"
@@ -3816,11 +4072,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3915,7 +4171,7 @@ msgid "Unable to save site notice."
msgstr "Twitter-asetuksia ei voitu tallentaa!"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3932,47 +4188,77 @@ msgstr ""
msgid "Save site notice"
msgstr "Palvelun ilmoitus"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "SMS-asetukset"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"Voit saada SMS viestit sähköpostin välityksellä %%site.name%% -palvelusta."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS ei ole käytettävissä."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "Pikaviestiosoite"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Tämän hetken vahvistettu SMS puhelinnumero."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Odotetaan vahvistusta tälle puhelinnumerolle."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Vahvistuskoodi"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Syötä koodi jonka sait puhelimeesi."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Vahvista"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "SMS puhelinnumero"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Puhelinnumero, ei välimerkkejä tai välilyöntejä, suuntanumerollinen"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Asetukset"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3980,23 +4266,34 @@ msgstr ""
"Lähetä päivityksiä SMS:llä; Ymmärrän, että voin saada kohtuuttomia laskuja "
"tästä matkapuhelinoperaattoriltani."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Asetukset tallennettu."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Puhelinnumeroa ei ole."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Operaattoria ei ole valittu."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Tämä on jo puhelinnumerosi."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Tämä puhelinnumero kuuluu jo toiselle käyttäjälle."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -4004,23 +4301,42 @@ msgstr ""
"Vahvistuskoodi on lähetetty puhelinnumeroosi. Katso tekstiviesteistäsi "
"vahvistuskoodisi ja ohjeet miten sitä käytetään."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Tämä on väärä vahvistukoodi."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Vahvistus peruttu."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Tämä ei ole puhelinnumerosi."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS puhelinnumero"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Matkapuhelinoperaattori"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Valitse operaattori"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4030,13 +4346,14 @@ msgstr ""
"viestilähetyksiä sähköpostilla, mutta ei ole listattu tänne, lähetä "
"sähköpostia meille osoitteeseen %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Koodia ei ole syötetty."
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4058,7 +4375,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4098,8 +4415,8 @@ msgstr "Profiilikuva-asetukset"
msgid "You are not subscribed to that profile."
msgstr "Et ole tilannut tämän käyttäjän päivityksiä."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Tilausta ei onnistuttu tallentamaan."
@@ -4192,11 +4509,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s ei seuraa ketään käyttäjää."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4230,12 +4547,12 @@ msgstr "Ei id parametria."
msgid "Tag %s"
msgstr "Tagi %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Käyttäjän profiili"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Kuva"
@@ -4272,10 +4589,6 @@ msgstr ""
msgid "No such tag."
msgstr "Tuota tagia ei ole."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-metodi on työn alla!"
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4292,7 +4605,8 @@ msgid "User is not silenced."
msgstr "Käyttäjällä ei ole profiilia."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "Ei profiili id:tä kyselyssä."
#: actions/unsubscribe.php:98
@@ -4329,7 +4643,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profiili"
@@ -4396,7 +4711,7 @@ msgstr ""
"päivitykset. Jos et valinnut haluavasi tilata jonkin käyttäjän päivityksiä, "
"paina \"Peruuta\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Lisenssi"
@@ -4501,48 +4816,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Ryhmän %s jäsenet, sivu %d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Hae lisää ryhmiä"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "Sinä et kuulu tähän ryhmään."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Käyttäjän %1$s päivitykset palvelussa %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Tilastot"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4550,7 +4871,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4558,103 +4879,153 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Omat"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Koko ei kelpaa."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Ryhmän profiili"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Ei voitu päivittää ryhmää."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Ryhmän profiili"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Ei voitu päivittää ryhmää."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Ei voitu lisätä aliasta."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Tapahtui virhe suoran viestin lähetyksessä."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Viestin tallennus ei onnistunut."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Viestin päivittäminen uudella URI-osoitteella ei onnistunut."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Tietokantavirhe tallennettaessa risutagiä: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Ongelma päivityksen tallentamisessa."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Virhe tapahtui päivityksen tallennuksessa. Tuntematon käyttäjä."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Liian monta päivitystä liian nopeasti; pidä pieni hengähdystauko ja jatka "
"päivityksien lähettämista muutaman minuutin päästä."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4662,238 +5033,305 @@ msgstr ""
"Liian monta päivitystä liian nopeasti; pidä pieni hengähdystauko ja jatka "
"päivityksien lähettämista muutaman minuutin päästä."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Päivityksesi tähän palveluun on estetty."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Ongelma päivityksen tallentamisessa."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Ongelma päivityksen tallentamisessa."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Käyttäjällä ei ole profiilia."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Twitter-asetuksia ei voitu tallentaa!"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "Käyttäjä on estänyt sinua tilaamasta päivityksiä."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Käyttäjä on asettanut eston sinulle."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Ei ole tilattu!."
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Ei voitu poistaa tilausta."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Ei voitu poistaa tilausta."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Ei voitu poistaa tilausta."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Viesti käyttäjälle %1$s, %2$s"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Ryhmän luonti ei onnistunut."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Ryhmän jäsenyystietoja ei voitu asettaa."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Ryhmän jäsenyystietoja ei voitu asettaa."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Tilausta ei onnistuttu tallentamaan."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Vaihda profiiliasetuksesi"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Lataa kuva"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Vaihda salasanasi"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Muuta sähköpostin käsittelyasetuksia."
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Käyttäjän profiili"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Muut"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Muita asetuksia"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Muut"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Nimetön sivu"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Ensisijainen sivunavigointi"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Henkilökohtainen profiili ja kavereiden aikajana"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Omat"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Muuta sähköpostiosoitettasi, kuvaasi, salasanaasi, profiiliasi"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Ei voitu uudelleenohjata palvelimelle: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Yhdistä"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Ensisijainen sivunavigointi"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "Ylläpito"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Kutsu kavereita ja työkavereita liittymään palveluun %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Kutsu"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Kirjaudu ulos palvelusta"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Kirjaudu ulos"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Luo uusi käyttäjätili"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Rekisteröidy"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Kirjaudu sisään palveluun"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Kirjaudu sisään"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Auta minua!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Ohjeet"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Hae ihmisiä tai tekstiä"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4901,74 +5339,88 @@ msgstr "Haku"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Palvelun ilmoitus"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Paikalliset näkymät"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Sivuilmoitus"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Toissijainen sivunavigointi"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ohjeet"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Tietoa"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "UKK"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Yksityisyys"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Lähdekoodi"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Ota yhteyttä"
-#: lib/action.php:771
+#: lib/action.php:794
#, fuzzy
msgid "Badge"
msgstr "Tönäise"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet-ohjelmiston lisenssi"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** on mikroblogipalvelu, jonka tarjoaa [%%site.broughtby%%](%%"
"site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** on mikroblogipalvelu. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** on mikroblogipalvelu."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4979,70 +5431,84 @@ msgstr ""
"versio %s, saatavilla lisenssillä [GNU Affero General Public License](http://"
"www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "StatusNet-ohjelmiston lisenssi"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Kaikki "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "lisenssi."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Sivutus"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Myöhemmin"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Aiemmin"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "Et voi lähettää viestiä tälle käyttäjälle."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "Rekisteröityminen ei ole sallittu."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5054,167 +5520,205 @@ msgstr "Komentoa ei ole vielä toteutettu."
msgid "saveSettings() not implemented."
msgstr "Komentoa ei ole vielä toteutettu."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "Twitter-asetuksia ei voitu tallentaa!"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Sähköpostiosoitteen vahvistus"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Kutsu"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "SMS vahvistus"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Ulkoasu"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "SMS vahvistus"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Käyttäjä"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS vahvistus"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS vahvistus"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "SMS vahvistus"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Palvelun ilmoitus"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS vahvistus"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Kuvaile ryhmää tai aihetta 140 merkillä"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Kuvaile ryhmää tai aihetta 140 merkillä"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Lähdekoodi"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "Ryhmän tai aiheen kotisivun tai blogin osoite"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Lähdekoodi"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "Ryhmän tai aiheen kotisivun tai blogin osoite"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Peruuta"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Poista"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "Profiili"
@@ -5227,47 +5731,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Salasanan vaihto"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Salasanan vaihto"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Komennon tulos"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Komento suoritettu"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Komento epäonnistui"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Valitettavasti tätä komentoa ei ole vielä toteutettu."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Ei profiilia tuolla id:llä."
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Käyttäjällä ei ole viimeistä päivitystä"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Ei voitu päivittää käyttäjälle vahvistettua sähköpostiosoitetta."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Ei voitu päivittää käyttäjälle vahvistettua sähköpostiosoitetta."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Valitettavasti tätä komentoa ei ole vielä toteutettu."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Tönäisy lähetetty"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5275,203 +5799,207 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Ei profiilia tuolla id:llä."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Käyttäjällä ei ole viimeistä päivitystä"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Päivitys on merkitty suosikiksi."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Sinä kuulut jo tähän ryhmään."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Käyttäjä %s ei voinut liittyä ryhmään %s."
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s liittyi ryhmään %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Ei voitu poistaa käyttäjää %s ryhmästä %s"
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s erosi ryhmästä %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Koko nimi: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Kotipaikka: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Kotisivu: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Tietoa: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "Viesti oli liian pitkä - maksimikoko on 140 merkkiä, lähetit %d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Suora viesti käyttäjälle %s lähetetty"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Tapahtui virhe suoran viestin lähetyksessä."
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Ilmoituksia ei voi pistää päälle."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Poista tämä päivitys"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Päivitys lähetetty"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Ongelma päivityksen tallentamisessa."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Viesti oli liian pitkä - maksimikoko on 140 merkkiä, lähetit %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "Vastaa tähän päivitykseen"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Ongelma päivityksen tallentamisessa."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Anna käyttäjätunnus, jonka päivitykset haluat tilata"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Käyttäjää ei ole."
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Et ole tilannut tämän käyttäjän päivityksiä."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Käyttäjän %s päivitykset tilattu"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Anna käyttäjätunnus, jonka päivityksien tilauksen haluat lopettaa"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Käyttäjän %s päivitysten tilaus lopetettu"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Komentoa ei ole vielä toteutettu."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Ilmoitukset pois päältä."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Ilmoituksia ei voi pistää pois päältä."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Ilmoitukset päällä."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Ilmoituksia ei voi pistää päälle."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Käyttäjän %s päivitysten tilaus lopetettu"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Et ole tilannut tämän käyttäjän päivityksiä."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Olet jos tilannut seuraavien käyttäjien päivitykset:"
msgstr[1] "Olet jos tilannut seuraavien käyttäjien päivitykset:"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Toista ei voitu asettaa tilaamaan sinua."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Toista ei voitu asettaa tilaamaan sinua."
msgstr[1] "Toista ei voitu asettaa tilaamaan sinua."
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Sinä et kuulu tähän ryhmään."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Sinä et kuulu tähän ryhmään."
msgstr[1] "Sinä et kuulu tähän ryhmään."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5513,20 +6041,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Varmistuskoodia ei ole annettu."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "Kirjaudu sisään palveluun"
@@ -5705,53 +6233,54 @@ msgstr "Ryhmät, joissa eniten päivityksiä"
msgid "Tags in %s group's notices"
msgstr "Tagit ryhmän %s päivityksissä"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Tämä sivu ei ole saatavilla sinulle sopivassa mediatyypissä."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Kuvatiedoston formaattia ei ole tuettu."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Voit ladata ryhmälle logon."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Osittain ladattu palvelimelle."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Tiedoston lähetyksessä tapahtui järjestelmävirhe."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Tuo ei ole kelvollinen kuva tai tiedosto on rikkoutunut."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Kuvatiedoston formaattia ei ole tuettu."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Tiedosto hävisi."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tunnistamaton tiedoston tyyppi"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5772,11 +6301,13 @@ msgstr "Kirjaudu sisään käyttäjätunnuksella ja salasanalla"
msgid "Sign up for a new account"
msgstr "Luo uusi käyttäjätili"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Sähköpostiosoitteen vahvistus"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5793,12 +6324,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s seuraa nyt päivityksiäsi palvelussa %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5823,19 +6363,22 @@ msgstr ""
"----\n"
"Voit vaihtaa sähköpostiosoitetta tai ilmoitusasetuksiasi %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"Tietoja: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Uusi sähköpostiosoite päivityksien lähettämiseen palveluun %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5856,21 +6399,31 @@ msgstr ""
"Terveisin,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s päivitys"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS vahvistus"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Odotetaan vahvistusta tälle puhelinnumerolle."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s tönäisi sinua"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5886,12 +6439,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Uusi yksityisviesti käyttäjältä %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5910,12 +6465,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s lisäsi päivityksesi suosikkeihinsa"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5936,12 +6493,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5954,6 +6521,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5966,7 +6545,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " lähteestä "
@@ -6022,25 +6601,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Julkista päivitysvirtaa ei saatu."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6096,51 +6675,55 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "Ei"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "Ei sisältöä!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Luotu"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Vastaa tähän päivitykseen"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Vastaus"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Päivitys on poistettu."
@@ -6165,6 +6748,10 @@ msgstr "Virhe tapahtui uuden profiilin lisäämisessä"
msgid "Error inserting avatar"
msgstr "Virhe tapahtui profiilikuvan lisäämisessä"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Virhe tapahtui etäprofiilin päivittämisessä"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Virhe tapahtui uuden etäprofiilin lisäämisessä"
@@ -6211,12 +6798,12 @@ msgstr "Lähettämäsi viestit"
msgid "Tags in %s's notices"
msgstr "Tagit käyttäjän %s päivityksissä"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "Tuntematon toiminto"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Tilaukset"
@@ -6224,33 +6811,33 @@ msgstr "Tilaukset"
msgid "All subscriptions"
msgstr "Kaikki tilaukset"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Tilaajat"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Kaikki tilaajat"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "Käyttäjä"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Käyttäjänä alkaen"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Kaikki ryhmät"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Ei id parametria."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6274,12 +6861,21 @@ msgstr "Esittelyssä"
msgid "Popular"
msgstr "Suosituimmat"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Ei id parametria."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Vastaa tähän päivitykseen"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Kyllä"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Vastaa tähän päivitykseen"
@@ -6289,7 +6885,7 @@ msgstr "Vastaa tähän päivitykseen"
msgid "Revoke the \"%s\" role from this user"
msgstr "Estä tätä käyttäjää osallistumassa tähän ryhmään"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6393,6 +6989,50 @@ msgstr ""
msgid "None"
msgstr "Ei mitään"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Profiilikuvan päivittäminen epäonnistui."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Virhe tapahtui etäprofiilin päivittämisessä"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Eniten päivityksiä"
@@ -6423,93 +7063,112 @@ msgstr "Peruuta tämän käyttäjän tilaus"
msgid "Unsubscribe"
msgstr "Peruuta tilaus"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Käyttäjällä ei ole profiilia."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Kuva"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Käyttäjän toiminnot"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Profiiliasetukset"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Lähetä suora viesti tälle käyttäjälle"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Viesti"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Käyttäjän profiili"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "Ylläpitäjät"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "muutama sekunti sitten"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "noin minuutti sitten"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "noin %d minuuttia sitten"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "noin tunti sitten"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "noin %d tuntia sitten"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "noin päivä sitten"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "noin %d päivää sitten"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "noin kuukausi sitten"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "noin %d kuukautta sitten"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "noin vuosi sitten"
@@ -6523,7 +7182,7 @@ msgstr "Kotisivun verkko-osoite ei ole toimiva."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Viesti oli liian pitkä - maksimikoko on 140 merkkiä, lähetit %d"
diff --git a/locale/fr/LC_MESSAGES/statusnet.po b/locale/fr/LC_MESSAGES/statusnet.po
index 4c9429e21..e9890ef36 100644
--- a/locale/fr/LC_MESSAGES/statusnet.po
+++ b/locale/fr/LC_MESSAGES/statusnet.po
@@ -7,6 +7,7 @@
# Author@translatewiki.net: Julien C
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Peter17
+# Author@translatewiki.net: Y-M D
# --
# This file is distributed under the same license as the StatusNet package.
#
@@ -14,12 +15,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:51+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:27+0000\n"
"Language-Team: French\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: fr\n"
"X-Message-Group: out-statusnet\n"
@@ -27,7 +28,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Accès"
@@ -77,78 +78,83 @@ msgstr "Fermé"
msgid "Save access settings"
msgstr "Sauvegarder les paramètres d’accès"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Enregistrer"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Page non trouvée"
+msgid "No such page."
+msgstr "Page non trouvée."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Utilisateur non trouvé."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s et ses amis, page %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s et ses amis"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Flux pour les amis de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Flux pour les amis de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Flux pour les amis de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -156,7 +162,7 @@ msgstr ""
"Ceci est le flux pour %s et ses amis mais personne n’a rien posté pour le "
"moment."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -166,84 +172,86 @@ msgstr ""
"(%%action.groups%%) ou de poster quelque chose vous-même."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Vous pouvez essayer de [faire un clin d’œil à %1$s](../%2$s) depuis son "
"profil ou [poster quelque chose à son intention](%%%%action.newnotice%%%%?"
"status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"Pourquoi ne pas [créer un compte](%%%%action.register%%%%) et ensuite faire "
+"Pourquoi ne pas [créer un compte](%%%%action.register%%%%) et faire ensuite "
"un clin d’œil à %s ou poster un avis à son intention."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Vous et vos amis"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Statuts de %1$s et ses amis dans %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Méthode API non trouvée !"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Ce processus requiert un POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"Vous devez spécifier un paramètre « device » avec une des valeurs suivantes : "
-"sms, im, none"
+"sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Impossible de mettre à jour l’utilisateur."
@@ -252,7 +260,7 @@ msgstr "Impossible de mettre à jour l’utilisateur."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Aucun profil ne correspond à cet utilisateur."
@@ -262,9 +270,9 @@ msgid "Could not save profile."
msgstr "Impossible d’enregistrer le profil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -322,49 +330,49 @@ msgstr "Messages directs envoyés à %s"
msgid "All the direct messages sent to %s"
msgstr "Tous les messages directs envoyés à %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Message sans texte !"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "C’est trop long ! La taille maximale du message est de %d caractères."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Destinataire non trouvé."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Vous ne pouvez envoyer des messages personnels qu’aux utilisateurs inscrits "
"comme amis."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Aucun statut trouvé avec cet identifiant. "
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Cet avis est déjà un favori."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Impossible de créer le favori."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Cet avis n’est pas un favori."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Impossible de supprimer le favori."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Impossible de suivre l’utilisateur : Utilisateur non trouvé."
+msgid "Could not follow user: profile not found."
+msgstr "Impossible de suivre l’utilisateur : profil non trouvé."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -379,9 +387,9 @@ msgstr "Impossible de ne plus suivre l’utilisateur : utilisateur non trouvé."
msgid "You cannot unfollow yourself."
msgstr "Vous ne pouvez pas ne plus vous suivre vous-même."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Vous devez fournir 2 identifiants ou pseudos."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Vous devez fournir deux identifiants ou pseudonymes."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -391,117 +399,129 @@ msgstr "Impossible de déterminer l’utilisateur source."
msgid "Could not find target user."
msgstr "Impossible de trouver l’utilisateur cible."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Les pseudos ne peuvent contenir que des caractères minuscules et des "
"chiffres, sans espaces."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Pseudo déjà utilisé. Essayez-en un autre."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Pseudo invalide."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "L’adresse du site personnel n’est pas un URL valide. "
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Nom complet trop long (maximum de 255 caractères)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "La description est trop longue (%d caractères maximum)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Emplacement trop long (maximum de 255 caractères)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Trop d’alias ! Maximum %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Alias invalide : « %s »"
+msgid "Invalid alias: \"%s\"."
+msgstr "Alias invalide : « %s »."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias « %s » déjà utilisé. Essayez-en un autre."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "L’alias ne peut pas être le même que le pseudo."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Groupe non trouvé !"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Groupe non trouvé."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Vous êtes déjà membre de ce groupe."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Vous avez été bloqué de ce groupe par l’administrateur."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Impossible de joindre l’utilisateur %1$s au groupe %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Vous n’êtes pas membre de ce groupe."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Impossible de retirer l’utilisateur %1$s du groupe %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Groupes de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Groupes de %1$s dont %2$s est membre."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Groupes de %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "groupes sur %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Échec du téléversement."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Paramètre oauth_token non fourni."
@@ -511,17 +531,17 @@ msgid "Invalid token."
msgstr "Jeton incorrect."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -559,12 +579,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Le jeton de connexion %s a été refusé et révoqué."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Soumission de formulaire inattendue."
@@ -589,20 +612,22 @@ msgstr ""
"devriez donner l’accès à votre compte %4$s qu’aux tiers à qui vous faites "
"confiance."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Compte"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Pseudo"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Mot de passe"
@@ -618,11 +643,11 @@ msgstr "Autoriser"
msgid "Allow or deny access to your account information."
msgstr "Autoriser ou refuser l’accès à votre compte."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Ce processus requiert un POST ou un DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Vous ne pouvez pas supprimer le statut d’un autre utilisateur."
@@ -639,61 +664,65 @@ msgstr "Vous ne pouvez pas reprendre votre propre avis."
msgid "Already repeated that notice."
msgstr "Vous avez déjà repris cet avis."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Statut supprimé."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Aucun statut trouvé avec cet identifiant."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Le client doit fournir un paramètre « statut » avec une valeur."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "C’est trop long ! La taille maximale de l’avis est de %d caractères."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Non trouvé"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Non trouvé."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"La taille maximale de l’avis est de %d caractères, en incluant l’URL de la "
"pièce jointe."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Format non supporté."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoris de %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s statuts favoris de %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Mises à jour mentionnant %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s statuts en réponses aux statuts de %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Activité publique %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s statuts de tout le monde !"
@@ -708,19 +737,19 @@ msgstr "Repris pour %s"
msgid "Repeats of %s"
msgstr "Reprises de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Avis marqués avec %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Mises à jour marquées avec %1$s dans %2$s !"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Non trouvé."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Méthode API en construction."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -741,8 +770,9 @@ msgstr "Aucune taille"
msgid "Invalid size."
msgstr "Taille incorrecte."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -754,10 +784,10 @@ msgstr ""
"taille maximale du fichier est de %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Utilisateur sans profil correspondant"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Utilisateur sans profil correspondant."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -775,7 +805,7 @@ msgid "Preview"
msgstr "Aperçu"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Supprimer"
@@ -787,23 +817,27 @@ msgstr "Transfert"
msgid "Crop"
msgstr "Recadrer"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Aucun fichier n’a été téléversé."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Sélectionnez une zone de forme carrée pour définir votre avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Données perdues."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar mis à jour."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "La mise à jour de l’avatar a échoué."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar supprimé."
@@ -811,11 +845,11 @@ msgstr "Avatar supprimé."
msgid "You already blocked that user."
msgstr "Vous avez déjà bloqué cet utilisateur."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Bloquer cet utilisateur"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -825,27 +859,42 @@ msgstr ""
"abonné à votre compte, ne pourra plus s’y abonner de nouveau, et vous ne "
"serez pas informé des @-réponses de sa part."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Non"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Ne pas bloquer cet utilisateur"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Oui"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Bloquer cet utilisateur"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Impossible d’enregistrer les informations de blocage."
@@ -858,8 +907,8 @@ msgstr "Impossible d’enregistrer les informations de blocage."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Aucun groupe trouvé."
@@ -889,9 +938,11 @@ msgstr "Débloquer"
msgid "Unblock this user"
msgstr "Débloquer cet utilisateur"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Poster sur "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Poster sur %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -905,33 +956,43 @@ msgstr "Code de confirmation non trouvé."
msgid "That confirmation code is not for you!"
msgstr "Ce code de confirmation n’est pas pour vous !"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Type d’adresse non reconnu : %s"
+msgid "Unrecognized address type %s."
+msgstr "Type d’adresse non reconnu : %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Cette adresse a déjà été confirmée."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Impossible de mettre à jour l’utilisateur."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Impossible de supprimer le courriel de confirmation."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Confirmer l’adresse"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "L'adresse \"%s\" a été validée pour votre compte."
@@ -941,7 +1002,7 @@ msgid "Conversation"
msgstr "Conversation"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Avis"
@@ -960,7 +1021,7 @@ msgstr "Vous n’êtes pas le propriétaire de cette application."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Un problème est survenu avec votre jeton de session."
@@ -978,21 +1039,23 @@ msgstr ""
"données à son propos de la base de données, y compris toutes les connexions "
"utilisateur existantes."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ne pas supprimer cette application"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Supprimer cette application"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Non connecté."
@@ -1017,11 +1080,13 @@ msgstr "Supprimer cet avis"
msgid "Are you sure you want to delete this notice?"
msgstr "Voulez-vous vraiment supprimer cet avis ?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ne pas supprimer cet avis"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Supprimer cet avis"
@@ -1045,58 +1110,70 @@ msgstr ""
"Voulez-vous vraiment supprimer cet utilisateur ? Ceci effacera toutes les "
"données à son propos de la base de données, sans sauvegarde."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Supprimer cet utilisateur"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Conception"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Paramètres de conception pour ce site StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL du logo invalide."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Le thème n’est pas disponible : %s"
+msgid "Theme not available: %s."
+msgstr "Le thème n’est pas disponible : %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Modifier le logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo du site"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Modifier le thème"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Thème du site"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Thème pour le site."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Thème personnalisé"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+"Vous pouvez importer un thème StatusNet personnalisé dans une archive .ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Changer l’image d’arrière plan"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Arrière plan"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1105,67 +1182,76 @@ msgstr ""
"Vous pouvez importer une image d’arrière plan pour ce site. La taille "
"maximale du fichier est de %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Activé"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Désactivé"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Activer ou désactiver l’image d’arrière plan."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Répéter l’image d’arrière plan"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Modifier les couleurs"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Contenu"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barre latérale"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texte"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Liens"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avancé"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personnalisé"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Utiliser les valeurs par défaut"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Restaurer les conceptions par défaut"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Revenir aux valeurs par défaut"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Enregistrer"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Sauvegarder la conception"
@@ -1270,11 +1356,17 @@ msgstr "Remplissez ce formulaire pour modifier les options du groupe."
msgid "description is too long (max %d chars)."
msgstr "la description est trop longue (%d caractères maximum)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Alias invalide : « %s »"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Impossible de mettre à jour le groupe."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Impossible de créer les alias."
@@ -1282,31 +1374,42 @@ msgstr "Impossible de créer les alias."
msgid "Options saved."
msgstr "Vos options ont été enregistrées."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Paramètres du courriel"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Configurez les courriels que vous souhaitez recevoir de %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresse"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Adresse électronique"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Adresse courriel actuellement confirmée."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Retirer"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1314,108 +1417,138 @@ msgstr ""
"En attente d’une confirmation pour cette adresse. Vérifiez votre boîte de "
"réception (et celle de spam !) pour recevoir de nouvelles instructions."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Annuler"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Adresse électronique"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Adresse de courriel (ex : nom@example.org)"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Ajouter"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Courriel entrant"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Écrivez à cette adresse courriel pour poster de nouveaux avis."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Nouvelle adresse courriel pour poster ; annule l’ancienne."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nouveau"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Préférences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Préférences de courrier électronique"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Avertissez-moi par courriel des nouveaux abonnements."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Envoyez-moi un courriel quand un utilisateur ajoute un de mes avis à ses "
"favoris."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Envoyez-moi un courriel quand quelqu’un m’envoie un message personnel."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Envoyez-moi un courriel quand quelqu’un m’envoie une réponse « @ »."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Autoriser mes amis à m’envoyer des courriels et des clins d’œil."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Je veux envoyer mes avis par courriel."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publier un MicroID pour mon adresse courriel."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Préférences enregistrées"
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Préférences de courrier électronique enregistrées."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
-msgstr "Aucune adresse courriel."
+msgstr "Aucune adresse électronique."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Impossible d’utiliser cette adresse courriel"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Adresse courriel invalide."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Vous utilisez déjà cette adresse courriel."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Cette adresse courriel appartient déjà à un autre utilisateur."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Impossible d’insérer le code de confirmation."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1423,43 +1556,53 @@ msgstr ""
"Un code de confirmation a été envoyé à l’adresse courriel indiquée. Vérifiez "
"votre boîte de réception pour récupérer le code et les instructions."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Aucune confirmation à annuler."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Cette adresse de messagerie instantanée est erronée."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Cette adresse de messagerie électronique est erronée."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmation annulée."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Confirmation de courrier électronique annulée."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Ceci n’est pas votre adresse courriel."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "L’adresse a été supprimée."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "L’adresse électronique a été supprimée."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Aucune adresse de courriel entrant."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Impossible de mettre à jour le dossier de l’utilisateur."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "L’adresse de courriel entrant a été supprimée."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nouvelle adresse de courriel entrant ajoutée."
@@ -1578,9 +1721,9 @@ msgstr "Impossible de convertir le jeton de requête en jeton d’accès."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Le service distant utilise une version inconnue du protocole OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Erreur lors de la mise à jour du profil distant"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Erreur lors de la mise à jour du profil distant."
#: actions/getfile.php:79
msgid "No such file."
@@ -1604,17 +1747,17 @@ msgstr "Vous ne pouvez pas attribuer des rôles aux utilisateurs sur ce site."
#: actions/grantrole.php:82
msgid "User already has this role."
-msgstr "L'utilisateur a déjà ce rôle."
+msgstr "L’utilisateur a déjà ce rôle."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Aucun profil n’a été spécifié."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Aucun profil ne correspond à cet identifiant."
@@ -1635,11 +1778,11 @@ msgstr "Cet utilisateur est déjà bloqué pour le groupe."
msgid "User is not a member of group."
msgstr "L’utilisateur n’est pas membre du groupe."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Bloquer cet utilisateur du groupe"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1650,15 +1793,17 @@ msgstr ""
"seront supprimés du groupe ; il leur sera interdit d’y poster et de s’y "
"abonner à l’avenir."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Ne pas bloquer cet utilisateur pour ce groupe"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Bloquer cet utilisateur de de groupe"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
"Erreur de la base de données lors du blocage de l’utilisateur du groupe."
@@ -1704,10 +1849,6 @@ msgstr ""
"Vous pouvez choisir un logo pour votre groupe. La taille maximale du fichier "
"est de %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Utilisateur sans profil correspondant."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Sélectionnez une zone de forme carrée sur l’image qui sera le logo."
@@ -1738,34 +1879,38 @@ msgstr "Liste des utilisateurs inscrits à ce groupe."
msgid "Admin"
msgstr "Administrer"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloquer"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Faire de cet utilisateur un administrateur du groupe"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Faire un administrateur"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Faire de cet utilisateur un administrateur"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Activité de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Mises à jour des membres de %1$s dans %2$s !"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Groupes"
@@ -1791,7 +1936,7 @@ msgstr ""
"intéresse ? Essayez d’en [rechercher un](%%%%action.groupsearch%%%%) ou de "
"[créer le vôtre !](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Créer un nouveau groupe"
@@ -1844,11 +1989,15 @@ msgstr "Cet utilisateur n’est pas bloqué du groupe."
msgid "Error removing the block."
msgstr "Erreur lors de l’annulation du blocage."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Paramètres de messagerie instantanée"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1858,15 +2007,24 @@ msgstr ""
"(%%doc.im%%) Jabber/GTalk. Configurez votre adresse et vos paramètres ci-"
"dessous."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "La messagerie instantanée n’est pas disponible."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Adresse de messagerie instantanée"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Adresse Jabber/GTalk actuellement confirmée."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1876,11 +2034,9 @@ msgstr ""
"Jabber/GTalk pour recevoir de nouvelles instructions. (Avez-vous ajouté %s à "
"votre liste de contacts ?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Adresse de messagerie instantanée"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1890,46 +2046,67 @@ msgstr ""
"votre liste d’amis dans votre logiciel de messagerie instantanée ou dans "
"GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Préférences de messagerie instantanée"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Envoyez-moi les avis par Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
"Poster un avis chaque fois que mon statut est modifié dans Jabber/GTalk"
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Envoyez-moi par Jabber/GTalk les réponses des personnes auxquelles je ne "
"suis pas abonné."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publier un MicroID pour mon adresse Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Préférences enregistrées"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Aucun identifiant Jabber"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Impossible d’utiliser cet identifiant Jabber"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Identifiant Jabber invalide."
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Vous utilisez déjà cet idenfiant Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Identifiant Jabber déjà utilisé par un autre utilisateur."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1938,10 +2115,32 @@ msgstr ""
"Un code de confirmation a été envoyé à votre adresse de messagerie "
"instantanée. Vous devez approuver %s pour recevoir des messages."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Cette adresse de messagerie instantanée est erronée."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Impossible de supprimer la confirmation de messagerie instantanée."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Confirmation de messagerie instantanée annulée."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Ceci n’est pas votre identifiant Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "L’adresse de messagerie instantanée a été supprimée."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1964,9 +2163,9 @@ msgstr "Les invitations ont été désactivées."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Vous devez ouvrir une session pour inviter d’autres utilisateurs dans %s"
+"Vous devez ouvrir une session pour inviter d’autres utilisateurs dans %s."
#: actions/invite.php:72
#, php-format
@@ -1985,7 +2184,9 @@ msgstr "Inviter de nouveaux utilisateurs"
msgid "You are already subscribed to these users:"
msgstr "Vous êtes déjà abonné à ces utilisateurs :"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2037,12 +2238,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Envoyer"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s vous invite à vous inscrire sur %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2109,7 +2312,9 @@ msgstr "Vous devez ouvrir une session pour rejoindre un groupe."
msgid "No nickname or ID."
msgstr "Aucun pseudo ou ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s a rejoint le groupe %2$s"
@@ -2118,52 +2323,54 @@ msgstr "%1$s a rejoint le groupe %2$s"
msgid "You must be logged in to leave a group."
msgstr "Vous devez ouvrir une session pour quitter un groupe."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Vous n’êtes pas membre de ce groupe."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s a quitté le groupe %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Déjà connecté."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Identifiant ou mot de passe incorrect."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Erreur lors de la mise en place de l’utilisateur. Vous n’y êtes probablement "
"pas autorisé."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Ouvrir une session"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Ouverture de session"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Se souvenir de moi"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Ouvrir automatiquement ma session à l’avenir (déconseillé pour les "
"ordinateurs publics ou partagés)"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Mot de passe perdu ?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2171,15 +2378,17 @@ msgstr ""
"Pour des raisons de sécurité, veuillez entrer à nouveau votre identifiant et "
"votre mot de passe afin d’enregistrer vos préférences."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Ouvrez une session avec un identifiant et un mot de passe."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Ouvrez une session avec votre identifiant et votre mot de passe. Vous n’avez "
-"pas encore d’identifiant ? [Créez-vous](%%action.register%%) un nouveau "
-"compte."
+"Vous n’avez pas encore d’identifiant ? [Créez-vous](%%action.register%%) un "
+"nouveau compte."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2204,8 +2413,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Impossible de rendre %1$s administrateur du groupe %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Aucun statut actuel"
+msgid "No current status."
+msgstr "Aucun statut actuel."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2239,12 +2448,12 @@ msgstr "Remplissez les champs ci-dessous pour créer un nouveau groupe :"
msgid "New message"
msgstr "Nouveau message"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Vous ne pouvez pas envoyer de messages à cet utilisateur."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Aucun contenu !"
@@ -2252,7 +2461,7 @@ msgstr "Aucun contenu !"
msgid "No recipient specified."
msgstr "Aucun destinataire n’a été spécifié."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2267,7 +2476,7 @@ msgstr "Message envoyé"
msgid "Direct message to %s sent."
msgstr "Message direct envoyé à %s."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Erreur Ajax"
@@ -2275,7 +2484,7 @@ msgstr "Erreur Ajax"
msgid "New notice"
msgstr "Nouvel avis"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Avis publié"
@@ -2328,7 +2537,7 @@ msgstr "mises à jour correspondant au(x) terme(s) « %1$s » sur %2$s !"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Cet utilisateur n’accepte pas les clins d’œil ou n’a pas encore validé son "
"adresse électronique."
@@ -2372,11 +2581,11 @@ msgid "You are not a user of that application."
msgstr "Vous n’êtes pas un utilisateur de cette application."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Impossible d’annuler l’accès de l’application : "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Impossible d’annuler l’accès de l’application %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Vous n’avez autorisé aucune application à utiliser votre compte."
@@ -2386,25 +2595,30 @@ msgstr ""
"Les programmeurs peuvent modifier les paramètres d’enregistrement pour leurs "
"applications "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "L’avis n’a pas de profil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "L’avis n’a pas de profil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Statut de %1$s sur %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "type de contenu "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Type de contenu %s non supporté."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Seulement "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Veuillez n'utiliser que des URL HTTP complètes en %s."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Format de données non supporté."
@@ -2508,7 +2722,7 @@ msgid "6 or more characters"
msgstr "6 caractères ou plus"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmer"
@@ -2520,11 +2734,11 @@ msgstr "Identique au mot de passe ci-dessus"
msgid "Change"
msgstr "Modifier"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Votre mot de passe doit contenir au moins 6 caractères."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Les mots de passe ne correspondent pas."
@@ -2536,7 +2750,7 @@ msgstr "Ancien mot de passe incorrect"
msgid "Error saving user; invalid."
msgstr "Erreur lors de l’enregistrement de l’utilisateur ; invalide."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Impossible de sauvegarder le nouveau mot de passe."
@@ -2545,7 +2759,7 @@ msgid "Password saved."
msgstr "Mot de passe enregistré."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Chemins"
@@ -2555,23 +2769,23 @@ msgstr "Paramètres de chemin et serveur pour ce site StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Dossier des thème non lisible : %s"
+msgid "Theme directory not readable: %s."
+msgstr "Dossier des thème non lisible : %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Dossier des avatars non inscriptible : %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Dossier des avatars non inscriptible : %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Dossier des arrière plans non inscriptible : %s"
+msgid "Background directory not writable: %s."
+msgstr "Dossier des arrière plans non inscriptible : %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Dossier des paramètres régionaux non lisible : %s"
+msgid "Locales directory not readable: %s."
+msgstr "Dossier des paramètres régionaux non lisible : %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2711,19 +2925,19 @@ msgstr ""
msgid "People search"
msgstr "Recherche de personnes"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Cette marque est invalide : %s"
+msgid "Not a valid people tag: %s."
+msgstr "Cette marque est invalide : %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Utilisateurs marqués par eux-mêmes avec %1$s - page %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Contenu de l’avis invalide"
+msgid "Invalid notice content."
+msgstr "Contenu de l’avis invalide."
#: actions/postnotice.php:101
#, php-format
@@ -2751,42 +2965,43 @@ msgstr "Information de profil"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nom complet"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Site personnel"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "Adresse de votre site Web, blogue, ou profil dans un autre site"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Décrivez vous et vos intérêts en %d caractères"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Décrivez vous et vos interêts"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Bio"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Emplacement"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Indiquez votre emplacement, ex.: « Ville, État (ou région), Pays »"
@@ -2796,7 +3011,7 @@ msgstr "Partager ma localisation lorsque je poste des avis"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Marques"
@@ -2830,7 +3045,7 @@ msgstr ""
"M’abonner automatiquement à tous ceux qui s’abonnent à moi (recommandé pour "
"les utilisateurs non-humains)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "La bio est trop longue (%d caractères maximum)."
@@ -2871,8 +3086,8 @@ msgstr "Préférences enregistrées."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Au-delà de la limite de page (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Au-delà de la limite de page (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3043,7 +3258,7 @@ msgstr "Réinitialiser le mot de passe"
msgid "Recover password"
msgstr "Récupérer le mot de passe"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Récupération de mot de passe demandée"
@@ -3063,19 +3278,19 @@ msgstr "Réinitialiser"
msgid "Enter a nickname or email address."
msgstr "Entrez un pseudo ou une adresse courriel."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Aucun utilisateur trouvé avec ce courriel ou ce nom."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Aucune adresse courriel enregistrée pour cet utilisateur."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Erreur lors de l’enregistrement de la confirmation du courriel."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3083,112 +3298,131 @@ msgstr ""
"Les instructions pour récupérer votre mot de passe ont été envoyées à "
"l’adresse courriel indiquée dans votre compte."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Réinitialisation inattendue du mot de passe."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Le mot de passe doit contenir au moins 6 caractères."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Le mot de passe et sa confirmation ne correspondent pas."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Erreur lors de la configuration de l’utilisateur."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
"Nouveau mot de passe créé avec succès. Votre session est maintenant ouverte."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Désolé ! Seules les personnes invitées peuvent s’inscrire."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Désolé, code d’invitation invalide."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Compte créé avec succès"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Créer un compte"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Création de compte non autorisée."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Vous devez accepter les termes de la licence pour créer un compte."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Cette adresse courriel est déjà utilisée."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Identifiant ou mot de passe incorrect."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Avec ce formulaire vous pouvez créer un nouveau compte. Vous pourrez ensuite "
"poster des avis and et vous relier à des amis et collègues. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1 à 64 lettres minuscules ou chiffres, sans ponctuation ni espaces. Requis."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 caractères ou plus. Requis."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Identique au mot de passe ci-dessus. Requis."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Courriel"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Utilisé uniquement pour les mises à jour, les notifications, et la "
"récupération de mot de passe"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nom plus long, votre \"vrai\" nom de préférence"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mes textes et mes fichiers sont disponibles sous"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Je comprends que le contenu et les données de %1$s sont privés et "
+"confidentiels."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Mon texte et les fichiers sont protégés par copyright par %1$s."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Paternité 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Mon texte et les fichiers restent sous mon propre droit d'auteur."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Tous droits réservés."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" à l’exception de ces données personnelles : mot de passe, adresse e-mail, "
-"adresse de messagerie instantanée, numéro de téléphone."
+"Mon texte et mes fichiers sont disponibles sous %s à l’exception de ces "
+"données personnelles : mot de passe, adresse électronique, adresse de "
+"messagerie instantanée, numéro de téléphone."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3222,7 +3456,7 @@ msgstr ""
"Merci pour votre inscription ! Nous vous souhaitons d’apprécier notre "
"service."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3267,7 +3501,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL de votre profil sur un autre service de micro-blogging compatible"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "S’abonner"
@@ -3304,7 +3538,7 @@ msgstr "Vous ne pouvez pas reprendre votre propre avis."
msgid "You already repeated that notice."
msgstr "Vous avez déjà repris cet avis."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repris"
@@ -3342,7 +3576,7 @@ msgstr "Flux des réponses pour %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Ceci est la chronologie des réponses à %1$s mais %2$s n’a encore reçu aucun "
"avis à son intention."
@@ -3360,8 +3594,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Vous pouvez essayer de [faire un clin d’œil à %1$s](../%2$s) ou de [poster "
"quelque chose à son intention](%%%%action.newnotice%%%%?status_textarea=%3"
@@ -3380,7 +3614,7 @@ msgstr "Vous ne pouvez pas révoquer les rôles des utilisateurs sur ce site."
msgid "User doesn't have this role."
msgstr "L'utilisateur ne possède pas ce rôle."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3395,7 +3629,7 @@ msgstr "L’utilisateur est déjà dans le bac à sable."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessions"
@@ -3432,26 +3666,30 @@ msgstr "Vous devez être connecté pour voir une application."
msgid "Application profile"
msgstr "Profil de l’application"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Icône"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nom"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisation"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Description"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistiques"
@@ -3540,8 +3778,8 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s n’a pas ajouté d’avis à ses favoris pour le moment. Publiez quelque chose "
"d’intéressant, et cela pourrait être ajouté à ses favoris :)"
@@ -3549,13 +3787,13 @@ msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s n’a pas ajouté d’avis à ses favoris pour le moment. Vous pourriez [créer "
"un compte](%%%%action.register%%%%), puis poster quelque chose "
-"d’intéressant, qui serait ajouté à ses favoris :)"
+"d’intéressant, qu’il pourrait ajouter à ses favoris :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3571,67 +3809,67 @@ msgstr "Groupe %s"
msgid "%1$s group, page %2$d"
msgstr "Groupe %1$s, page %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Profil du groupe"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Note"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Alias"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Actions du groupe"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Fil des avis du groupe %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Fil des avis du groupe %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Fil des avis du groupe %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "ami d’un ami pour le groupe %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membres"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(aucun)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Tous les membres"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Créé"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3647,7 +3885,7 @@ msgstr ""
"action.register%%%%) pour devenir membre de ce groupe et bien plus ! ([En "
"lire plus](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3660,7 +3898,7 @@ msgstr ""
"logiciel libre [StatusNet](http://status.net/). Ses membres partagent des "
"messages courts à propos de leur vie et leurs intérêts. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administrateurs"
@@ -3740,8 +3978,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Vous pouvez essayer de faire un clin d’œil à %1$s ou de [poster quelque "
"chose à son intention](%%%%action.newnotice%%%%?status_textarea=%2$s)."
@@ -3802,11 +4040,11 @@ msgid "Unknown language \"%s\"."
msgstr "Langue « %s » inconnue."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "La limite minimale de texte est de 140 caractères."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "La limite minimale de texte est de 0 caractères (illimité)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "La limite de doublon doit être d’une seconde ou plus."
#: actions/siteadminpanel.php:221
@@ -3898,8 +4136,8 @@ msgid "Unable to save site notice."
msgstr "Impossible d'enregistrer l'avis du site."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "La longueur maximale pour l'avis du site est de 255 caractères"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "La longueur maximale pour l'avis du site est de 255 caractères."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3914,47 +4152,74 @@ msgstr ""
msgid "Save site notice"
msgstr "Enregistrer l'avis du site"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Paramètres SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"Vous pouvez recevoir des messages SMS par courriel en provenance de %%site."
"name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Les SMS ne sont pas disponibles."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Adresse SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Numéro de téléphone actuellement confirmé pour recevoir les SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Numéro de téléphone en attente de confirmation."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Code de confirmation"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Entrez le code que vous avez reçu sur votre téléphone."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmer"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Numéro de téléphone pour les SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
"Numéro de téléphone, sans ponctuation ni espaces, incluant le code régional"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Préférences pour les SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3962,23 +4227,33 @@ msgstr ""
"Envoyez-moi les avis par SMS ; je comprends que cela pourrait affecter ma "
"facture de téléphonie mobile."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Préférences pour les SMS enregistrées."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Aucun numéro de téléphone."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Aucun fournisseur sélectionné."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Vous utilisez déjà ce numéro de téléphone."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Ce numéro de téléphone est déjà utilisé."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3987,23 +4262,40 @@ msgstr ""
"Vérifiez votre boîte de réception pour récupérer le code et les instructions "
"pour son utilisation."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Ce code de confirmation est incorrect."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Confirmation de SMS annulée."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Ceci n’est pas votre numéro de téléphone."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Le numéro de téléphone pour les SMS a été retiré."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Fournisseur de téléphonie mobile"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Sélectionnez un fournisseur de téléphone mobile"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4013,13 +4305,14 @@ msgstr ""
"qui accepte la réception de SMS par courriel mais qui n’est pas listé ici, "
"écrivez-nous à %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Aucun code entré"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Instantanés"
@@ -4040,7 +4333,7 @@ msgid "Invalid snapshot report URL."
msgstr "URL de rapport d’instantanés invalide."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Au hasard lors des requêtes web"
#: actions/snapshotadminpanel.php:201
@@ -4079,8 +4372,8 @@ msgstr "Sauvegarder les paramètres des instantanés"
msgid "You are not subscribed to that profile."
msgstr "Vous n’êtes pas abonné(e) à ce profil."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Impossible d’enregistrer l’abonnement."
@@ -4183,11 +4476,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s ne suit actuellement personne."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4220,12 +4513,12 @@ msgstr "Aucun argument d’identifiant."
msgid "Tag %s"
msgstr "Marque %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Profil de l’utilisateur"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Photo"
@@ -4261,10 +4554,6 @@ msgstr ""
msgid "No such tag."
msgstr "Cette marque n’existe pas."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Méthode API en construction."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Vous n’avez pas bloqué cet utilisateur."
@@ -4278,8 +4567,8 @@ msgid "User is not silenced."
msgstr "L’utilisateur n’est pas réduit au silence."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "Aucune identité de profil dans la requête."
+msgid "No profile ID in request."
+msgstr "Aucun identifiant de profil dans la requête."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4316,7 +4605,8 @@ msgstr "Texte de bienvenue invalide. La taille maximale est de 255 caractères."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Abonnement par défaut invalide : « %1$s » n’est pas un utilisateur."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4377,7 +4667,7 @@ msgstr ""
"abonner aux avis de cet utilisateur. Si vous n’avez pas demandé à vous "
"abonner aux avis de quelqu’un, cliquez « Rejeter »."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licence"
@@ -4482,39 +4772,45 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Bon appétit !"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Groupes %1$s, page %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Rechercher pour plus de groupes"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s n’est pas membre d’un groupe."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Essayez de [rechercher un groupe](%%action.groupsearch%%) et de vous y "
"inscrire."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Statuts de %1$s dans %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4523,11 +4819,11 @@ msgstr ""
"Ce site est propulsé par %1$s, version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. et ses contributeurs."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Contributeurs"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4539,7 +4835,7 @@ msgstr ""
"GNU Affero telle qu’elle a été publiée par la Free Software Foundation, dans "
"sa version 3 ou (comme vous le souhaitez) toute version plus récente. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4551,7 +4847,7 @@ msgstr ""
"D’ADAPTATION À UN BUT PARTICULIER. Pour plus de détails, voir la Licence "
"Publique Générale GNU Affero."
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4560,91 +4856,140 @@ msgstr ""
"Vous avez dû recevoir une copie de la Licence Publique Générale GNU Affero "
"avec ce programme. Si ce n’est pas le cas, consultez %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Extensions"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Version"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Auteur(s)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Impossible de traiter l’URL « %s »"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin pense que quelque chose est impossible."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Un fichier ne peut pas être plus gros que %d octets et le fichier que vous "
-"avez envoyé pesait %d octets. Essayez d’importer une version moins grosse."
+"Un fichier ne peut pas peser plus de %1$d octets et le fichier que vous avez "
+"envoyé pesait %2$d octets. Essayez d’importer une version moins lourde."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Un fichier aussi gros dépasserai votre quota utilisateur de %d octets."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Un fichier aussi gros dépasserai votre quota mensuel de %d octets."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nom de fichier non valide."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "L’inscription au groupe a échoué."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "N’appartient pas au groupe."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "La désinscription du groupe a échoué."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Impossible de mettre à jour le groupe local."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Impossible de créer le jeton d’identification pour %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Aucun nom de base de données ou DSN trouvé nulle part."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Il vous est interdit d’envoyer des messages directs."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Impossible d’insérer le message."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Impossible de mettre à jour le message avec un nouvel URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Impossible de trouver le profil (%1$d) pour l’avis (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr "Erreur de base de donnée en insérant la marque (hashtag) : %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problème lors de l’enregistrement de l’avis ; trop long."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Erreur lors de l’enregistrement de l’avis. Utilisateur inconnu."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Trop d’avis, trop vite ! Faites une pause et publiez à nouveau dans quelques "
"minutes."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4652,287 +4997,369 @@ msgstr ""
"Trop de messages en double trop vite ! Prenez une pause et publiez à nouveau "
"dans quelques minutes."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Il vous est interdit de poster des avis sur ce site."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problème lors de l’enregistrement de l’avis."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Le type renseigné pour saveKnownGroups n’est pas valable"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problème lors de l’enregistrement de la boîte de réception du groupe."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Impossible de révoquer le rôle de « %1$s » pour l’utilisateur #%2$d : "
+"l’utilisateur n’existe pas."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Impossible de révoquer le rôle de « %1$s » pour l’utilisateur #%2$d : erreur "
+"dans la base de données."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Profil manquant."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Impossible d’enregistrer l’étiquette."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
-msgstr "Il vous avez été interdit de vous abonner."
+msgstr "Il vous a été interdit de vous abonner."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Déjà abonné !"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Cet utilisateur vous a bloqué."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Pas abonné !"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Impossible de supprimer l’abonnement à soi-même."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
-msgstr "Impossible de supprimer le jeton OMB de l'abonnement ."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Impossible de supprimer le jeton OMB de l'abonnement."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr "Impossible de cesser l’abonnement"
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr "Impossible de supprimer l’abonnement"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Bienvenue à %1$s, @%2$s !"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Impossible de créer le groupe."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Impossible de définir l'URI du groupe."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Impossible d’établir l’inscription au groupe."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Impossible d’enregistrer les informations du groupe local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Modifier vos paramètres de profil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Ajouter un avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Modifier votre mot de passe"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Modifier le traitement des courriels"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Concevez votre profil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Autres "
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Autres options"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Autres "
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Page sans nom"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navigation primaire du site"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Profil personnel et flux des amis"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personnel"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Modifier votre adresse électronique, avatar, mot de passe, profil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Se connecter aux services"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Connecter"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Modifier la configuration du site"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administrer"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Inviter des amis et collègues à vous rejoindre sur %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Inviter"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Fermer la session"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Déconnexion"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Créer un compte"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "S'inscrire"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Ouvrir une session"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Connexion"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "À l’aide !"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Aide"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Rechercher des personnes ou du texte"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Rechercher"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Notice du site"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Vues locales"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Avis de la page"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navigation secondaire du site"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Aide"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "À propos"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "CGU"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Confidentialité"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Source"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contact"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Insigne"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licence du logiciel StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-"**%%site.name%%** est un service de microblogging qui vous est proposé par "
-"[%%site.broughtby%%](%%site.broughtbyurl%%)."
+"**%%site.name%%** est un service de microblogging qui vous est proposé par [%"
+"%site.broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** est un service de micro-blogging."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4943,71 +5370,86 @@ msgstr ""
"version %s, disponible sous la licence [GNU Affero General Public License] "
"(http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licence du contenu du site"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Le contenu et les données de %1$s sont privés et confidentiels."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"Le contenu et les données sont sous le droit d’auteur de %1$s. Tous droits "
"réservés."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Le contenu et les données sont sous le droit d’auteur du contributeur. Tous "
"droits réservés."
-#: lib/action.php:847
-msgid "All "
-msgstr "Tous "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licence."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Tous les contenus %1$s et les données sont disponibles sous la licence %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Pagination"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Après"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Avant"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Attendait un élément racine mais a reçu tout un document XML."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Impossible de gérer le contenu distant pour le moment."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Impossible de gérer le contenu XML embarqué pour le moment."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Impossible de gérer le contenu en Base64 embarqué pour le moment."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Vous ne pouvez pas faire de modifications sur ce site."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "La modification de ce panneau n’est pas autorisée."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() n’a pas été implémentée."
@@ -5017,157 +5459,193 @@ msgstr "showForm() n’a pas été implémentée."
msgid "saveSettings() not implemented."
msgstr "saveSettings() n’a pas été implémentée."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Impossible de supprimer les paramètres de conception."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuration basique du site"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuration de la conception"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Conception"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Configuration utilisateur"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Utilisateur"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Configuration d’accès"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configuration des chemins"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Configuration des sessions"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Modifier l'avis du site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "Configuration des instantanés"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"La ressource de l’API a besoin de l’accès en lecture et en écriture, mais "
"vous n’y avez accès qu’en lecture."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"L’essai d’authentification de l’API a échoué ; pseudo = %1$s, proxy = %2$s, "
-"ip = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Modifier votre application"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Icône pour cette application"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Décrivez votre application en %d caractères"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Décrivez votre application"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL source"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL de la page d’accueil de cette application"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL source"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organisation responsable de cette application"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL de la page d’accueil de l’organisation"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL vers laquelle rediriger après l’authentification"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Navigateur"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Bureau"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Type d’application, navigateur ou bureau"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Lecture seule"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Lecture-écriture"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Accès par défaut pour cette application : en lecture seule ou en lecture-"
"écriture"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Annuler"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lecture-écriture"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "lecture seule"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Accès « %2$s » approuvé le %1$s."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Révoquer"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Pièces jointes"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Auteur"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Fournisseur"
@@ -5179,45 +5657,64 @@ msgstr "Avis sur lesquels cette pièce jointe apparaît."
msgid "Tags for this attachment"
msgstr "Marques de cette pièce jointe"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "La modification du mot de passe a échoué"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "La modification du mot de passe n’est pas autorisée"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Résultats de la commande"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Commande complétée"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Échec de la commande"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Désolé, cette commande n’a pas encore été implémentée."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Aucun avis avec cet identifiant n’existe"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Aucun avis récent pour cet utilisateur"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Impossible de trouver un utilisateur avec le pseudo %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Impossible de trouver un utilisateur local portant le pseudo %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Désolé, cette commande n’a pas encore été implémentée."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Ça n’a pas de sens de se faire un clin d’œil à soi-même !"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Clin d’œil envoyé à %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5228,201 +5725,207 @@ msgstr ""
"Abonnés : %2$s\n"
"Messages : %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Aucun avis avec cet identifiant n’existe"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Aucun avis récent pour cet utilisateur"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Avis ajouté aux favoris."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Vous êtes déjà membre de ce groupe"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Impossible d’inscrire l’utilisateur %s au groupe %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Impossible d’inscrire l’utilisateur %1$s au groupe %2$s"
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s joined group %s"
-msgstr "%s a rejoint le groupe %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Impossible de retirer l’utilisateur %1$s du groupe %2$s"
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Impossible de retirer l’utilisateur %s du groupe %s"
-
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s a quitté le groupe %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nom complet : %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Emplacement : %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Site Web : %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "À propos : %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-"Message trop long ! La taille maximale est de %d caractères ; vous en avez "
-"entré %d."
+"%s est un profil distant ; vous ne pouvez envoyer de messages directs qu'aux "
+"utilisateurs du même serveur."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Message trop long ! La taille maximale est de %1$d caractères ; vous en avez "
+"entré %2$d."
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Message direct envoyé à %s."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Une erreur est survenue pendant l’envoi de votre message."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Impossible de reprendre votre propre avis"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Avis déjà repris"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Avis de %s repris"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Erreur lors de la reprise de l’avis."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
"Avis trop long ! La taille maximale est de %d caractères ; vous en avez "
"entré %d."
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Réponse à %s envoyée"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Problème lors de l’enregistrement de l’avis."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Indiquez le nom de l’utilisateur auquel vous souhaitez vous abonner"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Utilisateur non trouvé."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Impossible de s'inscrire aux profils OMB par cette commande."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Abonné à %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Indiquez le nom de l’utilisateur duquel vous souhaitez vous désabonner"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Désabonné de %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Cette commande n’a pas encore été implémentée."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Avertissements désactivés."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Impossible de désactiver les avertissements."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Avertissements activés."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Impossible d’activer les avertissements."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "La commande d’ouverture de session est désactivée"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Ce lien n’est utilisable qu’une seule fois, et est valable uniquement "
"pendant 2 minutes : %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Désabonné de %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Vous n’êtes abonné(e) à personne."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Vous êtes abonné à cette personne :"
msgstr[1] "Vous êtes abonné à ces personnes :"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Personne ne s’est abonné à vous."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Cette personne est abonnée à vous :"
msgstr[1] "Ces personnes sont abonnées à vous :"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Vous n’êtes membre d’aucun groupe."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Vous êtes membre de ce groupe :"
msgstr[1] "Vous êtes membre de ces groupes :"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5503,20 +6006,20 @@ msgstr ""
"tracks - pas encore implémenté.\n"
"tracking - pas encore implémenté.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Aucun fichier de configuration n’a été trouvé. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
"J’ai cherché des fichiers de configuration dans les emplacements suivants : "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Vous pouvez essayer de lancer l’installeur pour régler ce problème."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Aller au programme d’installation"
@@ -5692,54 +6195,55 @@ msgstr "Groupes avec le plus d’éléments publiés"
msgid "Tags in %s group's notices"
msgstr "Marques dans les avis du groupe %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
"Cette page n’est pas disponible dans un des formats que vous avez autorisés."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Format de fichier d’image non supporté."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Ce fichier est trop grand. La taille maximale est %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Transfert partiel."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Erreur système lors du transfert du fichier."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Ceci n’est pas une image, ou c’est un fichier corrompu."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Format de fichier d’image non supporté."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Fichier perdu."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Type de fichier inconnu"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "Mo"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "Ko"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Source %d inconnue pour la boîte de réception."
@@ -5760,11 +6264,13 @@ msgstr "Ouvrez une session avec un identifiant et un mot de passe"
msgid "Sign up for a new account"
msgstr "Créer un nouveau compte"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmation de l’adresse courriel"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5794,12 +6300,24 @@ msgstr ""
"Merci de votre attention,\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s suit maintenant vos avis sur %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Si vous pensez que ce compte est utilisé à des fins abusives, vous pouvez le "
+"bloquer de votre liste d'abonnés et le signaler comme spam aux "
+"administrateurs du site, sur %s."
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5824,17 +6342,20 @@ msgstr ""
"----\n"
"Changez votre adresse de courriel ou vos options de notification sur %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Bio : %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nouvelle adresse courriel pour poster dans %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5855,21 +6376,32 @@ msgstr ""
"Cordialement,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Statut de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmation SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s : confirmez que vous possédez ce numéro de téléphone grâce à ce code :"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Vous avez reçu un clin d’œil de %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5896,12 +6428,14 @@ msgstr ""
"Bien à vous,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nouveau message personnel de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5934,12 +6468,14 @@ msgstr ""
"Bien à vous,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) a ajouté un de vos avis à ses favoris"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5977,12 +6513,25 @@ msgstr ""
"Cordialement,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"La conversation complète peut être lue ici :\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) vous a envoyé un avis"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5995,17 +6544,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) vient de vous envoyer un avis (une réponse « @ ») sur %2$s.\n"
+"%1$s (@%9$s) vient de soumettre un avis à votre attention (un « @-reply ») "
+"sur %2$s.\n"
"\n"
-"L’avis est là :\n"
+"L'avis est ici :\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
"Il dit :\n"
"\n"
-"\t%4$s\n"
+"%4$s\n"
+"\n"
+"%5$sVous pouvez répondre ici :\n"
+"\n"
+"%6$s\n"
+"\n"
+"La liste des @-replies qui vous sont destinées est ici :\n"
+"\n"
+"%7$s\n"
+"\n"
+"Cordialement,\n"
+"%2$s\n"
"\n"
+"P.S. Vous pouvez désactiver ces notifications électroniques ici : %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -6020,7 +6594,7 @@ msgstr ""
"pour démarrer des conversations avec d’autres utilisateurs. Ceux-ci peuvent "
"vous envoyer des messages destinés à vous seul(e)."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "de"
@@ -6079,24 +6653,24 @@ msgstr "Impossible d’écrire sur le disque."
msgid "File upload stopped by extension."
msgstr "Import de fichier stoppé par une extension."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Le fichier dépasse le quota de l’utilisateur."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Le fichier n’a pas pu être déplacé dans le dossier de destination."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Impossible de déterminer le type MIME du fichier."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Essayez d’utiliser un autre %s format."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s n’est pas un type de fichier supporté sur ce serveur."
@@ -6151,48 +6725,52 @@ msgstr ""
"Désolé, l’obtention de votre localisation prend plus de temps que prévu. "
"Veuillez réessayer plus tard."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u° %2$u' %3$u\" %4$s %5$u° %6$u' %7$u\" %8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "O"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u° %2$u' %3$u\" %4$s %5$u° %6$u' %7$u\" %8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "chez"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "dans le contexte"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repris par"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Répondre à cet avis"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Répondre"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Avis repris"
@@ -6216,6 +6794,10 @@ msgstr "Erreur lors de l’insertion du nouveau profil"
msgid "Error inserting avatar"
msgstr "Erreur lors de l’insertion de l’avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Erreur lors de la mise à jour du profil distant"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Erreur lors de l’insertion du profil distant"
@@ -6261,11 +6843,11 @@ msgstr "Vos messages envoyés"
msgid "Tags in %s's notices"
msgstr "Marques dans les avis de %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Inconnu"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonnements"
@@ -6273,31 +6855,32 @@ msgstr "Abonnements"
msgid "All subscriptions"
msgstr "Tous les abonnements"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abonnés"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Tous les abonnés"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID de l’utilisateur"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membre depuis"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Moyenne journalière"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Tous les groupes"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Aucun argument de retour."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Méthode non implémentée."
@@ -6321,11 +6904,19 @@ msgstr "En vedette"
msgid "Popular"
msgstr "Populaires"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Aucun argument de retour."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Reprendre cet avis ?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Oui"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Reprendre cet avis"
@@ -6334,7 +6925,7 @@ msgstr "Reprendre cet avis"
msgid "Revoke the \"%s\" role from this user"
msgstr "Révoquer le rôle « %s » de cet utilisateur"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Aucun utilisateur unique défini pour le mode mono-utilisateur."
@@ -6432,6 +7023,54 @@ msgstr "Nuage de marques pour une personne"
msgid "None"
msgstr "Aucun"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Le serveur ne peut pas gérer l’import de thèmes sans le support du format "
+"ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Le fichier de thème est manquant ou le téléversement a échoué."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "L’enregistrement du thème a échoué."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Thème invalide : mauvaise arborescence."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Le thème importé est trop volumineux. Non compressé, il doit occuper moins "
+"de %d octets."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Archive de thème invalide : fichier css/display.css manquant"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Le thème contient un nom de fichier ou de dossier invalide. Limitez-vous aux "
+"lettres ASCII et aux chiffres, caractère de soulignement et signe moins."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Le thème contient un fichier de type « .%s », qui n'est pas autorisé."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Erreur lors de l’ouverture de l’archive du thème."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Utilisateurs les plus actifs"
@@ -6460,89 +7099,108 @@ msgstr "Ne plus suivre cet utilisateur"
msgid "Unsubscribe"
msgstr "Désabonnement"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "L’utilisateur %s (%d) n’a pas de profil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Modifier l’avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Actions de l’utilisateur"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Suppression de l'utilisateur en cours..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Modifier les paramètres du profil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Modifier"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Envoyer un message à cet utilisateur"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Message"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Modérer"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Rôle de l'utilisateur"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Administrateur"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Modérateur"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "il y a quelques secondes"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "il y a 1 minute"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "il y a %d minutes"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "il y a 1 heure"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "il y a %d heures"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "il y a 1 jour"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "il y a %d jours"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "il y a 1 mois"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "il y a %d mois"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "il y a environ 1 an"
@@ -6557,7 +7215,7 @@ msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
"%s n’est pas une couleur valide ! Utilisez 3 ou 6 caractères hexadécimaux."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/ga/LC_MESSAGES/statusnet.po b/locale/ga/LC_MESSAGES/statusnet.po
index dea9dd11c..8d30fb829 100644
--- a/locale/ga/LC_MESSAGES/statusnet.po
+++ b/locale/ga/LC_MESSAGES/statusnet.po
@@ -8,12 +8,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:54+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:29+0000\n"
"Language-Team: Irish\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ga\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +22,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Aceptar"
@@ -79,86 +79,91 @@ msgstr "Bloquear"
msgid "Save access settings"
msgstr "Configuracións de Twitter"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Gardar"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Non existe a etiqueta."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Ningún usuario."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s e amigos"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s e amigos"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Fonte para os amigos de %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Fonte para os amigos de %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Fonte para os amigos de %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -166,79 +171,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s e amigos"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Actualizacións dende %1$s e amigos en %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Método da API non atopado"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Este método require un POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Non se puido actualizar o usuario."
@@ -248,7 +255,7 @@ msgstr "Non se puido actualizar o usuario."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "O usuario non ten perfil."
@@ -259,9 +266,9 @@ msgid "Could not save profile."
msgstr "Non se puido gardar o perfil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -320,50 +327,51 @@ msgstr "Mensaxes directas para %s"
msgid "All the direct messages sent to %s"
msgstr "Tódalas mensaxes directas enviadas a %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Non hai mensaxes de texto!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
"Iso é demasiado longo. O tamaño máximo para unha mensaxe é de 140 caracteres."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Usuario destinatario non atopado."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Non se pode enviar a mensaxe directa a usuarios dos que non eres amigo."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Non se atopou un estado con ese ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Este chío xa é un favorito!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Non se puido crear o favorito."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "Este chío non é un favorito!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Non se puido eliminar o favorito."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
#: actions/apifriendshipscreate.php:118
@@ -381,8 +389,9 @@ msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
msgid "You cannot unfollow yourself."
msgstr "Non se puido actualizar o usuario."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
"Dous identificadores de usuario ou nomes_en_pantalla deben ser "
"proporcionados."
@@ -397,116 +406,129 @@ msgstr "Non se pudo recuperar a liña de tempo publica."
msgid "Could not find target user."
msgstr "Non se puido atopar ningún estado"
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "O alcume debe ter só letras minúsculas e números, e sen espazos."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "O alcume xa está sendo empregado por outro usuario. Tenta con outro."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Non é un alcume válido."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "A páxina persoal semella que non é unha URL válida."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "O nome completo é demasiado longo (max 255 car)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "O teu Bio é demasiado longo (max 140 car.)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "A localización é demasiado longa (max 255 car.)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "Etiqueta inválida: '%s'"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "O alcume xa está sendo empregado por outro usuario. Tenta con outro."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "Método da API non atopado"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Xa estas suscrito a estes usuarios:"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Non estás suscrito a ese perfil"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "Usuarios"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1s non é unha orixe fiable."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "Outras opcions"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Subir"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -517,17 +539,17 @@ msgid "Invalid token."
msgstr "Tamaño inválido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -561,12 +583,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Envio de formulario non esperada."
@@ -586,21 +611,23 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
#, fuzzy
msgid "Account"
msgstr "Sobre"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Alcume"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Contrasinal"
@@ -617,11 +644,11 @@ msgstr "Todos"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Este método require un POST ou DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Non deberías eliminar o estado de outro usuario"
@@ -640,62 +667,66 @@ msgstr "Non se pode activar a notificación."
msgid "Already repeated that notice."
msgstr "Eliminar chío"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "Avatar actualizado."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Non existe ningún estado con esa ID atopada."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
"Iso é demasiado longo. O tamaño máximo para un chío é de 140 caracteres."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
msgstr "Non atopado"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Formato de ficheiro de imaxe non soportado."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / Favoritos dende %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s updates favorited by %s / %s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Chíos que respostan a %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "Hai %1$s chíos en resposta a chíos dende %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Liña de tempo pública de %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s chíos de calquera!"
@@ -710,19 +741,19 @@ msgstr "Replies to %s"
msgid "Repeats of %s"
msgstr "Replies to %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Chíos tagueados con %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Actualizacións dende %1$s en %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Non atopado"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Método da API en contrución."
#: actions/attachment.php:73
#, fuzzy
@@ -744,8 +775,9 @@ msgstr "Sen tamaño."
msgid "Invalid size."
msgstr "Tamaño inválido."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -755,9 +787,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Podes actualizar a túa información do perfil persoal aquí"
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "Usuario sen un perfil que coincida."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -777,7 +810,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
#, fuzzy
msgid "Delete"
msgstr "eliminar"
@@ -790,23 +823,28 @@ msgstr "Subir"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Non se especificou ningún perfil."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar actualizado."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Acounteceu un fallo ó actualizar o avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "Avatar actualizado."
@@ -816,11 +854,11 @@ msgstr "Avatar actualizado."
msgid "You already blocked that user."
msgstr "Xa bloqueaches a este usuario."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Bloquear usuario"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -830,29 +868,46 @@ msgstr ""
"do teur perfil, non será capaz de suscribirse a ti nun futuro, e non vas a "
"ser notificado de ningunha resposta-@ del."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Bloquear usuario"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Si"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "Bloquear usuario"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Erro ao gardar información de bloqueo."
@@ -865,8 +920,8 @@ msgstr "Erro ao gardar información de bloqueo."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "Non existe a etiqueta."
@@ -899,9 +954,10 @@ msgstr "Desbloquear"
msgid "Unblock this user"
msgstr "Bloquear usuario"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "Chíos dende SMS"
#: actions/confirmaddress.php:75
@@ -916,34 +972,44 @@ msgstr "Confirmation code not found."
msgid "That confirmation code is not for you!"
msgstr "¡Ese código de confirmación non é para ti!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Tipo de enderezo %s non recoñecido"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Esa dirección xa foi confirmada."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Non se puido actualizar o usuario."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Non se pode eliminar a confirmación de email."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Confirmar enderezo"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "A dirección \"%s\" xa foi confirmada para a túa conta."
@@ -954,7 +1020,7 @@ msgid "Conversation"
msgstr "Código de confirmación."
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Chíos"
@@ -976,7 +1042,7 @@ msgstr "Non estás suscrito a ese perfil"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
#, fuzzy
msgid "There was a problem with your session token."
msgstr "Houbo un problema co teu token de sesión. Tentao de novo, anda..."
@@ -993,23 +1059,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Non se pode eliminar este chíos."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Eliminar chío"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Non está logueado."
@@ -1035,12 +1103,14 @@ msgstr "Eliminar chío"
msgid "Are you sure you want to delete this notice?"
msgstr "Estas seguro que queres eliminar este chío?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Non se pode eliminar este chíos."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
#, fuzzy
msgid "Delete this notice"
msgstr "Eliminar chío"
@@ -1066,135 +1136,156 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Eliminar chío"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Tamaño inválido."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Cambiar contrasinal"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Invitar"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Modificado"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Novo chío"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Novo chío"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Podes actualizar a túa información do perfil persoal aquí"
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "Cambiar contrasinal"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "Conectar"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Buscar"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texto"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "Lista"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Gardar"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1314,12 +1405,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "O teu Bio é demasiado longo (max 140 car.)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Etiqueta inválida: '%s'"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "Non se puido actualizar o usuario."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Non se puido crear o favorito."
@@ -1329,32 +1426,45 @@ msgstr "Non se puido crear o favorito."
msgid "Options saved."
msgstr "Configuracións gardadas."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Configuración de Correo"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Xestina como recibir correo dende %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Enderezo"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Enderezos de correo"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Direccións de correo confirmadas actualmente."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Eliminar"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1363,108 +1473,142 @@ msgstr ""
"GTalk que ten que haber unha mensaxe coas seguintes instrucións. (Engadiches "
"a %s á túa lista de contactos?)"
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancelar"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Enderezos de correo"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Dirección de correo, coma \"Nomede Usuario@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Engadir"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Correo Entrante"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Enviar un correo a esta dirección para enviar novos chíos."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Crear unha nova dirección de correo para enviar, elimina a antiga."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Novo"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Preferencias"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Envíame chios de novas suscricións por email."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Enviar un correo cando alguen enganda un chío meu coma favorito."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Enviarme un email cando alguén me envíe unha mensaxe privada."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Enviarme un email cando alguén me envíe unha mensaxe privada."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Permitir aos amigos darme toques e enviarme correos electrónicos."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Quero enviar chíos dende o mail."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publicar unha MicroID dende a miña dirección de correo."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Preferencias gardadas."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Non se inseriu unha dirección de correo"
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Esa dirección de correo non se pode normalizar "
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Non é un enderezo de correo válido."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Xa é o teu enderezo de correo."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Este enderezo de correo xa pertence a outro usuario."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Non se puido inserir o código de confirmación."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1473,43 +1617,56 @@ msgstr ""
"Comproba a túa bandexa de entrada (ou spam!) polo código e instrucións que "
"debes seguir."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Non hai ningunha confirmación pendente para cancelar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Esa é unha enderezo IM incorrecto."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Confirmación cancealada."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Esa non é a túa dirección de correo."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Enderezo eliminado."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Non hai direccións de correo entrante"
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Non se puido actualizar o rexistro de usuario."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Dirección de correo entrante eliminada."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Engadida nova dirección de correo entrante."
@@ -1631,8 +1788,9 @@ msgstr "Non se pode convertir o token da petición a tokens de acceso."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Versión de protocolo OMB descoñecida."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Acounteceu un erro actualizando o perfil remoto"
#: actions/getfile.php:79
@@ -1664,13 +1822,13 @@ msgstr "O usuario bloqueoute."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Non se especificou ningún perfil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Non se atopou un perfil con ese ID."
@@ -1694,12 +1852,12 @@ msgstr "O usuario bloqueoute."
msgid "User is not a member of group."
msgstr "%1s non é unha orixe fiable."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Bloquear usuario"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, fuzzy, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1710,15 +1868,17 @@ msgstr ""
"do teur perfil, non será capaz de suscribirse a ti nun futuro, e non vas a "
"ser notificado de ningunha resposta-@ del."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr ""
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr ""
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1763,11 +1923,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Usuario sen un perfil que coincida."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1800,34 +1955,38 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloquear"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Liña de tempo de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Actualizacións dende %1$s en %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr ""
@@ -1847,7 +2006,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "Crear nova conta"
@@ -1899,12 +2058,16 @@ msgstr "O usuario bloqueoute."
msgid "Error removing the block."
msgstr "Acounteceu un erro borrando o bloqueo."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Configuracións de IM"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1913,15 +2076,25 @@ msgstr ""
"Podes enviar e recibir chíos a través de Jabber/GTalk [mensaxes instantáneos]"
"(%%doc.im%%). Configura a túa conta e configuracións abaixo."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "Enderezo de IM"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Direccións Jabber/GTalk confirmadas."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1930,12 +2103,9 @@ msgstr ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "Enderezo de IM"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1945,44 +2115,66 @@ msgstr ""
"asegurate de engadir %s á tua lista de contactos no teu cliente de IM ou no "
"GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Preferencias"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Enviarme advertencias a través de Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Post a notice when my Jabber/GTalk status changes."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Envíame respostas a través de Jabber/GTalk da xente á que non estou suscrito."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publicar unha MicroID dende a miña dirección de Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferencias gardadas."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Sen Identificador de Jabber."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Non se pode normalizar ese identificador de Jabber"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Non é un Identificador de Jabber válido"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Xa é a túa conta de Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "O identificador de Jabber xa pertence a outro usuario."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1991,10 +2183,35 @@ msgstr ""
"O código de confirmación foi embiado á dirección IM que engadiches. Deberías "
"engadir a %s como contacto para que che poida enviar mensaxes."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Esa é unha enderezo IM incorrecto."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Non se pode eliminar a confirmación de email."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Confirmación cancealada."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Esa non é a túa conta Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Enderezo eliminado."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -2015,8 +2232,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "Debes estar logueado para invitar a outros usuarios a empregar %s"
#: actions/invite.php:72
@@ -2036,7 +2253,9 @@ msgstr "Invitar a novos usuarios"
msgid "You are already subscribed to these users:"
msgstr "Xa estas suscrito a estes usuarios:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2088,12 +2307,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Enviar"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s invitoute a unirse a él en %2$s."
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2158,7 +2379,9 @@ msgstr "Debes estar logueado para invitar a outros usuarios a empregar %s"
msgid "No nickname or ID."
msgstr "Sen alcume."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s / Favoritos dende %s"
@@ -2168,50 +2391,52 @@ msgstr "%s / Favoritos dende %s"
msgid "You must be logged in to leave a group."
msgstr "Debes estar logueado para invitar a outros usuarios a empregar %s"
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "Non estás suscrito a ese perfil"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s / Favoritos dende %s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Sesión xa iniciada"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Usuario ou contrasinal incorrectos."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Non está autorizado."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Inicio de sesión"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Lembrarme"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Endiante acceder automáticamente, coidado en equipos compartidos!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "¿Perdeches a contrasinal?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2219,11 +2444,15 @@ msgstr ""
"Por razóns de seguranza, por favor re-insire o teu nome de usuario e "
"contrasinal antes de cambiar as túas preferenzas."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Accede co teu nome de usuario e contrasinal."
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Accede co teu nome de usuario e contrasinal. ¿Non tes un todavía?? [Rexistra]"
"(%%action.register%%) unha nova conta, ou accede co teu enderezo [OpenID](%%"
@@ -2249,7 +2478,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "O usuario bloqueoute."
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "Sen estado actual"
#: actions/newapplication.php:52
@@ -2287,12 +2517,12 @@ msgstr ""
msgid "New message"
msgstr "Nova mensaxe"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Non podes enviar mensaxes a este usurio."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Sen contido!"
@@ -2300,7 +2530,7 @@ msgstr "Sen contido!"
msgid "No recipient specified."
msgstr "Non se especificou ningún destinatario"
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2317,7 +2547,7 @@ msgstr "Non hai mensaxes de texto!"
msgid "Direct message to %s sent."
msgstr "Mensaxe directo a %s enviado"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Erro de Ajax"
@@ -2325,7 +2555,7 @@ msgstr "Erro de Ajax"
msgid "New notice"
msgstr "Novo chío"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Chío publicado"
@@ -2372,8 +2602,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Tódalas actualizacións que coinciden co termo de procura \"%s\""
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Este usuario non permite toques, ou non confirmou ainda o seu correo "
"electrónico."
@@ -2419,11 +2650,11 @@ msgid "You are not a user of that application."
msgstr "Non estás suscrito a ese perfil"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2431,26 +2662,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "O chío non ten perfil"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Estado de %1$s en %2$s"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "Conectar"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Non é un formato de datos soportado."
@@ -2562,7 +2798,7 @@ msgid "6 or more characters"
msgstr "6 ou máis caracteres"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmar"
@@ -2574,11 +2810,11 @@ msgstr "Igual que a contrasinal de enriba"
msgid "Change"
msgstr "Modificado"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "A contrasinal debe ter 6 caracteres ou máis."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "As contrasinais non coinciden"
@@ -2590,7 +2826,7 @@ msgstr "Contrasinal actual incorrecta"
msgid "Error saving user; invalid."
msgstr "Acounteceu un erro gardando o usuario: é inválido."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Non se pode gardar a contrasinal."
@@ -2599,7 +2835,7 @@ msgid "Password saved."
msgstr "Contrasinal gardada."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2609,23 +2845,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2776,18 +3012,19 @@ msgstr ""
msgid "People search"
msgstr "Procurar xente."
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "%s non é unha etiqueta de xente válida"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Usuarios auto-etiquetados como %s - páxina %d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Contido do chío inválido"
#: actions/postnotice.php:101
@@ -2816,43 +3053,44 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"De 1 a 64 letras minúsculas ou númeors, nin espazos nin signos de puntuación"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nome completo"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Páxina persoal"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "Enderezo da túa páxina persoal, blogue, ou perfil noutro sitio"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Contanos un pouco de ti e dos teus intereses en 140 caractéres."
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "Contanos un pouco de ti e dos teus intereses en 140 caractéres."
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Bio"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Localización"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "¿Onde estas, coma \"Cidade, Provincia, País\""
@@ -2862,7 +3100,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Tags"
@@ -2896,7 +3134,7 @@ msgstr ""
"Suscribirse automáticamente a calquera que se suscriba a min (o mellor para "
"non humáns)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "O teu Bio é demasiado longo (max 140 car.)."
@@ -2938,7 +3176,7 @@ msgstr "Configuracións gardadas."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3103,7 +3341,7 @@ msgstr "Restaurar contrasinal"
msgid "Recover password"
msgstr "Recuperar contrasinal"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Petición de recuperación de contrasinal"
@@ -3123,19 +3361,19 @@ msgstr "Restaurar"
msgid "Enter a nickname or email address."
msgstr "Insire o teu alcume ou enderezo de correo."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Non hai ningún usuario con isa dirección de correo ou nome de usuario."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Non hai un enderezo de correo rexistrado para ese usuario."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Acounteceu un erro gardando a confirmación de enderezo."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3143,115 +3381,130 @@ msgstr ""
"As instruccións para recuperar a túa contrasinal foron enviadas ó enderezo "
"de correo da túa conta."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Restauración de contrasinal non esperada."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "A contrasinal debe ter 6 caracteres ou máis."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "A contrasinal e a súa confirmación non coinciden."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Acounteceu un erro configurando o usuario."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "A nova contrasinal gardouse correctamente. Xa estas logueado."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Desculpa, só se pode rexistrar a xente con invitación."
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Acounteceu un erro co código de confirmación."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Xa estas rexistrado!!"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Rexistrar"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Non se permite o rexistro neste intre."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Non podes rexistrarte se non estas de acordo coa licenza."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "O enderezo de correo xa existe."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Usuario ou contrasinal inválidos."
-#: actions/register.php:343
+#: actions/register.php:350
#, fuzzy
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Neste formulario podes crear unha conta de usuario. Logo poderás publicar "
"chíos, e suscribirte a amigos. (Tes unha conta [OpenID](http://openid.net/)? "
"Proba o noso [Rexistro OpenID](%%action.openidlogin%%)!)"
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"De 1 a 64 letras minúsculas ou números, nin espazos nin signos de "
"puntuación. Requerido."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 ou máis caracteres. Requerido."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "A mesma contrasinal que arriba. Requerido."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Correo Electrónico"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Empregado só para actualizacións, novidades, e recuperación de contrasinais"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nome máis longo, preferiblemente o teu nome \"real\""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "O meu texto e arquivos están dispoñibles baixo licenza "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
" agás esta informción privada: contrasinal, dirección de correo electrónico, "
"dirección IM, número de teléfono."
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3283,7 +3536,7 @@ msgstr ""
"\n"
"Grazas por rexistrarte e esperamos que laretexes moito."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3329,7 +3582,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Enderezo do teu perfil en outro servizo de microblogaxe compatíbel"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Subscribir"
@@ -3372,7 +3625,7 @@ msgstr "Non podes rexistrarte se non estas de acordo coa licenza."
msgid "You already repeated that notice."
msgstr "Xa bloqueaches a este usuario."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Crear"
@@ -3412,7 +3665,7 @@ msgstr "Fonte de chíos para %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3425,8 +3678,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3444,7 +3697,7 @@ msgstr "Non podes enviar mensaxes a este usurio."
msgid "User doesn't have this role."
msgstr "Usuario sen un perfil que coincida."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Avatar actualizado."
@@ -3461,7 +3714,7 @@ msgstr "O usuario bloqueoute."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3501,29 +3754,33 @@ msgstr "Debes estar logueado para invitar a outros usuarios a empregar %s"
msgid "Application profile"
msgstr "O chío non ten perfil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Alcume"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Invitación(s) enviada(s)."
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "Subscricións"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Estatísticas"
@@ -3608,16 +3865,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3634,73 +3891,73 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "Tódalas subscricións"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "Non existe o perfil."
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
#, fuzzy
msgid "Note"
msgstr "Chíos"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
#, fuzzy
msgid "Group actions"
msgstr "Outras opcions"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Fonte de chíos para %s"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Fonte de chíos para %s"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Fonte de chíos para %s"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "Band. Saída para %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "Membro dende"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
#, fuzzy
msgid "(None)"
msgstr "(nada)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "Crear"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3714,7 +3971,7 @@ msgstr ""
"(http://status.net/). [Únete agora](%%action.register%%) para compartir "
"chíos cos teus amigos, colegas e familia! ([Ler mais](%%doc.help%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3727,7 +3984,7 @@ msgstr ""
"(http://status.net/). [Únete agora](%%action.register%%) para compartir "
"chíos cos teus amigos, colegas e familia! ([Ler mais](%%doc.help%%))"
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3803,8 +4060,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3866,11 +4123,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3965,7 +4222,7 @@ msgid "Unable to save site notice."
msgstr "Non se puideron gardar os teus axustes de Twitter!"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3982,46 +4239,76 @@ msgstr ""
msgid "Save site notice"
msgstr "Novo chío"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "Configuracións de SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Podes recibir mensaxes SMS a través do email dende %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "Enderezo de IM"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Número de teléfono actual confirmado mediante SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Agardando a confirmación neste número de teléfono."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Código de confirmación."
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Insire o código que recibiches no teu teléfono."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "Número de Teléfono do SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Número de teléfono, sen puntuacións ou espazos, co código de área"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Preferencias"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -4029,23 +4316,34 @@ msgstr ""
"Enviarme chíos mediante SMS, entendo que a miña operadora poida cobrarme "
"grandes facturas."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Preferencias gardadas."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Non hai ningún número de teléfono."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Non se seleccionou unha operadora."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Xa é o teu número de teléfono."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "O número de teléfono xa pertence a outro usuario."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -4055,24 +4353,43 @@ msgstr ""
"Comproba a túa bandexa de entrada (ou spam!) polo código e instrucións que "
"debes seguir."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Ese é un número de confirmación incorrecto."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Confirmación cancealada."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Ese non é o teu número de teléfono."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "Número de Teléfono do SMS"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
#, fuzzy
msgid "Mobile carrier"
msgstr "Selecciona unha operadora"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Selecciona unha operadora"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4081,13 +4398,14 @@ msgstr ""
"Operadora móbil do teu teléfono. Se sabes se a operadora acepta SMS sobre "
"email e non está listada aquí, envianos unha mensaxe para incluilo en %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Non se inseriu ningún código"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4109,7 +4427,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4149,8 +4467,8 @@ msgstr "Configuracións de Twitter"
msgid "You are not subscribed to that profile."
msgstr "Non estás suscrito a ese perfil"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Non se pode gardar a subscrición."
@@ -4243,11 +4561,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s está a escoitar os teus chíos %2$s."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber."
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4281,13 +4599,13 @@ msgstr "Non hai argumento id."
msgid "Tag %s"
msgstr "Tags"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "O usuario non ten perfil."
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4325,10 +4643,6 @@ msgstr ""
msgid "No such tag."
msgstr "Non existe a etiqueta."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Método da API en contrución."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4345,7 +4659,8 @@ msgid "User is not silenced."
msgstr "O usuario non ten perfil."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "Non hai identificador de perfil na peticion."
#: actions/unsubscribe.php:98
@@ -4382,7 +4697,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Perfil"
@@ -4449,7 +4765,7 @@ msgstr ""
"user's notices. If you didn't just ask to subscribe to someone's notices, "
"click \"Cancel\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4556,48 +4872,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Tódalas subscricións"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "%1s non é unha orixe fiable."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Actualizacións dende %1$s en %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Estatísticas"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4605,7 +4927,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4613,103 +4935,153 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Persoal"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Tamaño inválido."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Non existe o perfil."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Non se puido actualizar o usuario."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Non existe o perfil."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Non se puido actualizar o usuario."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Non se puido crear o favorito."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Erro ó enviar a mensaxe directa."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Non se pode inserir unha mensaxe."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Non se puido actualizar a mensaxe coa nova URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Erro ó inserir o hashtag na BD: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Aconteceu un erro ó gardar o chío."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Aconteceu un erro ó gardar o chío. Usuario descoñecido."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Demasiados chíos en pouco tempo; tomate un respiro e envíao de novo dentro "
"duns minutos."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
#, fuzzy
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
@@ -4718,168 +5090,232 @@ msgstr ""
"Demasiados chíos en pouco tempo; tomate un respiro e envíao de novo dentro "
"duns minutos."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Tes restrinxido o envio de chíos neste sitio."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Aconteceu un erro ó gardar o chío."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Aconteceu un erro ó gardar o chío."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "O usuario non ten perfil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Non se puideron gardar os teus axustes de Twitter!"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "Este usuario non che permite suscribirte a el."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "O usuario bloqueoute."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Non está suscrito!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Non se pode eliminar a subscrición."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Non se pode eliminar a subscrición."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Non se pode eliminar a subscrición."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Mensaxe de %1$s en %2$s"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "Non se puido crear o favorito."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Non se pode gardar a subscrición."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "Non se pode gardar a subscrición."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Non se pode gardar a subscrición."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Configuración de perfil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "Acounteceu un fallo ó actualizar o avatar."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Cambiar contrasinal"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Cambiar a xestión de email"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "O usuario non ten perfil."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Outros"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Outras opcions"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Outros"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Persoal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Cambiar contrasinal"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Non se pode redireccionar ao servidor: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Conectar"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Navegación de subscricións"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
@@ -4887,69 +5323,72 @@ msgstr ""
"Emprega este formulario para invitar ós teus amigos e colegas a empregar "
"este servizo."
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Invitar"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Sair"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Crear nova conta"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Rexistrar"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Inicio de sesión"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Axuda"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Axuda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4957,76 +5396,90 @@ msgstr "Buscar"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "Novo chío"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "Novo chío"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "Navegación de subscricións"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Axuda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Sobre"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Preguntas frecuentes"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacidade"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Fonte"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contacto"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** é un servizo de microbloguexo que che proporciona [%%site."
"broughtby%%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** é un servizo de microbloguexo."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -5037,73 +5490,86 @@ msgstr ""
"%s, dispoñible baixo licenza [GNU Affero General Public License](http://www."
"fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "Atopar no contido dos chíos"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-#, fuzzy
-msgid "All "
-msgstr "Todos"
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "« Despois"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "Antes »"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "Non podes enviar mensaxes a este usurio."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "Non se permite o rexistro neste intre."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5115,167 +5581,205 @@ msgstr "Comando non implementado."
msgid "saveSettings() not implemented."
msgstr "Comando non implementado."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "Non se puideron gardar os teus axustes de Twitter!"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Confirmar correo electrónico"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Invitar"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "Confirmación de SMS"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Persoal"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "Confirmación de SMS"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Usuario"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "Confirmación de SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "Confirmación de SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "Confirmación de SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Novo chío"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "Confirmación de SMS"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Contanos un pouco de ti e dos teus intereses en 140 caractéres."
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Contanos un pouco de ti e dos teus intereses en 140 caractéres."
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Fonte"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "Enderezo da túa páxina persoal, blogue, ou perfil noutro sitio"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Fonte"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "Enderezo da túa páxina persoal, blogue, ou perfil noutro sitio"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Eliminar"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "Perfil"
@@ -5288,47 +5792,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Contrasinal gardada."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Contrasinal gardada."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultados do comando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Comando completo"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Comando fallido"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Desculpa, este comando todavía non está implementado."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Non se atopou un perfil con ese ID."
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "O usuario non ten último chio."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Non se puido actualizar o usuario coa dirección de correo electrónico."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Non se puido actualizar o usuario coa dirección de correo electrónico."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Desculpa, este comando todavía non está implementado."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Toque enviado"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5339,176 +5863,180 @@ msgstr ""
"Suscriptores: %2$s\n"
"Chíos: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Non se atopou un perfil con ese ID."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "O usuario non ten último chio."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Chío marcado coma favorito."
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "Xa estas suscrito a estes usuarios:"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%s / Favoritos dende %s"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Non podes seguir a este usuario: o Usuario non se atopa."
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%s / Favoritos dende %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nome completo: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Ubicación: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Páxina persoal: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Sobre: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "Mensaxe demasiado longa - o máximo é 140 caracteres, ti enviaches %d "
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Mensaxe directo a %s enviado"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Erro ó enviar a mensaxe directa."
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Non se pode activar a notificación."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Eliminar chío"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Chío publicado"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Aconteceu un erro ó gardar o chío."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Mensaxe demasiado longa - o máximo é 140 caracteres, ti enviaches %d "
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Non se pode eliminar este chíos."
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Aconteceu un erro ó gardar o chío."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Especifica o nome do usuario ó que queres suscribirte"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Ningún usuario."
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Non estás suscrito a ese perfil"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Suscrito a %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Especifica o nome de usuario ó que queres deixar de seguir"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Desuscribir de %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Comando non implementado."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notificación desactivada."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "No se pode desactivar a notificación."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notificación habilitada."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Non se pode activar a notificación."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Desuscribir de %s"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Non estás suscrito a ese perfil"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Xa estas suscrito a estes usuarios:"
@@ -5517,12 +6045,12 @@ msgstr[2] ""
msgstr[3] ""
msgstr[4] ""
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Outro usuario non se puido suscribir a ti."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Outro usuario non se puido suscribir a ti."
@@ -5531,12 +6059,12 @@ msgstr[2] ""
msgstr[3] ""
msgstr[4] ""
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Non estás suscrito a ese perfil"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Non estás suscrito a ese perfil"
@@ -5545,7 +6073,7 @@ msgstr[2] ""
msgstr[3] ""
msgstr[4] ""
-#: lib/command.php:769
+#: lib/command.php:838
#, fuzzy
msgid ""
"Commands:\n"
@@ -5614,20 +6142,20 @@ msgstr ""
"tracks - non implementado por agora.\n"
"tracking - non implementado por agora.\n"
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Sen código de confirmación."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5808,55 +6336,56 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Esta páxina non está dispoñíbel no tipo de medio que aceptas"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato de ficheiro de imaxe non soportado."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Podes actualizar a túa información do perfil persoal aquí"
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Carga parcial."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Aconteceu un erro no sistema namentras se estaba cargando o ficheiro."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Non é unha imaxe ou está corrupta."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato de ficheiro de imaxe non soportado."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "Bloqueo de usuario fallido."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
#, fuzzy
msgid "Unknown file type"
msgstr "tipo de ficheiro non soportado"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5881,11 +6410,13 @@ msgstr "Accede co teu nome de usuario e contrasinal."
msgid "Sign up for a new account"
msgstr "Crear nova conta"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmar correo electrónico"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5914,12 +6445,21 @@ msgstr ""
"Grazas polo teu tempo, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s está a escoitar os teus chíos %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5940,17 +6480,20 @@ msgstr ""
"Atentamente todo seu,\n"
"%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "Ubicación: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nova dirección de email para posterar en %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5971,21 +6514,31 @@ msgstr ""
"Sempre teu...,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Estado de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmación de SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Agardando a confirmación neste número de teléfono."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s douche un toque"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -6011,12 +6564,14 @@ msgstr ""
"With kind regards,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "%s enviouche unha nova mensaxe privada"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -6049,12 +6604,14 @@ msgstr ""
"With kind regards,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s gustoulle o teu chío"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, fuzzy, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -6087,12 +6644,22 @@ msgstr ""
"Fielmente teu,\n"
"%5$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6105,6 +6672,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -6117,7 +6696,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " dende "
@@ -6173,25 +6752,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Non se pudo recuperar a liña de tempo publica."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6250,53 +6829,57 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "No"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "Sen contido!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Crear"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
#, fuzzy
msgid "Reply to this notice"
msgstr "Non se pode eliminar este chíos."
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
#, fuzzy
msgid "Reply"
msgstr "contestar"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Chío publicado"
@@ -6324,6 +6907,10 @@ msgstr "Acounteceu un erro ó inserir o novo perfil"
msgid "Error inserting avatar"
msgstr "Acounteceu un erro ó inserir o avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Acounteceu un erro actualizando o perfil remoto"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Aconteceu un erro ó inserir o perfil remoto"
@@ -6370,12 +6957,12 @@ msgstr "As túas mensaxes enviadas"
msgid "Tags in %s's notices"
msgstr "O usuario non ten último chio."
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "Acción descoñecida"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subscricións"
@@ -6383,35 +6970,35 @@ msgstr "Subscricións"
msgid "All subscriptions"
msgstr "Tódalas subscricións"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subscritores"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "Subscritores"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "Usuario"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membro dende"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
#, fuzzy
msgid "All groups"
msgstr "Tódalas etiquetas"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Non hai argumento id."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6436,12 +7023,21 @@ msgstr "Destacado"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Non hai argumento id."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Non se pode eliminar este chíos."
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Si"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Non se pode eliminar este chíos."
@@ -6451,7 +7047,7 @@ msgstr "Non se pode eliminar este chíos."
msgid "Revoke the \"%s\" role from this user"
msgstr ""
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6559,6 +7155,50 @@ msgstr ""
msgid "None"
msgstr "No"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Acounteceu un fallo ó actualizar o avatar."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Acounteceu un erro actualizando o perfil remoto"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6590,95 +7230,114 @@ msgstr "Desuscribir de %s"
msgid "Unsubscribe"
msgstr "Eliminar subscrición"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "O usuario non ten perfil."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
#, fuzzy
msgid "User actions"
msgstr "Outras opcions"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Configuración de perfil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
#, fuzzy
msgid "Send a direct message to this user"
msgstr "Non podes enviar mensaxes a este usurio."
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
#, fuzzy
msgid "Message"
msgstr "Nova mensaxe"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "O usuario non ten perfil."
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "fai uns segundos"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "fai un minuto"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "fai %d minutos"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "fai unha hora"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "fai %d horas"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "fai un día"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "fai %d días"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "fai un mes"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "fai %d meses"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "fai un ano"
@@ -6692,7 +7351,7 @@ msgstr "%1s non é unha orixe fiable."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Mensaxe demasiado longa - o máximo é 140 caracteres, ti enviaches %d "
diff --git a/locale/gl/LC_MESSAGES/statusnet.po b/locale/gl/LC_MESSAGES/statusnet.po
new file mode 100644
index 000000000..68434b085
--- /dev/null
+++ b/locale/gl/LC_MESSAGES/statusnet.po
@@ -0,0 +1,7178 @@
+# Translation of StatusNet to Galician
+#
+# Author@translatewiki.net: Gallaecio
+# Author@translatewiki.net: Toliño
+# --
+# This file is distributed under the same license as the StatusNet package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: StatusNet\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:30+0000\n"
+"Language-Team: Galician\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
+"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
+"X-Language-Code: gl\n"
+"X-Message-Group: out-statusnet\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#. TRANS: Page title
+#. TRANS: Menu item for site administration
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
+msgid "Access"
+msgstr "Acceso"
+
+#. TRANS: Page notice
+#: actions/accessadminpanel.php:67
+msgid "Site access settings"
+msgstr "Configuración do acceso ao sitio"
+
+#. TRANS: Form legend for registration form.
+#: actions/accessadminpanel.php:161
+msgid "Registration"
+msgstr "Rexistro"
+
+#. TRANS: Checkbox instructions for admin setting "Private"
+#: actions/accessadminpanel.php:165
+msgid "Prohibit anonymous users (not logged in) from viewing site?"
+msgstr "Prohibir que os usuarios anónimos (sen sesión iniciada) vexan o sitio?"
+
+#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
+#: actions/accessadminpanel.php:167
+msgctxt "LABEL"
+msgid "Private"
+msgstr "Privado"
+
+#. TRANS: Checkbox instructions for admin setting "Invite only"
+#: actions/accessadminpanel.php:174
+msgid "Make registration invitation only."
+msgstr "Que o rexistro só se poida facer previa invitación."
+
+#. TRANS: Checkbox label for configuring site as invite only.
+#: actions/accessadminpanel.php:176
+msgid "Invite only"
+msgstr "Só por invitación"
+
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
+#: actions/accessadminpanel.php:183
+msgid "Disable new registrations."
+msgstr "Desactivar os novos rexistros."
+
+#. TRANS: Checkbox label for disabling new user registrations.
+#: actions/accessadminpanel.php:185
+msgid "Closed"
+msgstr "Pechado"
+
+#. TRANS: Title / tooltip for button to save access settings in site admin panel
+#: actions/accessadminpanel.php:202
+msgid "Save access settings"
+msgstr "Gardar a configuración de acceso"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
+msgctxt "BUTTON"
+msgid "Save"
+msgstr "Gardar"
+
+#. TRANS: Server error when page not found (404)
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
+#: actions/showfavorites.php:138 actions/tag.php:52
+msgid "No such page."
+msgstr "Esa páxina non existe."
+
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
+#: actions/apiaccountupdateprofile.php:105
+#: actions/apiaccountupdateprofilebackgroundimage.php:116
+#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
+#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
+#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
+#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
+#: actions/otp.php:76 actions/remotesubscribe.php:145
+#: actions/remotesubscribe.php:154 actions/replies.php:73
+#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
+msgid "No such user."
+msgstr "Non existe tal usuario."
+
+#. TRANS: Page title. %1$s is user nickname, %2$d is page number
+#: actions/all.php:90
+#, php-format
+msgid "%1$s and friends, page %2$d"
+msgstr "%1$s e amigos, páxina %2$d"
+
+#. TRANS: Page title. %1$s is user nickname
+#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
+#: lib/personalgroupnav.php:100
+#, php-format
+msgid "%s and friends"
+msgstr "%s e amigos"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:107
+#, php-format
+msgid "Feed for friends of %s (RSS 1.0)"
+msgstr "Fonte de novas dos amigos de %s (RSS 1.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:116
+#, php-format
+msgid "Feed for friends of %s (RSS 2.0)"
+msgstr "Fonte de novas dos amigos de %s (RSS 2.0)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:125
+#, php-format
+msgid "Feed for friends of %s (Atom)"
+msgstr "Fonte de novas dos amigos de %s (Atom)"
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:138
+#, php-format
+msgid ""
+"This is the timeline for %s and friends but no one has posted anything yet."
+msgstr ""
+"Esta é a liña do tempo de %s e amigos pero ninguén publicou nada aínda."
+
+#: actions/all.php:143
+#, php-format
+msgid ""
+"Try subscribing to more people, [join a group](%%action.groups%%) or post "
+"something yourself."
+msgstr ""
+"Probe a subscribirse a máis xente, [únase a un grupo](%%action.groups%%) ou "
+"publique algo."
+
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
+#: actions/all.php:146
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+"Pode probar a [facerlle un aceno a %1$s](../%2$s) dende o seu perfil ou "
+"[publicar algo dirixido a el ou ela](%%%%action.newnotice%%%%?"
+"status_textarea=%3$s)."
+
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
+"post a notice to them."
+msgstr ""
+"Por que non [rexistrar unha conta](%%%%action.register%%%%) e entón facerlle "
+"un aceno a %s ou publicar unha nota dirixida a el ou ela?"
+
+#. TRANS: H1 text
+#: actions/all.php:182
+msgid "You and friends"
+msgstr "Vostede e mailos seus amigos"
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
+#, php-format
+msgid "Updates from %1$s and friends on %2$s!"
+msgstr "Actualizacións de %1$s e amigos en %2$s!"
+
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
+#: actions/apiaccountupdateprofile.php:97
+#: actions/apiaccountupdateprofilebackgroundimage.php:94
+#: actions/apiaccountupdateprofilecolors.php:118
+#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
+#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
+#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
+#: actions/apitimelineretweetedtome.php:121
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+msgid "API method not found."
+msgstr "Non se atopou o método da API."
+
+#: actions/apiaccountupdatedeliverydevice.php:86
+#: actions/apiaccountupdateprofile.php:89
+#: actions/apiaccountupdateprofilebackgroundimage.php:86
+#: actions/apiaccountupdateprofilecolors.php:110
+#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
+#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
+msgid "This method requires a POST."
+msgstr "Este método require un POST."
+
+#: actions/apiaccountupdatedeliverydevice.php:106
+msgid ""
+"You must specify a parameter named 'device' with a value of one of: sms, im, "
+"none."
+msgstr ""
+"Ten que especificar un parámetro chamado \"device\" cun destes valores: sms, "
+"im, none."
+
+#: actions/apiaccountupdatedeliverydevice.php:133
+msgid "Could not update user."
+msgstr "Non se puido actualizar o usuario."
+
+#: actions/apiaccountupdateprofile.php:112
+#: actions/apiaccountupdateprofilebackgroundimage.php:194
+#: actions/apiaccountupdateprofilecolors.php:185
+#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
+#: lib/profileaction.php:84
+msgid "User has no profile."
+msgstr "O usuario non ten perfil."
+
+#: actions/apiaccountupdateprofile.php:147
+msgid "Could not save profile."
+msgstr "Non se puido gardar o perfil."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
+#: actions/newapplication.php:101 actions/newnotice.php:94
+#: lib/designsettings.php:283
+#, php-format
+msgid ""
+"The server was unable to handle that much POST data (%s bytes) due to its "
+"current configuration."
+msgstr ""
+"O servidor non puido manexar tantos datos POST (%s bytes) por mor da súa "
+"configuración actual."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:136
+#: actions/apiaccountupdateprofilebackgroundimage.php:146
+#: actions/apiaccountupdateprofilecolors.php:164
+#: actions/apiaccountupdateprofilecolors.php:174
+#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
+#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
+#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
+msgid "Unable to save your design settings."
+msgstr "Non se puido gardar a súa configuración de deseño."
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:187
+#: actions/apiaccountupdateprofilecolors.php:142
+msgid "Could not update your design."
+msgstr "Non se puido actualizar o seu deseño."
+
+#: actions/apiblockcreate.php:105
+msgid "You cannot block yourself!"
+msgstr "Non pode bloquearse a si mesmo!"
+
+#: actions/apiblockcreate.php:126
+msgid "Block user failed."
+msgstr "Non se puido bloquear o usuario."
+
+#: actions/apiblockdestroy.php:114
+msgid "Unblock user failed."
+msgstr "Non se puido desbloquear o usuario."
+
+#: actions/apidirectmessage.php:89
+#, php-format
+msgid "Direct messages from %s"
+msgstr "Mensaxes directas de %s"
+
+#: actions/apidirectmessage.php:93
+#, php-format
+msgid "All the direct messages sent from %s"
+msgstr "Todas as mensaxes directas enviadas por %s"
+
+#: actions/apidirectmessage.php:101
+#, php-format
+msgid "Direct messages to %s"
+msgstr "Mensaxes directas a %s"
+
+#: actions/apidirectmessage.php:105
+#, php-format
+msgid "All the direct messages sent to %s"
+msgstr "Todas as mensaxes directas enviadas a %s"
+
+#: actions/apidirectmessagenew.php:118
+msgid "No message text!"
+msgstr "A mensaxe non ten texto!"
+
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
+#, php-format
+msgid "That's too long. Max message size is %d chars."
+msgstr ""
+"Iso é longo de máis. A lonxitude máxima das mensaxes é de %d caracteres."
+
+#: actions/apidirectmessagenew.php:138
+msgid "Recipient user not found."
+msgstr "Non se atopou o destinatario."
+
+#: actions/apidirectmessagenew.php:142
+msgid "Can't send direct messages to users who aren't your friend."
+msgstr ""
+"Non pode enviar mensaxes directas a usuarios que non sexan amigos seus."
+
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
+msgid "No status found with that ID."
+msgstr "Non se atopou ningún estado con esa ID."
+
+#: actions/apifavoritecreate.php:120
+msgid "This status is already a favorite."
+msgstr "Este estado xa é dos favoritos."
+
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
+msgid "Could not create favorite."
+msgstr "Non se puido crear o favorito."
+
+#: actions/apifavoritedestroy.php:123
+msgid "That status is not a favorite."
+msgstr "Ese estado non é un dos favoritos."
+
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
+msgid "Could not delete favorite."
+msgstr "Non se puido eliminar o favorito."
+
+#: actions/apifriendshipscreate.php:109
+msgid "Could not follow user: profile not found."
+msgstr "Non se puido seguir o usuario: non se atopou."
+
+#: actions/apifriendshipscreate.php:118
+#, php-format
+msgid "Could not follow user: %s is already on your list."
+msgstr "Non se puido seguir o usuario: %s xa está na súa lista."
+
+#: actions/apifriendshipsdestroy.php:109
+msgid "Could not unfollow user: User not found."
+msgstr "Non se puido deixar de seguir o usuario: non se atopou."
+
+#: actions/apifriendshipsdestroy.php:120
+msgid "You cannot unfollow yourself."
+msgstr "Non pode deixar de seguirse a si mesmo."
+
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Deben fornecerse dúas identificacións ou nomes de usuario."
+
+#: actions/apifriendshipsshow.php:134
+msgid "Could not determine source user."
+msgstr "Non se puido determinar o usuario de orixe."
+
+#: actions/apifriendshipsshow.php:142
+msgid "Could not find target user."
+msgstr "Non se puido atopar o usuario de destino."
+
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
+#: actions/newgroup.php:126 actions/profilesettings.php:215
+#: actions/register.php:212
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr ""
+"O alcume debe ter só letras en minúscula e números, e non pode ter espazos "
+"en branco."
+
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
+#: actions/newgroup.php:130 actions/profilesettings.php:238
+#: actions/register.php:215
+msgid "Nickname already in use. Try another one."
+msgstr "Ese alcume xa está en uso. Probe con outro."
+
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
+#: actions/newgroup.php:133 actions/profilesettings.php:218
+#: actions/register.php:217
+msgid "Not a valid nickname."
+msgstr "O formato do alcume non é correcto."
+
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
+#: actions/editgroup.php:199 actions/newapplication.php:203
+#: actions/newgroup.php:139 actions/profilesettings.php:222
+#: actions/register.php:224
+msgid "Homepage is not a valid URL."
+msgstr "O URL da páxina persoal non é correcto."
+
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
+#: actions/newgroup.php:142 actions/profilesettings.php:225
+#: actions/register.php:227
+msgid "Full name is too long (max 255 chars)."
+msgstr "O nome completo é longo de máis (o máximo son 255 caracteres)."
+
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
+#: actions/newapplication.php:172
+#, php-format
+msgid "Description is too long (max %d chars)."
+msgstr "A descrición é longa de máis (o máximo son %d caracteres)."
+
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
+#: actions/newgroup.php:148 actions/profilesettings.php:232
+#: actions/register.php:234
+msgid "Location is too long (max 255 chars)."
+msgstr "A localidade é longa de máis (o máximo son 255 caracteres)."
+
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
+#: actions/newgroup.php:159
+#, php-format
+msgid "Too many aliases! Maximum %d."
+msgstr "Demasiados pseudónimos! O número máximo é %d."
+
+#: actions/apigroupcreate.php:267
+#, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr "Pseudónimo incorrecto: \"%s\"."
+
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
+#: actions/newgroup.php:172
+#, php-format
+msgid "Alias \"%s\" already in use. Try another one."
+msgstr "O pseudónimo \"%s\" xa se está a usar. Proba con outro."
+
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
+#: actions/newgroup.php:178
+msgid "Alias can't be the same as nickname."
+msgstr "O pseudónimo non pode coincidir co alcume."
+
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Non se atopou o grupo."
+
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
+msgid "You are already a member of that group."
+msgstr "Xa forma parte dese grupo."
+
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
+msgid "You have been blocked from that group by the admin."
+msgstr "O administrador bloqueouno nese grupo."
+
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
+msgid "Could not join user %1$s to group %2$s."
+msgstr "O usuario %1$s non se puido engadir ao grupo %2$s."
+
+#: actions/apigroupleave.php:115
+msgid "You are not a member of this group."
+msgstr "Vostede non pertence a este grupo."
+
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
+msgid "Could not remove user %1$s from group %2$s."
+msgstr "O usuario %1$s non se puido eliminar do grupo %2$s."
+
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
+#, php-format
+msgid "%s's groups"
+msgstr "Os grupos de %s"
+
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Grupos de %1$s aos que pertence %2$s."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#, php-format
+msgid "%s groups"
+msgstr "grupos %s"
+
+#: actions/apigrouplistall.php:96
+#, php-format
+msgid "groups on %s"
+msgstr "grupos en %s"
+
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Houbo un erro durante a carga."
+
+#: actions/apioauthauthorize.php:101
+msgid "No oauth_token parameter provided."
+msgstr "Non se forneceu o parámetro oauth_token."
+
+#: actions/apioauthauthorize.php:106
+msgid "Invalid token."
+msgstr "Pase incorrecto."
+
+#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
+#: actions/groupblock.php:66 actions/grouplogo.php:312
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
+#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
+#: actions/othersettings.php:145 actions/passwordsettings.php:138
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#: actions/subscribe.php:86 actions/tagother.php:166
+#: actions/unsubscribe.php:69 actions/userauthorization.php:52
+#: lib/designsettings.php:294
+msgid "There was a problem with your session token. Try again, please."
+msgstr "Houbo un erro co seu pase. Inténteo de novo."
+
+#: actions/apioauthauthorize.php:135
+msgid "Invalid nickname / password!"
+msgstr "O alcume ou o contrasinal son incorrectos!"
+
+#: actions/apioauthauthorize.php:159
+msgid "Database error deleting OAuth application user."
+msgstr ""
+"Houbo un erro na base de datos ao intentar borrar o usuario da aplicación "
+"OAuth."
+
+#: actions/apioauthauthorize.php:185
+msgid "Database error inserting OAuth application user."
+msgstr ""
+"Houbo un erro na base de datos ao intentar inserir o usuario da aplicación "
+"OAuth."
+
+#: actions/apioauthauthorize.php:214
+#, php-format
+msgid ""
+"The request token %s has been authorized. Please exchange it for an access "
+"token."
+msgstr "Autorizouse a ficha da solicitude %s. Intercámbiea por un pase."
+
+#: actions/apioauthauthorize.php:227
+#, php-format
+msgid "The request token %s has been denied and revoked."
+msgstr "Denegouse e revogouse a ficha da solicitude %s."
+
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
+#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
+#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
+#: actions/smssettings.php:277 lib/designsettings.php:304
+msgid "Unexpected form submission."
+msgstr "Envío de formulario inesperado."
+
+#: actions/apioauthauthorize.php:259
+msgid "An application would like to connect to your account"
+msgstr "Unha aplicación quere conectarse á súa conta"
+
+#: actions/apioauthauthorize.php:276
+msgid "Allow or deny access"
+msgstr "Permitir ou denegar o acceso"
+
+#: actions/apioauthauthorize.php:292
+#, php-format
+msgid ""
+"The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
+"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."
+msgstr ""
+"A aplicación <strong>%1$s</strong> de <strong>%2$s</strong> quere poder "
+"<strong>%3$s</strong> os datos da súa conta %4$s. Só debería permitir o "
+"acceso á súa conta %4$s a xente de confianza."
+
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
+msgid "Account"
+msgstr "Conta"
+
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
+#: actions/userauthorization.php:145 lib/groupeditform.php:152
+#: lib/userprofile.php:132
+msgid "Nickname"
+msgstr "Alcume"
+
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
+msgid "Password"
+msgstr "Contrasinal"
+
+#: actions/apioauthauthorize.php:328
+msgid "Deny"
+msgstr "Denegar"
+
+#: actions/apioauthauthorize.php:334
+msgid "Allow"
+msgstr "Permitir"
+
+#: actions/apioauthauthorize.php:351
+msgid "Allow or deny access to your account information."
+msgstr "Permitir ou denegar o acceso á información da súa conta."
+
+#: actions/apistatusesdestroy.php:112
+msgid "This method requires a POST or DELETE."
+msgstr "Este método require un POST ou un DELETE."
+
+#: actions/apistatusesdestroy.php:135
+msgid "You may not delete another user's status."
+msgstr "Non pode borrar o estado doutro usuario."
+
+#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
+#: actions/deletenotice.php:52 actions/shownotice.php:92
+msgid "No such notice."
+msgstr "Non existe tal nota."
+
+#: actions/apistatusesretweet.php:83
+msgid "Cannot repeat your own notice."
+msgstr "Non pode repetir a súa propia nota."
+
+#: actions/apistatusesretweet.php:91
+msgid "Already repeated that notice."
+msgstr "Xa repetiu esa nota."
+
+#: actions/apistatusesshow.php:139
+msgid "Status deleted."
+msgstr "Borrouse o estado."
+
+#: actions/apistatusesshow.php:145
+msgid "No status with that ID found."
+msgstr "Non se atopou ningún estado con esa ID."
+
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "O cliente debe proporcionar un parámetro de \"estado\" cun valor."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
+#: lib/mailhandler.php:60
+#, php-format
+msgid "That's too long. Max notice size is %d chars."
+msgstr "Iso é longo de máis. A nota non pode exceder os %d caracteres."
+
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Non se atopou."
+
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
+#, php-format
+msgid "Max notice size is %d chars, including attachment URL."
+msgstr ""
+"A lonxitude máxima das notas é de %d caracteres, incluído o URL do dato "
+"adxunto."
+
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
+msgid "Unsupported format."
+msgstr "Formato non soportado."
+
+#: actions/apitimelinefavorites.php:110
+#, php-format
+msgid "%1$s / Favorites from %2$s"
+msgstr "%1$s / Favoritos de %2$s"
+
+#: actions/apitimelinefavorites.php:119
+#, php-format
+msgid "%1$s updates favorited by %2$s / %2$s."
+msgstr "%1$s actualizacións marcadas como favoritas por %2$s / %2$s."
+
+#: actions/apitimelinementions.php:118
+#, php-format
+msgid "%1$s / Updates mentioning %2$s"
+msgstr "%1$s / Actualizacións que mencionan %2$s"
+
+#: actions/apitimelinementions.php:131
+#, php-format
+msgid "%1$s updates that reply to updates from %2$s / %3$s."
+msgstr "%1$s actualizacións que responden a actualizacións de %2$s / %3$s."
+
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#, php-format
+msgid "%s public timeline"
+msgstr "Liña do tempo pública de %s"
+
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#, php-format
+msgid "%s updates from everyone!"
+msgstr "%s actualizacións de todos!"
+
+#: actions/apitimelineretweetedtome.php:111
+#, php-format
+msgid "Repeated to %s"
+msgstr "Repetiu a %s"
+
+#: actions/apitimelineretweetsofme.php:114
+#, php-format
+msgid "Repeats of %s"
+msgstr "Repeticións de %s"
+
+#: actions/apitimelinetag.php:105 actions/tag.php:67
+#, php-format
+msgid "Notices tagged with %s"
+msgstr "Notas etiquetadas con %s"
+
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#, php-format
+msgid "Updates tagged with %1$s on %2$s!"
+msgstr "Actualizacións etiquetadas con %1$s en %2$s!"
+
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Método API en desenvolvemento."
+
+#: actions/attachment.php:73
+msgid "No such attachment."
+msgstr "Non existe tal dato adxunto."
+
+#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#: actions/grouplogo.php:86 actions/groupmembers.php:76
+#: actions/grouprss.php:91 actions/showgroup.php:121
+msgid "No nickname."
+msgstr "Sen alcume."
+
+#: actions/avatarbynickname.php:64
+msgid "No size."
+msgstr "Sen tamaño."
+
+#: actions/avatarbynickname.php:69
+msgid "Invalid size."
+msgstr "Tamaño non válido."
+
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
+msgid "Avatar"
+msgstr "Avatar"
+
+#: actions/avatarsettings.php:78
+#, php-format
+msgid "You can upload your personal avatar. The maximum file size is %s."
+msgstr ""
+"Pode cargar o seu avatar personalizado. O tamaño máximo para o ficheiro é de "
+"%s."
+
+#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "O usuario non ten perfil."
+
+#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
+#: actions/grouplogo.php:254
+msgid "Avatar settings"
+msgstr "Configuración do avatar"
+
+#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
+#: actions/grouplogo.php:202 actions/grouplogo.php:262
+msgid "Original"
+msgstr "Orixinal"
+
+#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
+#: actions/grouplogo.php:213 actions/grouplogo.php:274
+msgid "Preview"
+msgstr "Vista previa"
+
+#: actions/avatarsettings.php:149 actions/showapplication.php:252
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
+msgid "Delete"
+msgstr "Borrar"
+
+#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+msgid "Upload"
+msgstr "Cargar"
+
+#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+msgid "Crop"
+msgstr "Recortar"
+
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Non se subiu ficheiro ningún."
+
+#: actions/avatarsettings.php:332
+msgid "Pick a square area of the image to be your avatar"
+msgstr "Escolla unha zona cadrada da imaxe para usala como avatar"
+
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+msgid "Lost our file data."
+msgstr "Perdéronse os datos do ficheiro."
+
+#: actions/avatarsettings.php:370
+msgid "Avatar updated."
+msgstr "Actualizouse o avatar."
+
+#: actions/avatarsettings.php:373
+msgid "Failed updating avatar."
+msgstr "Non se puido actualizar o avatar."
+
+#: actions/avatarsettings.php:397
+msgid "Avatar deleted."
+msgstr "Borrouse o avatar."
+
+#: actions/block.php:69
+msgid "You already blocked that user."
+msgstr "Xa bloqueou ese usuario."
+
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+msgid "Block user"
+msgstr "Bloquear o usuario"
+
+#: actions/block.php:138
+msgid ""
+"Are you sure you want to block this user? Afterwards, they will be "
+"unsubscribed from you, unable to subscribe to you in the future, and you "
+"will not be notified of any @-replies from them."
+msgstr ""
+"Está seguro de querer bloquear este usuario? Unha vez feito deixará de estar "
+"subscrito a vostede mentres siga bloqueado, e vostede non recibirá ningunha "
+"das súas respostas."
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
+#: actions/groupblock.php:178
+msgctxt "BUTTON"
+msgid "No"
+msgstr "Non"
+
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
+msgid "Do not block this user"
+msgstr "Non bloquear este usuario"
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
+msgid "Yes"
+msgstr "Si"
+
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
+msgid "Block this user"
+msgstr "Bloquear este usuario"
+
+#: actions/block.php:187
+msgid "Failed to save block information."
+msgstr "Non se puido gardar a información do bloqueo."
+
+#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
+#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
+#: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
+#: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
+#: actions/groupmembers.php:83 actions/groupmembers.php:90
+#: actions/grouprss.php:98 actions/grouprss.php:105
+#: actions/groupunblock.php:86 actions/joingroup.php:82
+#: actions/joingroup.php:93 actions/leavegroup.php:82
+#: actions/leavegroup.php:93 actions/makeadmin.php:86
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
+msgid "No such group."
+msgstr "Non existe tal grupo."
+
+#: actions/blockedfromgroup.php:97
+#, php-format
+msgid "%s blocked profiles"
+msgstr "%s perfís bloqueados"
+
+#: actions/blockedfromgroup.php:100
+#, php-format
+msgid "%1$s blocked profiles, page %2$d"
+msgstr "%1$s perfís bloqueados, páxina %2$d"
+
+#: actions/blockedfromgroup.php:115
+msgid "A list of the users blocked from joining this group."
+msgstr "Unha lista de usuarios bloqueados fronte á unión a este grupo."
+
+#: actions/blockedfromgroup.php:288
+msgid "Unblock user from group"
+msgstr "Desbloquear o usuario do grupo"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
+msgid "Unblock"
+msgstr "Desbloquear"
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
+msgid "Unblock this user"
+msgstr "Desbloquear este usuario"
+
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Publicar en %s"
+
+#: actions/confirmaddress.php:75
+msgid "No confirmation code."
+msgstr "Sen código de confirmación."
+
+#: actions/confirmaddress.php:80
+msgid "Confirmation code not found."
+msgstr "Non se atopou o código de confirmación."
+
+#: actions/confirmaddress.php:85
+msgid "That confirmation code is not for you!"
+msgstr "Ese código de confirmación non é para vostede!"
+
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, php-format
+msgid "Unrecognized address type %s."
+msgstr "Non se recoñeceu o tipo de enderezo %s."
+
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
+msgid "That address has already been confirmed."
+msgstr "Ese enderezo xa se confirmou."
+
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
+msgid "Couldn't update user."
+msgstr "Non se puido actualizar o usuario."
+
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr "Non se puido borrar a confirmación por correo electrónico."
+
+#: actions/confirmaddress.php:146
+msgid "Confirm address"
+msgstr "Confirmar o enderezo"
+
+#: actions/confirmaddress.php:161
+#, php-format
+msgid "The address \"%s\" has been confirmed for your account."
+msgstr "Confirmouse o enderezo \"%s\" para a súa conta."
+
+#: actions/conversation.php:99
+msgid "Conversation"
+msgstr "Conversa"
+
+#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
+msgid "Notices"
+msgstr "Notas"
+
+#: actions/deleteapplication.php:63
+msgid "You must be logged in to delete an application."
+msgstr "Ten que iniciar sesión para borrar unha aplicación."
+
+#: actions/deleteapplication.php:71
+msgid "Application not found."
+msgstr "Non se atopou a aplicación."
+
+#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#: actions/showapplication.php:94
+msgid "You are not the owner of this application."
+msgstr "Non é o dono desa aplicación."
+
+#: actions/deleteapplication.php:102 actions/editapplication.php:127
+#: actions/newapplication.php:110 actions/showapplication.php:118
+#: lib/action.php:1263
+msgid "There was a problem with your session token."
+msgstr "Houbo un problema co seu pase."
+
+#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+msgid "Delete application"
+msgstr "Borrar a aplicación"
+
+#: actions/deleteapplication.php:149
+msgid ""
+"Are you sure you want to delete this application? This will clear all data "
+"about the application from the database, including all existing user "
+"connections."
+msgstr ""
+"Está seguro de querer borrar esta aplicación? Se o fai, borrará todos os "
+"datos da aplicación da base de datos, incluídas todas as conexións do "
+"usuario existentes."
+
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
+msgid "Do not delete this application"
+msgstr "Non borrar a aplicación"
+
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
+msgid "Delete this application"
+msgstr "Borrar a aplicación"
+
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
+#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
+#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#: actions/tagother.php:33 actions/unsubscribe.php:52
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
+#: lib/settingsaction.php:72
+msgid "Not logged in."
+msgstr "Non iniciou sesión."
+
+#: actions/deletenotice.php:71
+msgid "Can't delete this notice."
+msgstr "Non se pode borrar esta nota."
+
+#: actions/deletenotice.php:103
+msgid ""
+"You are about to permanently delete a notice. Once this is done, it cannot "
+"be undone."
+msgstr ""
+"Está a piques de borrar unha nota definitivamente. Unha vez feito, non se "
+"poderá recuperar."
+
+#: actions/deletenotice.php:109 actions/deletenotice.php:141
+msgid "Delete notice"
+msgstr "Borrar a nota"
+
+#: actions/deletenotice.php:144
+msgid "Are you sure you want to delete this notice?"
+msgstr "Está seguro de querer borrar esta nota?"
+
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
+msgid "Do not delete this notice"
+msgstr "Non borrar esta nota"
+
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
+msgid "Delete this notice"
+msgstr "Borrar esta nota"
+
+#: actions/deleteuser.php:67
+msgid "You cannot delete users."
+msgstr "Non pode borrar usuarios."
+
+#: actions/deleteuser.php:74
+msgid "You can only delete local users."
+msgstr "Só pode borrar usuarios locais."
+
+#: actions/deleteuser.php:110 actions/deleteuser.php:133
+msgid "Delete user"
+msgstr "Borrar o usuario"
+
+#: actions/deleteuser.php:136
+msgid ""
+"Are you sure you want to delete this user? This will clear all data about "
+"the user from the database, without a backup."
+msgstr ""
+"Está seguro de querer borrar este usuario? Isto borrará todos os datos do "
+"usuario da base de datos, sen posibilidade de recuperalos."
+
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
+msgid "Delete this user"
+msgstr "Borrar o usuario"
+
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
+#: lib/groupnav.php:119
+msgid "Design"
+msgstr "Deseño"
+
+#: actions/designadminpanel.php:74
+msgid "Design settings for this StatusNet site."
+msgstr "Configuración do deseño deste sitio StatusNet."
+
+#: actions/designadminpanel.php:318
+msgid "Invalid logo URL."
+msgstr "URL do logo incorrecto."
+
+#: actions/designadminpanel.php:322
+#, php-format
+msgid "Theme not available: %s."
+msgstr "O tema visual non está dispoñible: %s."
+
+#: actions/designadminpanel.php:426
+msgid "Change logo"
+msgstr "Cambiar o logo"
+
+#: actions/designadminpanel.php:431
+msgid "Site logo"
+msgstr "Logo do sitio"
+
+#: actions/designadminpanel.php:443
+msgid "Change theme"
+msgstr "Cambar o tema visual"
+
+#: actions/designadminpanel.php:460
+msgid "Site theme"
+msgstr "Tema visual do sitio"
+
+#: actions/designadminpanel.php:461
+msgid "Theme for the site."
+msgstr "Tema visual para o sitio."
+
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Tema visual personalizado"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+"Pode cargar como arquivo .ZIP un tema visual personalizado para StatusNet"
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
+msgid "Change background image"
+msgstr "Cambiar a imaxe de fondo"
+
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
+#: lib/designsettings.php:178
+msgid "Background"
+msgstr "Fondo"
+
+#: actions/designadminpanel.php:496
+#, php-format
+msgid ""
+"You can upload a background image for the site. The maximum file size is %1"
+"$s."
+msgstr ""
+"Pode cargar unha imaxe de fondo para o sitio. O tamaño máximo para o "
+"ficheiro é de %1$s."
+
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
+msgid "On"
+msgstr "Activado"
+
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
+msgid "Off"
+msgstr "Desactivado"
+
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
+msgid "Turn background image on or off."
+msgstr "Activar ou desactivar a imaxe de fondo."
+
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
+msgid "Tile background image"
+msgstr "Imaxe de fondo en mosaico"
+
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
+msgid "Change colours"
+msgstr "Cambiar as cores"
+
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
+msgid "Content"
+msgstr "Contido"
+
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
+msgid "Sidebar"
+msgstr "Barra lateral"
+
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
+msgid "Text"
+msgstr "Texto"
+
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
+msgid "Links"
+msgstr "Ligazóns"
+
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avanzado"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalizado"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
+msgid "Use defaults"
+msgstr "Utilizar os valores por defecto"
+
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
+msgid "Restore default designs"
+msgstr "Restaurar o deseño por defecto"
+
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
+msgid "Reset back to default"
+msgstr "Volver ao deseño por defecto"
+
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
+#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
+#: lib/designsettings.php:256 lib/groupeditform.php:202
+msgid "Save"
+msgstr "Gardar"
+
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
+msgid "Save design"
+msgstr "Gardar o deseño"
+
+#: actions/disfavor.php:81
+msgid "This notice is not a favorite!"
+msgstr "Esta nota non é unha das favoritas!"
+
+#: actions/disfavor.php:94
+msgid "Add to favorites"
+msgstr "Engadir aos favoritos"
+
+#: actions/doc.php:158
+#, php-format
+msgid "No such document \"%s\""
+msgstr "Non hai ningún documento \"%s\""
+
+#: actions/editapplication.php:54
+msgid "Edit Application"
+msgstr "Editar a aplicación"
+
+#: actions/editapplication.php:66
+msgid "You must be logged in to edit an application."
+msgstr "Ten que iniciar sesión para editar unha aplicación."
+
+#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
+#: actions/showapplication.php:87
+msgid "No such application."
+msgstr "Non existe esa aplicación."
+
+#: actions/editapplication.php:161
+msgid "Use this form to edit your application."
+msgstr "Utilice este formulario para editar a súa aplicación."
+
+#: actions/editapplication.php:177 actions/newapplication.php:159
+msgid "Name is required."
+msgstr "Fai falla un nome."
+
+#: actions/editapplication.php:180 actions/newapplication.php:165
+msgid "Name is too long (max 255 chars)."
+msgstr "O nome é longo de máis (o límite é de 255 caracteres)."
+
+#: actions/editapplication.php:183 actions/newapplication.php:162
+msgid "Name already in use. Try another one."
+msgstr "O nome xa está en uso. Probe con outro."
+
+#: actions/editapplication.php:186 actions/newapplication.php:168
+msgid "Description is required."
+msgstr "Fai falla unha descrición."
+
+#: actions/editapplication.php:194
+msgid "Source URL is too long."
+msgstr "O URL de orixe é longo de máis."
+
+#: actions/editapplication.php:200 actions/newapplication.php:185
+msgid "Source URL is not valid."
+msgstr "O URL de orixe é incorrecto."
+
+#: actions/editapplication.php:203 actions/newapplication.php:188
+msgid "Organization is required."
+msgstr "Fai falla unha organización."
+
+#: actions/editapplication.php:206 actions/newapplication.php:191
+msgid "Organization is too long (max 255 chars)."
+msgstr "A organización é longa de máis (o límite é de 255 caracteres)."
+
+#: actions/editapplication.php:209 actions/newapplication.php:194
+msgid "Organization homepage is required."
+msgstr "Fai falla unha páxina web da organización."
+
+#: actions/editapplication.php:218 actions/newapplication.php:206
+msgid "Callback is too long."
+msgstr "O retorno de chamada é longo de máis."
+
+#: actions/editapplication.php:225 actions/newapplication.php:215
+msgid "Callback URL is not valid."
+msgstr "O URL do retorno de chamada é incorrecto."
+
+#: actions/editapplication.php:258
+msgid "Could not update application."
+msgstr "Non se puido actualizar a aplicación."
+
+#: actions/editgroup.php:56
+#, php-format
+msgid "Edit %s group"
+msgstr "Editar o grupo %s"
+
+#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
+msgid "You must be logged in to create a group."
+msgstr "Ten que iniciar sesión para crear un grupo."
+
+#: actions/editgroup.php:107 actions/editgroup.php:172
+#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
+msgid "You must be an admin to edit the group."
+msgstr "Ten que ser administrador para editar o grupo."
+
+#: actions/editgroup.php:158
+msgid "Use this form to edit the group."
+msgstr "Utilice este formulario para editar o grupo."
+
+#: actions/editgroup.php:205 actions/newgroup.php:145
+#, php-format
+msgid "description is too long (max %d chars)."
+msgstr "a descrición é longa de máis (o límite é de %d caracteres)."
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Pseudónimo inválido: \"%s\""
+
+#: actions/editgroup.php:258
+msgid "Could not update group."
+msgstr "Non se puido actualizar o grupo."
+
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
+msgid "Could not create aliases."
+msgstr "Non se puideron crear os pseudónimos."
+
+#: actions/editgroup.php:280
+msgid "Options saved."
+msgstr "Gardáronse as preferencias."
+
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
+msgid "Email settings"
+msgstr "Configuración do correo electrónico"
+
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
+#, php-format
+msgid "Manage how you get email from %%site.name%%."
+msgstr "Xestiona a forma en que recibes correo electrónico de %%site.name%%."
+
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Enderezo de correo electrónico"
+
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
+msgid "Current confirmed email address."
+msgstr "Enderezo de correo electrónico confirmado actualmente."
+
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
+msgid "Remove"
+msgstr "Borrar"
+
+#: actions/emailsettings.php:122
+msgid ""
+"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
+"a message with further instructions."
+msgstr ""
+"Agardando pola confirmación deste enderezo. Busque unha mensaxe con máis "
+"instrucións na súa bandexa de entrada (e na de correo non desexado!)."
+
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
+msgid "Email address, like \"UserName@example.org\""
+msgstr "Enderezo de correo electrónico, coma \"nomedeusuario@example.org\""
+
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
+msgid "Add"
+msgstr "Engadir"
+
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
+msgid "Incoming email"
+msgstr "Correo entrante"
+
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
+msgid "Send email to this address to post new notices."
+msgstr ""
+"Enviar un correo electrónico a este enderezo para publicar novas notas."
+
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
+msgid "Make a new email address for posting to; cancels the old one."
+msgstr ""
+"Establece un novo enderezo de correo electrónico no que publicar, e cancela "
+"o vello."
+
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
+msgid "New"
+msgstr "Novo"
+
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferencias de correo electrónico"
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
+msgid "Send me notices of new subscriptions through email."
+msgstr "Enviarme notas acerca de novas subscricións por correo electrónico."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
+msgid "Send me email when someone adds my notice as a favorite."
+msgstr ""
+"Enviádeme un correo electrónico cando alguén marque como favorito algunha "
+"das miñas notas."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
+msgid "Send me email when someone sends me a private message."
+msgstr ""
+"Enviádeme un correo electrónico cando alguén me envíe unha mensaxe privada."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
+msgid "Send me email when someone sends me an \"@-reply\"."
+msgstr "Enviádeme un correo electrónico cando alguén me envíe unha resposta."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
+msgid "Allow friends to nudge me and send me an email."
+msgstr ""
+"Permitirlles aos meus amigos facerme acenos e enviarme correos electrónicos."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
+msgid "I want to post notices by email."
+msgstr "Quero publicar notas por correo electrónico."
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
+msgid "Publish a MicroID for my email address."
+msgstr "Publicar unha MicroID para o meu enderezo de correo electrónico."
+
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Gardáronse as preferencias de correo electrónico."
+
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
+msgid "No email address."
+msgstr "Non hai enderezo de correo electrónico."
+
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
+msgid "Cannot normalize that email address"
+msgstr "Non se pode normalizar ese enderezo de correo electrónico"
+
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
+#: actions/siteadminpanel.php:144
+msgid "Not a valid email address."
+msgstr "O enderezo de correo electrónico é incorrecto."
+
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
+msgid "That is already your email address."
+msgstr "Ese enderezo de correo electrónico é o que ten agora."
+
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
+msgid "That email address already belongs to another user."
+msgstr "Ese enderezo de correo electrónico xa pertence a outro usuario."
+
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
+msgid "Couldn't insert confirmation code."
+msgstr "Non se puido inserir o código de confirmación."
+
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
+msgid ""
+"A confirmation code was sent to the email address you added. Check your "
+"inbox (and spam box!) for the code and instructions on how to use it."
+msgstr ""
+"Enviouse un código de confirmación ao enderezo de correo electrónico que "
+"engadiu. Busque o código e as instrucións para usalo na súa bandexa de "
+"entrada (e na de correo non desexado!)."
+
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
+msgid "No pending confirmation to cancel."
+msgstr "Non hai ningunha confirmación pendente que cancelar."
+
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Ese enderezo de correo electrónico é incorrecto."
+
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Cancelouse a confirmación por correo electrónico."
+
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
+msgid "That is not your email address."
+msgstr "Ese non é o seu enderezo de correo electrónico."
+
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Borrouse o enderezo de correo electrónico."
+
+#: actions/emailsettings.php:493 actions/smssettings.php:568
+msgid "No incoming email address."
+msgstr "Non hai ningún enderezo ao que enviar."
+
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
+msgid "Couldn't update user record."
+msgstr "Non se puido actualizar o rexistro do usuario."
+
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
+msgid "Incoming email address removed."
+msgstr "Borrouse o enderezo de correo electrónico entrante."
+
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
+msgid "New incoming email address added."
+msgstr "Engadiuse un novo enderezo de correo electrónico entrante."
+
+#: actions/favor.php:79
+msgid "This notice is already a favorite!"
+msgstr "A nota xa é unha das súas favoritas!"
+
+#: actions/favor.php:92 lib/disfavorform.php:140
+msgid "Disfavor favorite"
+msgstr "Desmarcar como favorita"
+
+#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: lib/publicgroupnav.php:93
+msgid "Popular notices"
+msgstr "Notas populares"
+
+#: actions/favorited.php:67
+#, php-format
+msgid "Popular notices, page %d"
+msgstr "Notas populares, páxina %d"
+
+#: actions/favorited.php:79
+msgid "The most popular notices on the site right now."
+msgstr "As notas máis populares do sitio nestes intres."
+
+#: actions/favorited.php:150
+msgid "Favorite notices appear on this page but no one has favorited one yet."
+msgstr "As notas favoritas aparecen nesta páxina, pero aínda non hai ningunha."
+
+#: actions/favorited.php:153
+msgid ""
+"Be the first to add a notice to your favorites by clicking the fave button "
+"next to any notice you like."
+msgstr ""
+"Sexa o primeiro en engadir unha nota aos seus favoritos premendo sobre o "
+"botón de favoritos que aparece ao carón de calquera nota que lle guste."
+
+#: actions/favorited.php:156
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to add a "
+"notice to your favorites!"
+msgstr ""
+"Por que non [rexistrar unha conta](%%action.register%%) e ser o primeiro en "
+"engadir unha nota aos seus favoritos?"
+
+#: actions/favoritesrss.php:111 actions/showfavorites.php:77
+#: lib/personalgroupnav.php:115
+#, php-format
+msgid "%s's favorite notices"
+msgstr "Notas favoritas de %s"
+
+#: actions/favoritesrss.php:115
+#, php-format
+msgid "Updates favored by %1$s on %2$s!"
+msgstr "Actualizacións favoritas de %1$s en %2$s!"
+
+#: actions/featured.php:69 lib/featureduserssection.php:87
+#: lib/publicgroupnav.php:89
+msgid "Featured users"
+msgstr "Usuarios do momento"
+
+#: actions/featured.php:71
+#, php-format
+msgid "Featured users, page %d"
+msgstr "Usuarios do momento, páxina %d"
+
+#: actions/featured.php:99
+#, php-format
+msgid "A selection of some great users on %s"
+msgstr "Unha selección dalgúns bos usuarios en %s"
+
+#: actions/file.php:34
+msgid "No notice ID."
+msgstr "A nota non ten ningunha ID."
+
+#: actions/file.php:38
+msgid "No notice."
+msgstr "Non hai ningunha nota."
+
+#: actions/file.php:42
+msgid "No attachments."
+msgstr "Non hai ningún dato adxunto."
+
+#: actions/file.php:51
+msgid "No uploaded attachments."
+msgstr "Non se cargou ningún dato adxunto."
+
+#: actions/finishremotesubscribe.php:69
+msgid "Not expecting this response!"
+msgstr "Non se esperaba esta resposta!"
+
+#: actions/finishremotesubscribe.php:80
+msgid "User being listened to does not exist."
+msgstr "Non existe o usuario ao que está seguindo."
+
+#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
+msgid "You can use the local subscription!"
+msgstr "Pode usar a subscrición local!"
+
+#: actions/finishremotesubscribe.php:99
+msgid "That user has blocked you from subscribing."
+msgstr "Ese usuario bloqueouno fronte á subscrición a el."
+
+#: actions/finishremotesubscribe.php:110
+msgid "You are not authorized."
+msgstr "Non está autorizado."
+
+#: actions/finishremotesubscribe.php:113
+msgid "Could not convert request token to access token."
+msgstr "Non se puido converter a ficha da solicitude nun pase."
+
+#: actions/finishremotesubscribe.php:118
+msgid "Remote service uses unknown version of OMB protocol."
+msgstr "O servizo remoto utiliza unha versión descoñecida do protocolo OMB."
+
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Houbo un erro ao actualizar o perfil remoto."
+
+#: actions/getfile.php:79
+msgid "No such file."
+msgstr "Non existe tal ficheiro."
+
+#: actions/getfile.php:83
+msgid "Cannot read file."
+msgstr "Non se pode ler o ficheiro."
+
+#: actions/grantrole.php:62 actions/revokerole.php:62
+msgid "Invalid role."
+msgstr "Rol incorrecto."
+
+#: actions/grantrole.php:66 actions/revokerole.php:66
+msgid "This role is reserved and cannot be set."
+msgstr "Non se pode establecer este rol, está reservado."
+
+#: actions/grantrole.php:75
+msgid "You cannot grant user roles on this site."
+msgstr "Non pode concederlles roles aos usuarios neste sitio."
+
+#: actions/grantrole.php:82
+msgid "User already has this role."
+msgstr "O usuario xa ten este rol."
+
+#: actions/groupblock.php:71 actions/groupunblock.php:71
+#: actions/makeadmin.php:71 actions/subedit.php:46
+#: lib/profileformaction.php:79
+msgid "No profile specified."
+msgstr "Non se especificou ningún perfil."
+
+#: actions/groupblock.php:76 actions/groupunblock.php:76
+#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+msgid "No profile with that ID."
+msgstr "Ningún perfil ten esa ID."
+
+#: actions/groupblock.php:81 actions/groupunblock.php:81
+#: actions/makeadmin.php:81
+msgid "No group specified."
+msgstr "Non se especificou ningún grupo."
+
+#: actions/groupblock.php:91
+msgid "Only an admin can block group members."
+msgstr "Só os administradores poden excluír a membros do grupo."
+
+#: actions/groupblock.php:95
+msgid "User is already blocked from group."
+msgstr "O usuario xa está excluído do grupo."
+
+#: actions/groupblock.php:100
+msgid "User is not a member of group."
+msgstr "O usuario non pertence ao grupo."
+
+#: actions/groupblock.php:134 actions/groupmembers.php:360
+msgid "Block user from group"
+msgstr "Excluír do grupo ao usuario"
+
+#: actions/groupblock.php:160
+#, php-format
+msgid ""
+"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
+"will be removed from the group, unable to post, and unable to subscribe to "
+"the group in the future."
+msgstr ""
+"Seguro que quere excluír do grupo \"%2$s\" ao usuario \"%1$s\"? Quedará fóra "
+"do grupo, sen a posibilidade de publicar nada nel nin volver subscribirse a "
+"el no futuro."
+
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
+msgid "Do not block this user from this group"
+msgstr "Non excluír deste grupo a este usuario"
+
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
+msgid "Block this user from this group"
+msgstr "Excluír deste grupo a este usuario"
+
+#: actions/groupblock.php:206
+msgid "Database error blocking user from group."
+msgstr "Houbo un erro na base de datos ao excluír do grupo ao usuario."
+
+#: actions/groupbyid.php:74 actions/userbyid.php:70
+msgid "No ID."
+msgstr "Sen ID."
+
+#: actions/groupdesignsettings.php:68
+msgid "You must be logged in to edit a group."
+msgstr "Ten que estar identificado para editar un grupo."
+
+#: actions/groupdesignsettings.php:144
+msgid "Group design"
+msgstr "Deseño do grupo"
+
+#: actions/groupdesignsettings.php:155
+msgid ""
+"Customize the way your group looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+"Personaliza o aspecto do grupo cunha imaxe de fondo e unha paleta de cores "
+"da súa escolla."
+
+#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
+#: lib/designsettings.php:391 lib/designsettings.php:413
+msgid "Couldn't update your design."
+msgstr "Non se puido actualizar o seu deseño."
+
+#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
+msgid "Design preferences saved."
+msgstr "Gardáronse as preferencias de deseño."
+
+#: actions/grouplogo.php:142 actions/grouplogo.php:195
+msgid "Group logo"
+msgstr "Logo do grupo"
+
+#: actions/grouplogo.php:153
+#, php-format
+msgid ""
+"You can upload a logo image for your group. The maximum file size is %s."
+msgstr ""
+"Pode cargar un logo para o seu grupo. O tamaño máximo para o ficheiro é de %"
+"s."
+
+#: actions/grouplogo.php:365
+msgid "Pick a square area of the image to be the logo."
+msgstr "Escolla unha zona cadrada da imaxe para usala como logo."
+
+#: actions/grouplogo.php:399
+msgid "Logo updated."
+msgstr "Actualizouse o logo."
+
+#: actions/grouplogo.php:401
+msgid "Failed updating logo."
+msgstr "Non se puido actualizar o logo."
+
+#: actions/groupmembers.php:100 lib/groupnav.php:92
+#, php-format
+msgid "%s group members"
+msgstr "Membros do grupo %s"
+
+#: actions/groupmembers.php:103
+#, php-format
+msgid "%1$s group members, page %2$d"
+msgstr "Membros do grupo %1$s, páxina %2$d"
+
+#: actions/groupmembers.php:118
+msgid "A list of the users in this group."
+msgstr "Unha lista dos usuarios pertencentes a este grupo."
+
+#: actions/groupmembers.php:182 lib/groupnav.php:107
+msgid "Admin"
+msgstr "Administrador"
+
+#: actions/groupmembers.php:392 lib/blockform.php:69
+msgid "Block"
+msgstr "Excluír"
+
+#: actions/groupmembers.php:487
+msgid "Make user an admin of the group"
+msgstr "Converter ao usuario en administrador do grupo"
+
+#: actions/groupmembers.php:519
+msgid "Make Admin"
+msgstr "Converter en administrador"
+
+#: actions/groupmembers.php:519
+msgid "Make this user an admin"
+msgstr "Converter a este usuario en administrador"
+
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
+#, php-format
+msgid "%s timeline"
+msgstr "Liña do tempo de %s"
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
+#, php-format
+msgid "Updates from members of %1$s on %2$s!"
+msgstr "Actualizacións de membros de %1$s en %2$s!"
+
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
+#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+msgid "Groups"
+msgstr "Grupos"
+
+#: actions/groups.php:64
+#, php-format
+msgid "Groups, page %d"
+msgstr "Grupos, páxina %d"
+
+#: actions/groups.php:90
+#, php-format
+msgid ""
+"%%%%site.name%%%% groups let you find and talk with people of similar "
+"interests. After you join a group you can send messages to all other members "
+"using the syntax \"!groupname\". Don't see a group you like? Try [searching "
+"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
+"%%%%)"
+msgstr ""
+"Os grupos de %%%%site.name%%%% permiten atopar e porse en contacto con "
+"persoas de intereses similares aos seus. Tras unirse a un grupo pode enviar "
+"mensaxes a todos os membros utilizando a sintaxe \"!nomedogrupo\". Non atopa "
+"un grupo que lle guste? Probe a [buscar un](%%%%action.groupsearch%%%%) ou "
+"[crear un pola súa conta!](%%%%action.newgroup%%%%)"
+
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
+msgid "Create a new group"
+msgstr "Crear un grupo novo"
+
+#: actions/groupsearch.php:52
+#, php-format
+msgid ""
+"Search for groups on %%site.name%% by their name, location, or description. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+"Buscar grupos en %%site.name%% por nome, lugar ou descrición. Separe os "
+"termos con espazos en branco. Cada termo ten que estar formado por tres ou "
+"máis caracteres."
+
+#: actions/groupsearch.php:58
+msgid "Group search"
+msgstr "Busca de grupos"
+
+#: actions/groupsearch.php:79 actions/noticesearch.php:117
+#: actions/peoplesearch.php:83
+msgid "No results."
+msgstr "Non houbo resultados."
+
+#: actions/groupsearch.php:82
+#, php-format
+msgid ""
+"If you can't find the group you're looking for, you can [create it](%%action."
+"newgroup%%) yourself."
+msgstr "Se non atopa o grupo que busca, pode [crealo](%%action.newgroup%%)."
+
+#: actions/groupsearch.php:85
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and [create the group](%%"
+"action.newgroup%%) yourself!"
+msgstr ""
+"Por que non [rexistrar unha conta](%%action.register%%) e [crear o grupo](%%"
+"action.newgroup%%)?"
+
+#: actions/groupunblock.php:91
+msgid "Only an admin can unblock group members."
+msgstr "Só os administradores poden readmitir a membros do grupo."
+
+#: actions/groupunblock.php:95
+msgid "User is not blocked from group."
+msgstr "O usuario non está excluído do grupo."
+
+#: actions/groupunblock.php:128 actions/unblock.php:86
+msgid "Error removing the block."
+msgstr "Houbo un erro ao facer efectiva a readmisión."
+
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
+msgid "IM settings"
+msgstr "Configuración da mensaxería instantánea"
+
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
+#, php-format
+msgid ""
+"You can send and receive notices through Jabber/GTalk [instant messages](%%"
+"doc.im%%). Configure your address and settings below."
+msgstr ""
+"Pode enviar e recibir notas mediante [mensaxes instantáneas](%%doc.im%%) de "
+"Jabber/GTalk. Configure a continuación o seu enderezo e preferencias."
+
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
+msgid "IM is not available."
+msgstr "A mensaxería instantánea non está dispoñible."
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Enderezo de mensaxería instantánea"
+
+#: actions/imsettings.php:113
+msgid "Current confirmed Jabber/GTalk address."
+msgstr "Enderezo de Jabber/GTalk confirmado actualmente."
+
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
+#, php-format
+msgid ""
+"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
+"message with further instructions. (Did you add %s to your buddy list?)"
+msgstr ""
+"Agardando pola confirmación deste enderezo. Busque na cúa conta de Jabber/"
+"GTalk unha mensaxe con máis instrucións. (Engadiu a %s á súa lista de "
+"amigos?)"
+
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
+#, php-format
+msgid ""
+"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
+"add %s to your buddy list in your IM client or on GTalk."
+msgstr ""
+"Enderezo de Jabber ou GTalk, coma \"nomedeusuario@example.org\". Asegúrese "
+"primeiro de engadir a %s á súa lista de amigos no seu cliente de mensaxería "
+"instantánea ou en GTalk."
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferencias de mensaxería instantánea"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
+msgid "Send me notices through Jabber/GTalk."
+msgstr "Enviádeme as notas mediante Jabber ou GTalk."
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
+msgid "Post a notice when my Jabber/GTalk status changes."
+msgstr "Publicar unha nota cando cambie o meu estado en Jabber ou GTalk."
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
+msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
+msgstr ""
+"Enviádeme as respostas mediante Jabber ou GTalk da xente á que non estou "
+"subscrita."
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
+msgid "Publish a MicroID for my Jabber/GTalk address."
+msgstr "Publicar unha MicroID para o meu enderezo de Jabber ou GTalk."
+
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Gardáronse as preferencias."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
+msgid "No Jabber ID."
+msgstr "Non existe ningunha ID de Jabber."
+
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
+msgid "Cannot normalize that Jabber ID"
+msgstr "Non se pode normalizar esa ID de Jabber"
+
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
+msgid "Not a valid Jabber ID"
+msgstr "A ID de Jabber non é correcta"
+
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
+msgid "That is already your Jabber ID."
+msgstr "Esa xa é a súa ID de Jabber."
+
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
+msgid "Jabber ID already belongs to another user."
+msgstr "Esa ID de Jabber xa corresponde a un usuario."
+
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
+#, php-format
+msgid ""
+"A confirmation code was sent to the IM address you added. You must approve %"
+"s for sending messages to you."
+msgstr ""
+"Enviouse un código de confirmación ao enderezo de mensaxería instantánea que "
+"engadiu. Ten que aprobar que %s lle envíe mensaxes."
+
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Ese enderezo de mensaxería instantánea é incorrecto."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Non se puido borrar a confirmación por mensaxería instantánea."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Cancelouse a confirmación por mensaxería instantánea."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
+msgid "That is not your Jabber ID."
+msgstr "Esa ID de Jabber non é súa."
+
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Borrouse o enderezo de mensaxería instantánea."
+
+#: actions/inbox.php:59
+#, php-format
+msgid "Inbox for %1$s - page %2$d"
+msgstr "Caixa de entrada de %1$s - páxina %2$d"
+
+#: actions/inbox.php:62
+#, php-format
+msgid "Inbox for %s"
+msgstr "Caixa de entrada de %s"
+
+#: actions/inbox.php:115
+msgid "This is your inbox, which lists your incoming private messages."
+msgstr ""
+"Esta é a súa caixa de correo, onde se listan as mensaxes privadas recibidas."
+
+#: actions/invite.php:39
+msgid "Invites have been disabled."
+msgstr "As invitacións están desactivadas."
+
+#: actions/invite.php:41
+#, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Ten que identificarse para invitar a outros a usar %s."
+
+#: actions/invite.php:72
+#, php-format
+msgid "Invalid email address: %s"
+msgstr "Enderezo de correo electrónico incorrecto: %s"
+
+#: actions/invite.php:110
+msgid "Invitation(s) sent"
+msgstr "Enviáronse as invitacións"
+
+#: actions/invite.php:112
+msgid "Invite new users"
+msgstr "Invitar a novos usuarios"
+
+#: actions/invite.php:128
+msgid "You are already subscribed to these users:"
+msgstr "Xa está subscrito aos seguintes usuarios:"
+
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
+#, php-format
+msgid "%1$s (%2$s)"
+msgstr "%1$s (%2$s)"
+
+#: actions/invite.php:136
+msgid ""
+"These people are already users and you were automatically subscribed to them:"
+msgstr ""
+"Estas persoas xa son usuarios e subscribíuselle automaticamente a elas:"
+
+#: actions/invite.php:144
+msgid "Invitation(s) sent to the following people:"
+msgstr "Enviáronse invitacións ás seguintes persoas:"
+
+#: actions/invite.php:150
+msgid ""
+"You will be notified when your invitees accept the invitation and register "
+"on the site. Thanks for growing the community!"
+msgstr ""
+"Notificaráselle cando os seus convidados acepten a invitación e se rexistren "
+"no sitio. Grazas por ampliar a comunidade!"
+
+#: actions/invite.php:162
+msgid ""
+"Use this form to invite your friends and colleagues to use this service."
+msgstr ""
+"Utilice o seguinte formulario para invitar aos seus amigos e compañeiros a "
+"utilizar este servizo."
+
+#: actions/invite.php:187
+msgid "Email addresses"
+msgstr "Enderezos de correo electrónico"
+
+#: actions/invite.php:189
+msgid "Addresses of friends to invite (one per line)"
+msgstr "Enderezos de amigos aos que invitar (un por liña)"
+
+#: actions/invite.php:192
+msgid "Personal message"
+msgstr "Mensaxe persoal"
+
+#: actions/invite.php:194
+msgid "Optionally add a personal message to the invitation."
+msgstr "Engadir opcionalmente unha mensaxe persoal á invitación."
+
+#. TRANS: Send button for inviting friends
+#: actions/invite.php:198
+msgctxt "BUTTON"
+msgid "Send"
+msgstr "Enviar"
+
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
+#, php-format
+msgid "%1$s has invited you to join them on %2$s"
+msgstr "%1$s convidouno a unirse a el en %2$s"
+
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
+#, php-format
+msgid ""
+"%1$s has invited you to join them on %2$s (%3$s).\n"
+"\n"
+"%2$s is a micro-blogging service that lets you keep up-to-date with people "
+"you know and people who interest you.\n"
+"\n"
+"You can also share news about yourself, your thoughts, or your life online "
+"with people who know about you. It's also great for meeting new people who "
+"share your interests.\n"
+"\n"
+"%1$s said:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see %1$s's profile page on %2$s here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"If you'd like to try the service, click on the link below to accept the "
+"invitation.\n"
+"\n"
+"%6$s\n"
+"\n"
+"If not, you can ignore this message. Thanks for your patience and your "
+"time.\n"
+"\n"
+"Sincerely, %2$s\n"
+msgstr ""
+"%1$s convidouno a unirse a el en %2$s (%3$s).\n"
+"\n"
+"%2$s é un servizo de mensaxes de blogue curtas que lle permite estar ao día "
+"coas persoas que coñece e coas que lle interesen.\n"
+"\n"
+"Tamén pode compartir novas persoais, pensamentos ou a súa vida en liña con "
+"outros coñecidos. Tamén está moi ben para coñecer xente con intereses "
+"similares aos seus.\n"
+"\n"
+"%1$s dixo:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Pode ver a páxina do perfil de %1$s en %2$s aquí:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Se quere probar o servizo, prema na seguinte ligazón para aceptar a "
+"invitación.\n"
+"\n"
+"%6$s\n"
+"\n"
+"Se non, pode ignorar esta mensaxe. Grazas polo seu tempo.\n"
+"\n"
+"Cordialmente, %2$s\n"
+
+#: actions/joingroup.php:60
+msgid "You must be logged in to join a group."
+msgstr "Ten que identificarse para unirse a un grupo."
+
+#: actions/joingroup.php:88 actions/leavegroup.php:88
+msgid "No nickname or ID."
+msgstr "Nin alcume nin ID."
+
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
+#, php-format
+msgid "%1$s joined group %2$s"
+msgstr "%1$s uniuse ao grupo %2$s"
+
+#: actions/leavegroup.php:60
+msgid "You must be logged in to leave a group."
+msgstr "Ten que identificarse para deixar un grupo."
+
+#: actions/leavegroup.php:100 lib/command.php:373
+msgid "You are not a member of that group."
+msgstr "Non pertence a ese grupo."
+
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
+msgid "%1$s left group %2$s"
+msgstr "%1$s deixou o grupo %2$s"
+
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
+msgid "Already logged in."
+msgstr "Xa se identificou."
+
+#: actions/login.php:148
+msgid "Incorrect username or password."
+msgstr "Nome de usuario ou contrasinal incorrectos."
+
+#: actions/login.php:154 actions/otp.php:120
+msgid "Error setting user. You are probably not authorized."
+msgstr ""
+"Houbo un erro ao configurar o usuario. Probablemente non estea autorizado "
+"para facelo."
+
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
+msgid "Login"
+msgstr "Identificarse"
+
+#: actions/login.php:249
+msgid "Login to site"
+msgstr "Identificarse no sitio"
+
+#: actions/login.php:258 actions/register.php:485
+msgid "Remember me"
+msgstr "Lembrádeme"
+
+#: actions/login.php:259 actions/register.php:487
+msgid "Automatically login in the future; not for shared computers!"
+msgstr ""
+"Identificarse automaticamente no futuro. Non se aconsella en computadoras "
+"compartidas!"
+
+#: actions/login.php:269
+msgid "Lost or forgotten password?"
+msgstr "Esqueceu ou perdeu o contrasinal?"
+
+#: actions/login.php:288
+msgid ""
+"For security reasons, please re-enter your user name and password before "
+"changing your settings."
+msgstr ""
+"Por razóns de seguridade, volva introducir o seu nome de usuario e "
+"contrasinal antes de cambiar a súa configuración."
+
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Identifíquese co seu nome de usuario e contrasinal."
+
+#: actions/login.php:295
+#, php-format
+msgid ""
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr ""
+"Aínda non ten un nome de usuario? [Rexistre](%%action.register%%) unha conta "
+"nova."
+
+#: actions/makeadmin.php:92
+msgid "Only an admin can make another user an admin."
+msgstr ""
+"Só os administradores poden converter a outros usuarios en administradores."
+
+#: actions/makeadmin.php:96
+#, php-format
+msgid "%1$s is already an admin for group \"%2$s\"."
+msgstr "%1$s xa é administrador do grupo \"%2$s\"."
+
+#: actions/makeadmin.php:133
+#, php-format
+msgid "Can't get membership record for %1$s in group %2$s."
+msgstr "Non se puido obter o rexistro de pertenza de %1$s ao grupo %2$s."
+
+#: actions/makeadmin.php:146
+#, php-format
+msgid "Can't make %1$s an admin for group %2$s."
+msgstr "Non se pode converter a %1$s en administrador do grupo %2$s."
+
+#: actions/microsummary.php:69
+msgid "No current status."
+msgstr "Sen estado actual."
+
+#: actions/newapplication.php:52
+msgid "New Application"
+msgstr "Aplicación nova"
+
+#: actions/newapplication.php:64
+msgid "You must be logged in to register an application."
+msgstr "Ten que identificarse para rexistrar unha aplicación."
+
+#: actions/newapplication.php:143
+msgid "Use this form to register a new application."
+msgstr "Utilice o seguinte formulario para rexistrar unha aplicación nova."
+
+#: actions/newapplication.php:176
+msgid "Source URL is required."
+msgstr "Necesítase o URL de orixe."
+
+#: actions/newapplication.php:258 actions/newapplication.php:267
+msgid "Could not create application."
+msgstr "Non se puido crear a aplicación."
+
+#: actions/newgroup.php:53
+msgid "New group"
+msgstr "Novo grupo"
+
+#: actions/newgroup.php:110
+msgid "Use this form to create a new group."
+msgstr "Utilice o seguinte formulario para crear un novo grupo."
+
+#: actions/newmessage.php:71 actions/newmessage.php:231
+msgid "New message"
+msgstr "Mensaxe nova"
+
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
+msgid "You can't send a message to this user."
+msgstr "Non pode enviarlle unha mensaxe a este usuario."
+
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
+msgid "No content!"
+msgstr "Non hai contido ningún!"
+
+#: actions/newmessage.php:158
+msgid "No recipient specified."
+msgstr "Non se especificou ningún destinatario."
+
+#: actions/newmessage.php:164 lib/command.php:484
+msgid ""
+"Don't send a message to yourself; just say it to yourself quietly instead."
+msgstr "Non se envíe unha mensaxe, limítese a pensar nela."
+
+#: actions/newmessage.php:181
+msgid "Message sent"
+msgstr "Enviouse a mensaxe"
+
+#: actions/newmessage.php:185
+#, php-format
+msgid "Direct message to %s sent."
+msgstr "Enviouse a mensaxe directa a %s."
+
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
+msgid "Ajax Error"
+msgstr "Houbo un erro de AJAX"
+
+#: actions/newnotice.php:69
+msgid "New notice"
+msgstr "Nova nota"
+
+#: actions/newnotice.php:217
+msgid "Notice posted"
+msgstr "Publicouse a nota"
+
+#: actions/noticesearch.php:68
+#, php-format
+msgid ""
+"Search for notices on %%site.name%% by their contents. Separate search terms "
+"by spaces; they must be 3 characters or more."
+msgstr ""
+"Buscar notas en %%site.name%% polo seu contido. Separe os termos de busca "
+"con espazos en branco. Teñen que ter tres ou máis caracteres."
+
+#: actions/noticesearch.php:78
+msgid "Text search"
+msgstr "Busca de texto"
+
+#: actions/noticesearch.php:91
+#, php-format
+msgid "Search results for \"%1$s\" on %2$s"
+msgstr "Resultados da busca de \"%1$s\" en %2$s"
+
+#: actions/noticesearch.php:121
+#, php-format
+msgid ""
+"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
+msgstr ""
+"Sexa o primeiro en [publicar sobre este tema](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
+
+#: actions/noticesearch.php:124
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and be the first to "
+"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
+msgstr ""
+"Por que non [rexistrar unha conta](%%%%action.register%%%%) e ser o primeiro "
+"en [publicar sobre este tema](%%%%action.newnotice%%%%?status_textarea=%s)?"
+
+#: actions/noticesearchrss.php:96
+#, php-format
+msgid "Updates with \"%s\""
+msgstr "Actualizacións con \"%s\""
+
+#: actions/noticesearchrss.php:98
+#, php-format
+msgid "Updates matching search term \"%1$s\" on %2$s!"
+msgstr "Actualizacións que conteñen o termo \"%1$s\" en %2$s!"
+
+#: actions/nudge.php:85
+msgid ""
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+msgstr ""
+"Este usuario non permite acenos ou aínda non confirmou ou configurou o seu "
+"enderezo de correo electrónico."
+
+#: actions/nudge.php:94
+msgid "Nudge sent"
+msgstr "Enviouse o aceno"
+
+#: actions/nudge.php:97
+msgid "Nudge sent!"
+msgstr "Enviouse o aceno!"
+
+#: actions/oauthappssettings.php:59
+msgid "You must be logged in to list your applications."
+msgstr "Ten que identificarse para listar as súas aplicacións."
+
+#: actions/oauthappssettings.php:74
+msgid "OAuth applications"
+msgstr "Aplicacións de OAuth"
+
+#: actions/oauthappssettings.php:85
+msgid "Applications you have registered"
+msgstr "Aplicacións que rexistrou"
+
+#: actions/oauthappssettings.php:135
+#, php-format
+msgid "You have not registered any applications yet."
+msgstr "Aínda non rexistrou ningunha aplicación."
+
+#: actions/oauthconnectionssettings.php:72
+msgid "Connected applications"
+msgstr "Aplicacións conectadas"
+
+#: actions/oauthconnectionssettings.php:83
+msgid "You have allowed the following applications to access you account."
+msgstr "Permitiulle o acceso á súa conta ás seguintes aplicacións."
+
+#: actions/oauthconnectionssettings.php:175
+msgid "You are not a user of that application."
+msgstr "Non é usuario desa aplicación."
+
+#: actions/oauthconnectionssettings.php:186
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Non se puido revogar o acceso da aplicación: %s."
+
+#: actions/oauthconnectionssettings.php:198
+msgid "You have not authorized any applications to use your account."
+msgstr "Non autorizou o acceso á súa conta para ningunha aplicación."
+
+#: actions/oauthconnectionssettings.php:211
+msgid "Developers can edit the registration settings for their applications "
+msgstr ""
+"Os desenvolvedores poden editar a configuración de rexistro das súas "
+"aplicacións "
+
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Non hai perfil para a nota."
+
+#: actions/oembed.php:87 actions/shownotice.php:175
+#, php-format
+msgid "%1$s's status on %2$s"
+msgstr "Estado de %1$s en %2$s"
+
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Non se soporta o tipo de contido %s."
+
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Só %s enderezos URL sobre HTTP simple."
+
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
+msgid "Not a supported data format."
+msgstr "Non se soporta ese formato de datos."
+
+#: actions/opensearch.php:64
+msgid "People Search"
+msgstr "Busca de xente"
+
+#: actions/opensearch.php:67
+msgid "Notice Search"
+msgstr "Busca de notas"
+
+#: actions/othersettings.php:60
+msgid "Other settings"
+msgstr "Outras opcións"
+
+#: actions/othersettings.php:71
+msgid "Manage various other options."
+msgstr "Configure outras tantas opcións."
+
+#: actions/othersettings.php:108
+msgid " (free service)"
+msgstr " (servizo gratuíto)"
+
+#: actions/othersettings.php:116
+msgid "Shorten URLs with"
+msgstr "Abreviar os enderezos URL con"
+
+#: actions/othersettings.php:117
+msgid "Automatic shortening service to use."
+msgstr "Servizo de abreviación automática a usar."
+
+#: actions/othersettings.php:122
+msgid "View profile designs"
+msgstr "Deseños visuais do perfil"
+
+#: actions/othersettings.php:123
+msgid "Show or hide profile designs."
+msgstr "Amosar ou agochar os deseños do perfil."
+
+#: actions/othersettings.php:153
+msgid "URL shortening service is too long (max 50 chars)."
+msgstr ""
+"O servizo de abreviación de enderezos URL é longo de máis (o límite está en "
+"50 caracteres)."
+
+#: actions/otp.php:69
+msgid "No user ID specified."
+msgstr "Non se especificou ningunha ID de usuario."
+
+#: actions/otp.php:83
+msgid "No login token specified."
+msgstr "Non se especificou ningún pase."
+
+#: actions/otp.php:90
+msgid "No login token requested."
+msgstr "Non se solicitou ningún pase."
+
+#: actions/otp.php:95
+msgid "Invalid login token specified."
+msgstr "O pase especificado é incorrecto."
+
+#: actions/otp.php:104
+msgid "Login token expired."
+msgstr "O pase caducou."
+
+#: actions/outbox.php:58
+#, php-format
+msgid "Outbox for %1$s - page %2$d"
+msgstr "Caixa de saída de %1$s - páxina %2$d"
+
+#: actions/outbox.php:61
+#, php-format
+msgid "Outbox for %s"
+msgstr "Caixa de saída de %s"
+
+#: actions/outbox.php:116
+msgid "This is your outbox, which lists private messages you have sent."
+msgstr ""
+"Esta é a súa caixa de saída. Nela lístanse as mensaxes privadas que enviou."
+
+#: actions/passwordsettings.php:58
+msgid "Change password"
+msgstr "Cambiar o contrasinal"
+
+#: actions/passwordsettings.php:69
+msgid "Change your password."
+msgstr "Cambiar o seu contrasinal."
+
+#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+msgid "Password change"
+msgstr "Cambio de contrasinal"
+
+#: actions/passwordsettings.php:104
+msgid "Old password"
+msgstr "Contrasinal anterior"
+
+#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+msgid "New password"
+msgstr "Novo contrasinal"
+
+#: actions/passwordsettings.php:109
+msgid "6 or more characters"
+msgstr "Seis ou máis caracteres"
+
+#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
+#: actions/register.php:440
+msgid "Confirm"
+msgstr "Confirmar"
+
+#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
+msgid "Same as password above"
+msgstr "Igual ao contrasinal anterior"
+
+#: actions/passwordsettings.php:117
+msgid "Change"
+msgstr "Cambiar"
+
+#: actions/passwordsettings.php:154 actions/register.php:237
+msgid "Password must be 6 or more characters."
+msgstr "O contrasinal debe conter seis ou máis caracteres."
+
+#: actions/passwordsettings.php:157 actions/register.php:240
+msgid "Passwords don't match."
+msgstr "Os contrasinais non coinciden."
+
+#: actions/passwordsettings.php:165
+msgid "Incorrect old password"
+msgstr "O contrasinal anterior non é correcto"
+
+#: actions/passwordsettings.php:181
+msgid "Error saving user; invalid."
+msgstr "Houbo un erro ao gardar o usuario. Incorrecto."
+
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
+msgid "Can't save new password."
+msgstr "Non se puido gardar o novo contrasinal."
+
+#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+msgid "Password saved."
+msgstr "Gardouse o contrasinal."
+
+#. TRANS: Menu item for site administration
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
+msgid "Paths"
+msgstr "Rutas"
+
+#: actions/pathsadminpanel.php:70
+msgid "Path and server settings for this StatusNet site."
+msgstr "Configuración do servidor e das rutas para este sitio StatusNet."
+
+#: actions/pathsadminpanel.php:157
+#, php-format
+msgid "Theme directory not readable: %s."
+msgstr "Non se pode ler o directorio de temas visuais: %s."
+
+#: actions/pathsadminpanel.php:163
+#, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Non se pode escribir no directorio de avatares: %s."
+
+#: actions/pathsadminpanel.php:169
+#, php-format
+msgid "Background directory not writable: %s."
+msgstr "Non se pode escribir no directorio de fondos: %s."
+
+#: actions/pathsadminpanel.php:177
+#, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Non se pode ler o directorio de traducións: %s."
+
+#: actions/pathsadminpanel.php:183
+msgid "Invalid SSL server. The maximum length is 255 characters."
+msgstr "Servidor SSL incorrecto. O tamaño máximo é de 255 caracteres."
+
+#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+msgid "Site"
+msgstr "Sitio"
+
+#: actions/pathsadminpanel.php:238
+msgid "Server"
+msgstr "Servidor"
+
+#: actions/pathsadminpanel.php:238
+msgid "Site's server hostname."
+msgstr "Nome do servidor do sitio."
+
+#: actions/pathsadminpanel.php:242
+msgid "Path"
+msgstr "Ruta"
+
+#: actions/pathsadminpanel.php:242
+msgid "Site path"
+msgstr "Ruta do sitio"
+
+#: actions/pathsadminpanel.php:246
+msgid "Path to locales"
+msgstr "Ruta das traducións"
+
+#: actions/pathsadminpanel.php:246
+msgid "Directory path to locales"
+msgstr "Ruta do directorio das traducións"
+
+#: actions/pathsadminpanel.php:250
+msgid "Fancy URLs"
+msgstr "Enderezos URL elegantes"
+
+#: actions/pathsadminpanel.php:252
+msgid "Use fancy (more readable and memorable) URLs?"
+msgstr "Quere utilizar os enderezos URL elegantes (mellores de ler e lembrar)?"
+
+#: actions/pathsadminpanel.php:259
+msgid "Theme"
+msgstr "Tema visual"
+
+#: actions/pathsadminpanel.php:264
+msgid "Theme server"
+msgstr "Servidor de temas visuais"
+
+#: actions/pathsadminpanel.php:268
+msgid "Theme path"
+msgstr "Ruta do tema visual"
+
+#: actions/pathsadminpanel.php:272
+msgid "Theme directory"
+msgstr "Directorio de temas visuais"
+
+#: actions/pathsadminpanel.php:279
+msgid "Avatars"
+msgstr "Avatares"
+
+#: actions/pathsadminpanel.php:284
+msgid "Avatar server"
+msgstr "Servidor de avatares"
+
+#: actions/pathsadminpanel.php:288
+msgid "Avatar path"
+msgstr "Ruta do avatar"
+
+#: actions/pathsadminpanel.php:292
+msgid "Avatar directory"
+msgstr "Directorio de avatares"
+
+#: actions/pathsadminpanel.php:301
+msgid "Backgrounds"
+msgstr "Fondos"
+
+#: actions/pathsadminpanel.php:305
+msgid "Background server"
+msgstr "Servidor de fondos"
+
+#: actions/pathsadminpanel.php:309
+msgid "Background path"
+msgstr "Ruta do fondo"
+
+#: actions/pathsadminpanel.php:313
+msgid "Background directory"
+msgstr "Directorio de fondos"
+
+#: actions/pathsadminpanel.php:320
+msgid "SSL"
+msgstr "SSL"
+
+#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+msgid "Never"
+msgstr "Nunca"
+
+#: actions/pathsadminpanel.php:324
+msgid "Sometimes"
+msgstr "Ãs veces"
+
+#: actions/pathsadminpanel.php:325
+msgid "Always"
+msgstr "Sempre"
+
+#: actions/pathsadminpanel.php:329
+msgid "Use SSL"
+msgstr "Utilizar SSL"
+
+#: actions/pathsadminpanel.php:330
+msgid "When to use SSL"
+msgstr "Cando utilizar SSL"
+
+#: actions/pathsadminpanel.php:335
+msgid "SSL server"
+msgstr "Servidor SSL"
+
+#: actions/pathsadminpanel.php:336
+msgid "Server to direct SSL requests to"
+msgstr "Servidor ao que dirixir as solicitudes SSL"
+
+#: actions/pathsadminpanel.php:352
+msgid "Save paths"
+msgstr "Gardar as rutas"
+
+#: actions/peoplesearch.php:52
+#, php-format
+msgid ""
+"Search for people on %%site.name%% by their name, location, or interests. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+"Buscar xente en %%site.name%% por nome, lugar ou intereses. Separe os termos "
+"con espazos en branco. Teñen que ter tres ou máis caracteres."
+
+#: actions/peoplesearch.php:58
+msgid "People search"
+msgstr "Busca de xente"
+
+#: actions/peopletag.php:68
+#, php-format
+msgid "Not a valid people tag: %s."
+msgstr "A etiqueta de persoa non é correcta: %s."
+
+#: actions/peopletag.php:142
+#, php-format
+msgid "Users self-tagged with %1$s - page %2$d"
+msgstr "Usuarios etiquetados por si mesmos con %1$s - páxina %2$d"
+
+#: actions/postnotice.php:95
+msgid "Invalid notice content."
+msgstr "O contido da nota é incorrecto."
+
+#: actions/postnotice.php:101
+#, php-format
+msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+"A licenza \"%1$s\" da nota non é compatible coa licenza \"%2$s\" do sitio."
+
+#: actions/profilesettings.php:60
+msgid "Profile settings"
+msgstr "Configuración do perfil"
+
+#: actions/profilesettings.php:71
+msgid ""
+"You can update your personal profile info here so people know more about you."
+msgstr ""
+"Pode actualizar a información do seu perfil persoal para que a xente o "
+"coñeza mellor."
+
+#: actions/profilesettings.php:99
+msgid "Profile information"
+msgstr "Información do perfil"
+
+#: actions/profilesettings.php:108 lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr ""
+"Entre 1 e 64 letras minúsculas ou números, sen signos de puntuación, "
+"espazos, tiles ou eñes"
+
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
+msgid "Full name"
+msgstr "Nome completo"
+
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
+msgid "Homepage"
+msgstr "Páxina persoal"
+
+#: actions/profilesettings.php:117 actions/register.php:462
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr "URL da súa páxina persoal, blogue ou perfil noutro sitio"
+
+#: actions/profilesettings.php:122 actions/register.php:468
+#, php-format
+msgid "Describe yourself and your interests in %d chars"
+msgstr "Descríbase a vostede e mailos seus intereses en %d caracteres"
+
+#: actions/profilesettings.php:125 actions/register.php:471
+msgid "Describe yourself and your interests"
+msgstr "Descríbase a vostede e mailos seus intereses"
+
+#: actions/profilesettings.php:127 actions/register.php:473
+msgid "Bio"
+msgstr "Biografía"
+
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:177
+#: lib/userprofile.php:165
+msgid "Location"
+msgstr "Lugar"
+
+#: actions/profilesettings.php:134 actions/register.php:480
+msgid "Where you are, like \"City, State (or Region), Country\""
+msgstr "Onde está a vivir, coma “localidade, provincia (ou comunidade), paísâ€"
+
+#: actions/profilesettings.php:138
+msgid "Share my current location when posting notices"
+msgstr "Compartir o lugar onde vivo ao publicar notas"
+
+#: actions/profilesettings.php:145 actions/tagother.php:149
+#: actions/tagother.php:209 lib/subscriptionlist.php:106
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+msgid "Tags"
+msgstr "Etiquetas"
+
+#: actions/profilesettings.php:147
+msgid ""
+"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
+msgstr ""
+"Etiquetas para vostede (letras salvo eñes e tiles, números, puntos, guións e "
+"guións baixos), separados por comas ou espazos"
+
+#: actions/profilesettings.php:151
+msgid "Language"
+msgstr "Lingua"
+
+#: actions/profilesettings.php:152
+msgid "Preferred language"
+msgstr "Lingua escollida"
+
+#: actions/profilesettings.php:161
+msgid "Timezone"
+msgstr "Fuso horario"
+
+#: actions/profilesettings.php:162
+msgid "What timezone are you normally in?"
+msgstr "En que fuso horario adoita estar?"
+
+#: actions/profilesettings.php:167
+msgid ""
+"Automatically subscribe to whoever subscribes to me (best for non-humans)"
+msgstr ""
+"Subscribirse automaticamente a quen se subscriba a min (o mellor para os "
+"bots)"
+
+#: actions/profilesettings.php:228 actions/register.php:230
+#, php-format
+msgid "Bio is too long (max %d chars)."
+msgstr "A biografía é longa de máis (o límite son %d caracteres)."
+
+#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+msgid "Timezone not selected."
+msgstr "Non se escolleu ningún fuso horario."
+
+#: actions/profilesettings.php:241
+msgid "Language is too long (max 50 chars)."
+msgstr "A lingua é longa de máis (o límite é de 50 caracteres)."
+
+#: actions/profilesettings.php:253 actions/tagother.php:178
+#, php-format
+msgid "Invalid tag: \"%s\""
+msgstr "Etiqueta incorrecta: \"%s\""
+
+#: actions/profilesettings.php:306
+msgid "Couldn't update user for autosubscribe."
+msgstr "Non se puido actualizar o usuario para subscribirse automaticamente."
+
+#: actions/profilesettings.php:363
+msgid "Couldn't save location prefs."
+msgstr "Non se puideron gardar as preferencias de lugar."
+
+#: actions/profilesettings.php:375
+msgid "Couldn't save profile."
+msgstr "Non se puido gardar o perfil."
+
+#: actions/profilesettings.php:383
+msgid "Couldn't save tags."
+msgstr "Non se puideron gardar as etiquetas."
+
+#. TRANS: Message after successful saving of administrative settings.
+#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
+msgid "Settings saved."
+msgstr "Gardouse a configuración."
+
+#: actions/public.php:83
+#, php-format
+msgid "Beyond the page limit (%s)."
+msgstr "Alén do límite da páxina (%s)."
+
+#: actions/public.php:92
+msgid "Could not retrieve public stream."
+msgstr "Non se puido obter o fluxo público."
+
+#: actions/public.php:130
+#, php-format
+msgid "Public timeline, page %d"
+msgstr "Liña do tempo pública, páxina %d"
+
+#: actions/public.php:132 lib/publicgroupnav.php:79
+msgid "Public timeline"
+msgstr "Liña do tempo pública"
+
+#: actions/public.php:160
+msgid "Public Stream Feed (RSS 1.0)"
+msgstr "Fonte de novas no fluxo público (RSS 1.0)"
+
+#: actions/public.php:164
+msgid "Public Stream Feed (RSS 2.0)"
+msgstr "Fonte de novas no fluxo público (RSS 2.0)"
+
+#: actions/public.php:168
+msgid "Public Stream Feed (Atom)"
+msgstr "Fonte de novas no fluxo público (Atom)"
+
+#: actions/public.php:188
+#, php-format
+msgid ""
+"This is the public timeline for %%site.name%% but no one has posted anything "
+"yet."
+msgstr ""
+"Esta é a liña do tempo pública para %%site.name%% pero ninguén publicou nada "
+"aínda."
+
+#: actions/public.php:191
+msgid "Be the first to post!"
+msgstr "Sexa o primeiro en publicar!"
+
+#: actions/public.php:195
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post!"
+msgstr ""
+"Por que non [rexistrar unha conta](%%action.register%%) e ser o primeiro en "
+"publicar?"
+
+#: actions/public.php:242
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool. [Join now](%%action.register%%) to share notices about yourself with "
+"friends, family, and colleagues! ([Read more](%%doc.help%%))"
+msgstr ""
+"Isto é %%site.name%%, un servizo de [mensaxes de blogue curtas](http://en."
+"wikipedia.org/wiki/Microblogging) (en inglés) baseado na ferramenta de "
+"software libre [StatusNet](http://status.net/). [Únase agora](%%action."
+"register%%) para compartir notas persoais cos amigos, a familia e os "
+"compañeiros! ([Máis información](%%doc.help%%))"
+
+#: actions/public.php:247
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool."
+msgstr ""
+"Isto é %%site.name%%, un servizo de [mensaxes de blogue curtas](http://en."
+"wikipedia.org/wiki/Microblogging) (en inglés) baseado na ferramenta de "
+"software libre [StatusNet](http://status.net/)."
+
+#: actions/publictagcloud.php:57
+msgid "Public tag cloud"
+msgstr "Nube de etiquetas públicas"
+
+#: actions/publictagcloud.php:63
+#, php-format
+msgid "These are most popular recent tags on %s "
+msgstr "Estas son as etiquetas máis populares en %s "
+
+#: actions/publictagcloud.php:69
+#, php-format
+msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
+msgstr "Ninguén publicou aínda ningunha nota cunha [etiqueta](%%doc.tags%%)."
+
+#: actions/publictagcloud.php:72
+msgid "Be the first to post one!"
+msgstr "Sexa o primeiro en publicar unha!"
+
+#: actions/publictagcloud.php:75
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post "
+"one!"
+msgstr ""
+"Por que non [rexistrar unha conta](%%action.register%%) e ser o primeiro en "
+"publicar unha?"
+
+#: actions/publictagcloud.php:134
+msgid "Tag cloud"
+msgstr "Nube de etiquetas"
+
+#: actions/recoverpassword.php:36
+msgid "You are already logged in!"
+msgstr "Xa está identificado!"
+
+#: actions/recoverpassword.php:62
+msgid "No such recovery code."
+msgstr "Ese código de recuperación non existe."
+
+#: actions/recoverpassword.php:66
+msgid "Not a recovery code."
+msgstr "Iso non é un código de recuperación."
+
+#: actions/recoverpassword.php:73
+msgid "Recovery code for unknown user."
+msgstr "Código de recuperación para un usuario descoñecido."
+
+#: actions/recoverpassword.php:86
+msgid "Error with confirmation code."
+msgstr "Houbo un erro co código de confirmación."
+
+#: actions/recoverpassword.php:97
+msgid "This confirmation code is too old. Please start again."
+msgstr "Este código de confirmación é vello de máis. Volva empezar."
+
+#: actions/recoverpassword.php:111
+msgid "Could not update user with confirmed email address."
+msgstr ""
+"Non se puido actualizar o usuario co enderezo de correo electrónico "
+"confirmado."
+
+#: actions/recoverpassword.php:152
+msgid ""
+"If you have forgotten or lost your password, you can get a new one sent to "
+"the email address you have stored in your account."
+msgstr ""
+"Se esqueceu ou perdeu o seu contrasinal, pode solicitar que se lle envíe un "
+"novo ao enderezo de correo electrónico da conta."
+
+#: actions/recoverpassword.php:158
+msgid "You have been identified. Enter a new password below. "
+msgstr "Acaba de identificarse. Introduza un contrasinal novo a continuación. "
+
+#: actions/recoverpassword.php:188
+msgid "Password recovery"
+msgstr "Recuperación do contrasinal"
+
+#: actions/recoverpassword.php:191
+msgid "Nickname or email address"
+msgstr "Alcume ou enderezo de correo electrónico"
+
+#: actions/recoverpassword.php:193
+msgid "Your nickname on this server, or your registered email address."
+msgstr ""
+"O seu alcume neste servidor, ou o enderezo de correo electrónico co que se "
+"rexistrou."
+
+#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
+msgid "Recover"
+msgstr "Recuperar"
+
+#: actions/recoverpassword.php:208
+msgid "Reset password"
+msgstr "Restablecer o contrasinal"
+
+#: actions/recoverpassword.php:209
+msgid "Recover password"
+msgstr "Recuperar o contrasinal"
+
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
+msgid "Password recovery requested"
+msgstr "Solicitouse a recuperación do contrasinal"
+
+#: actions/recoverpassword.php:213
+msgid "Unknown action"
+msgstr "Non se coñece esa acción"
+
+#: actions/recoverpassword.php:236
+msgid "6 or more characters, and don't forget it!"
+msgstr "Seis ou máis caracteres, e non o esqueza!"
+
+#: actions/recoverpassword.php:243
+msgid "Reset"
+msgstr "Restablecer"
+
+#: actions/recoverpassword.php:252
+msgid "Enter a nickname or email address."
+msgstr "Introduza un alcume ou enderezo de correo electrónico."
+
+#: actions/recoverpassword.php:282
+msgid "No user with that email address or username."
+msgstr ""
+"Non hai ningún usuario con ese enderezo de correo electrónico ou alcume."
+
+#: actions/recoverpassword.php:299
+msgid "No registered email address for that user."
+msgstr ""
+"Non se rexistrou ningún enderezo de correo electrónico para ese usuario."
+
+#: actions/recoverpassword.php:313
+msgid "Error saving address confirmation."
+msgstr "Houbo un erro ao gardar a confirmación do enderezo."
+
+#: actions/recoverpassword.php:338
+msgid ""
+"Instructions for recovering your password have been sent to the email "
+"address registered to your account."
+msgstr ""
+"Enviáronse instrucións para a recuperación do seu contrasinal ao enderezo de "
+"correo electrónico rexistrado para a súa conta."
+
+#: actions/recoverpassword.php:357
+msgid "Unexpected password reset."
+msgstr "Restablecemento de contrasinal inesperado."
+
+#: actions/recoverpassword.php:365
+msgid "Password must be 6 chars or more."
+msgstr "O contrasinal debe ter seis ou máis caracteres."
+
+#: actions/recoverpassword.php:369
+msgid "Password and confirmation do not match."
+msgstr "O contrasinal e a confirmación non coinciden."
+
+#: actions/recoverpassword.php:388 actions/register.php:255
+msgid "Error setting user."
+msgstr "Houbo un erro ao configurar o usuario."
+
+#: actions/recoverpassword.php:395
+msgid "New password successfully saved. You are now logged in."
+msgstr "O novo contrasinal gardouse correctamente. Agora está identificado."
+
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+msgid "Sorry, only invited people can register."
+msgstr "Só se pode rexistrar mediante invitación."
+
+#: actions/register.php:99
+msgid "Sorry, invalid invitation code."
+msgstr "O código da invitación é incorrecto."
+
+#: actions/register.php:119
+msgid "Registration successful"
+msgstr "Rexistrouse correctamente"
+
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+msgid "Register"
+msgstr "Rexistrarse"
+
+#: actions/register.php:142
+msgid "Registration not allowed."
+msgstr "Non se permite o rexistro."
+
+#: actions/register.php:205
+msgid "You can't register if you don't agree to the license."
+msgstr "Non pode rexistrarse se non acepta a licenza."
+
+#: actions/register.php:219
+msgid "Email address already exists."
+msgstr "O enderezo de correo electrónico xa existe."
+
+#: actions/register.php:250 actions/register.php:272
+msgid "Invalid username or password."
+msgstr "O nome de usuario ou contrasinal non son correctos."
+
+#: actions/register.php:350
+msgid ""
+"With this form you can create a new account. You can then post notices and "
+"link up to friends and colleagues. "
+msgstr ""
+"Con este formulario pode crear unha conta nova. Entón poderá publicar notas "
+"e porse en contacto con amigos e compañeiros. "
+
+#: actions/register.php:432
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
+msgstr ""
+"Entre 1 e 64 letras minúsculas ou números, sen signos de puntuación, "
+"espazos, tiles ou eñes. Obrigatorio."
+
+#: actions/register.php:437
+msgid "6 or more characters. Required."
+msgstr "6 ou máis caracteres. Obrigatorio."
+
+#: actions/register.php:441
+msgid "Same as password above. Required."
+msgstr "O mesmo contrasinal que o anterior. Obrigatorio."
+
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
+msgid "Email"
+msgstr "Correo electrónico"
+
+#: actions/register.php:446 actions/register.php:450
+msgid "Used only for updates, announcements, and password recovery"
+msgstr ""
+"Só se utiliza para actualizacións, anuncios e recuperación de contrasinais"
+
+#: actions/register.php:457
+msgid "Longer name, preferably your \"real\" name"
+msgstr "Nome longo, preferiblemente o seu nome \"real\""
+
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "Entendo que o contido e os datos de %1$s son privados e confidenciais."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+"Os meus textos e ficheiros están protexidos polos dereitos de autor de %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+"Os meus textos e ficheiros están protexidos polos meus propios dereitos de "
+"autor."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Todos os dereitos reservados."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
+msgid ""
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
+msgstr ""
+"Os meus textos e ficheiros están dispoñibles baixo %s, salvo os seguintes "
+"datos privados: contrasinais, enderezos de correo electrónico e mensaxería "
+"instantánea e números de teléfono."
+
+#: actions/register.php:583
+#, php-format
+msgid ""
+"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
+"want to...\n"
+"\n"
+"* Go to [your profile](%2$s) and post your first message.\n"
+"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send "
+"notices through instant messages.\n"
+"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that "
+"share your interests. \n"
+"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell "
+"others more about you. \n"
+"* Read over the [online docs](%%%%doc.help%%%%) for features you may have "
+"missed. \n"
+"\n"
+"Thanks for signing up and we hope you enjoy using this service."
+msgstr ""
+"Parabéns, %1$s! E benvido a %%%%site.name%%%%. Agora quizais queira...\n"
+"\n"
+"* Ir ao [seu perfil](%2$s) e publicar a súa primeira mensaxe.\n"
+"* Engadir un [enderezo de Jabber ou GTalk](%%%%action.imsettings%%%%) para "
+"poder enviar notas por medio de mensaxes instantáneas.\n"
+"* [Buscar xente](%%%%action.peoplesearch%%%%) que coñeza ou que comparta os "
+"seus intereses. \n"
+"* Actualizar a [configuración do seu perfil](%%%%action.profilesettings%%%%) "
+"para que os outros saiban máis de vostede. \n"
+"* Botar unha ollada á [documentación en liña](%%%%doc.help%%%%) en busca de "
+"funcionalidades que ao mellor non coñecía. \n"
+"\n"
+"Grazas por rexistrarse. Esperamos que goce deste servizo."
+
+#: actions/register.php:607
+msgid ""
+"(You should receive a message by email momentarily, with instructions on how "
+"to confirm your email address.)"
+msgstr ""
+"(Debería recibir unha mensaxe por correo electrónico nuns intres, con "
+"instrucións para a confirmación do seu enderezo de correo electrónico.)"
+
+#: actions/remotesubscribe.php:98
+#, php-format
+msgid ""
+"To subscribe, you can [login](%%action.login%%), or [register](%%action."
+"register%%) a new account. If you already have an account on a [compatible "
+"microblogging site](%%doc.openmublog%%), enter your profile URL below."
+msgstr ""
+"Para subscribirse, pode [identificarse](%%action.login%%) ou [rexistrar](%%"
+"action.register%%) unha conta nova. Se xa ten unha conta nun [sitio de "
+"mensaxes de blogue curtas compatible](%%doc.openmublog%%), introduza a "
+"continuación o URL do seu perfil."
+
+#: actions/remotesubscribe.php:112
+msgid "Remote subscribe"
+msgstr "Subscribirse remotamente"
+
+#: actions/remotesubscribe.php:124
+msgid "Subscribe to a remote user"
+msgstr "Subscribirse a un usuario remoto"
+
+#: actions/remotesubscribe.php:129
+msgid "User nickname"
+msgstr "Alcume do usuario"
+
+#: actions/remotesubscribe.php:130
+msgid "Nickname of the user you want to follow"
+msgstr "Alcume do usuario ao que quere seguir"
+
+#: actions/remotesubscribe.php:133
+msgid "Profile URL"
+msgstr "URL do perfil"
+
+#: actions/remotesubscribe.php:134
+msgid "URL of your profile on another compatible microblogging service"
+msgstr ""
+"URL do seu perfil noutro servizo de mensaxes de blogue curtas compatible"
+
+#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
+#: lib/userprofile.php:406
+msgid "Subscribe"
+msgstr "Subscribirse"
+
+#: actions/remotesubscribe.php:159
+msgid "Invalid profile URL (bad format)"
+msgstr "O enderezo URL do perfil é incorrecto (formato erróneo)"
+
+#: actions/remotesubscribe.php:168
+msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
+msgstr ""
+"Non é un URL de perfil correcto (non hai un documento YADIS ou definiuse un "
+"XRDS incorrecto)."
+
+#: actions/remotesubscribe.php:176
+msgid "That’s a local profile! Login to subscribe."
+msgstr "Ese é un perfil local! Identifíquese para subscribirse."
+
+#: actions/remotesubscribe.php:183
+msgid "Couldn’t get a request token."
+msgstr "Non se puido obter o pase solicitado."
+
+#: actions/repeat.php:57
+msgid "Only logged-in users can repeat notices."
+msgstr "Só os usuarios identificados poden repetir notas."
+
+#: actions/repeat.php:64 actions/repeat.php:71
+msgid "No notice specified."
+msgstr "Non se especificou nota ningunha."
+
+#: actions/repeat.php:76
+msgid "You can't repeat your own notice."
+msgstr "Non pode repetir a súa propia nota."
+
+#: actions/repeat.php:90
+msgid "You already repeated that notice."
+msgstr "Xa repetiu esa nota."
+
+#: actions/repeat.php:114 lib/noticelist.php:675
+msgid "Repeated"
+msgstr "Repetida"
+
+#: actions/repeat.php:119
+msgid "Repeated!"
+msgstr "Repetida!"
+
+#: actions/replies.php:126 actions/repliesrss.php:68
+#: lib/personalgroupnav.php:105
+#, php-format
+msgid "Replies to %s"
+msgstr "Respostas a %s"
+
+#: actions/replies.php:128
+#, php-format
+msgid "Replies to %1$s, page %2$d"
+msgstr "Respostas a %1$s, páxina %2$d"
+
+#: actions/replies.php:145
+#, php-format
+msgid "Replies feed for %s (RSS 1.0)"
+msgstr "Fonte de novas coas respostas a %s (RSS 1.0)"
+
+#: actions/replies.php:152
+#, php-format
+msgid "Replies feed for %s (RSS 2.0)"
+msgstr "Fonte de novas coas respostas a %s (RSS 2.0)"
+
+#: actions/replies.php:159
+#, php-format
+msgid "Replies feed for %s (Atom)"
+msgstr "Fonte de novas coas respostas a %s (Atom)"
+
+#: actions/replies.php:199
+#, php-format
+msgid ""
+"This is the timeline showing replies to %1$s but %2$s hasn't received a "
+"notice to them yet."
+msgstr ""
+"Esta é a liña do tempo coas respostas a %1$s, pero a %2$s aínda non lle "
+"mandaron ningunha nota."
+
+#: actions/replies.php:204
+#, php-format
+msgid ""
+"You can engage other users in a conversation, subscribe to more people or "
+"[join groups](%%action.groups%%)."
+msgstr ""
+"Pode conversar con outros usuarios, subscribirse a máis xente ou [unirse a "
+"grupos](%%action.groups%%)."
+
+#: actions/replies.php:206
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+"Pode probar a [facerlle un aceno a %1$s](../%2$s) ou [publicar algo dirixido "
+"a el ou ela](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+
+#: actions/repliesrss.php:72
+#, php-format
+msgid "Replies to %1$s on %2$s!"
+msgstr "Respostas a %1$s en %2$s!"
+
+#: actions/revokerole.php:75
+msgid "You cannot revoke user roles on this site."
+msgstr "Non pode revogar os roles dos usuarios neste sitio."
+
+#: actions/revokerole.php:82
+msgid "User doesn't have this role."
+msgstr "O usuario non ten este rol."
+
+#: actions/rsd.php:146 actions/version.php:159
+msgid "StatusNet"
+msgstr "StatusNet"
+
+#: actions/sandbox.php:65 actions/unsandbox.php:65
+msgid "You cannot sandbox users on this site."
+msgstr "Non pode illar usuarios neste sitio."
+
+#: actions/sandbox.php:72
+msgid "User is already sandboxed."
+msgstr "O usuario xa está illado."
+
+#. TRANS: Menu item for site administration
+#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
+#: lib/adminpanelaction.php:392
+msgid "Sessions"
+msgstr "Sesións"
+
+#: actions/sessionsadminpanel.php:65
+msgid "Session settings for this StatusNet site."
+msgstr "Configuración da sesión para este sitio StatusNet."
+
+#: actions/sessionsadminpanel.php:175
+msgid "Handle sessions"
+msgstr "Manexar as sesións"
+
+#: actions/sessionsadminpanel.php:177
+msgid "Whether to handle sessions ourselves."
+msgstr "Manexar ou non as sesións nós mesmos."
+
+#: actions/sessionsadminpanel.php:181
+msgid "Session debugging"
+msgstr "Depuración da sesión"
+
+#: actions/sessionsadminpanel.php:183
+msgid "Turn on debugging output for sessions."
+msgstr "Activar a saída de depuración para as sesións."
+
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/useradminpanel.php:294
+msgid "Save site settings"
+msgstr "Gardar a configuración do sitio"
+
+#: actions/showapplication.php:82
+msgid "You must be logged in to view an application."
+msgstr "Debe estar identificado para ver unha aplicación."
+
+#: actions/showapplication.php:157
+msgid "Application profile"
+msgstr "Perfil da aplicación"
+
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
+msgid "Icon"
+msgstr "Icona"
+
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
+msgid "Name"
+msgstr "Nome"
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
+msgid "Organization"
+msgstr "Organización"
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
+msgid "Description"
+msgstr "Descrición"
+
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
+msgid "Statistics"
+msgstr "Estatísticas"
+
+#: actions/showapplication.php:203
+#, php-format
+msgid "Created by %1$s - %2$s access by default - %3$d users"
+msgstr "Creado por %1$s - acceso %2$s por defecto - %3$d usuarios"
+
+#: actions/showapplication.php:213
+msgid "Application actions"
+msgstr "Accións da aplicación"
+
+#: actions/showapplication.php:236
+msgid "Reset key & secret"
+msgstr "Restablecer o contrasinal ou a pregunta secreta"
+
+#: actions/showapplication.php:261
+msgid "Application info"
+msgstr "Información da aplicación"
+
+#: actions/showapplication.php:263
+msgid "Consumer key"
+msgstr "Clave do consumidor"
+
+#: actions/showapplication.php:268
+msgid "Consumer secret"
+msgstr "Pregunta secreta do consumidor"
+
+#: actions/showapplication.php:273
+msgid "Request token URL"
+msgstr "Solicitar un URL de pase"
+
+#: actions/showapplication.php:278
+msgid "Access token URL"
+msgstr "Acceder ao URL do pase"
+
+#: actions/showapplication.php:283
+msgid "Authorize URL"
+msgstr "Autorizar o URL"
+
+#: actions/showapplication.php:288
+msgid ""
+"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
+"signature method."
+msgstr ""
+"Nota: sopórtanse as sinaturas HMAC-SHA1. Non se soporta o método de asinado "
+"con texto sinxelo."
+
+#: actions/showapplication.php:309
+msgid "Are you sure you want to reset your consumer key and secret?"
+msgstr ""
+"Seguro que quere restablecer a súa clave e maila súa pregunta secreta de "
+"consumidor?"
+
+#: actions/showfavorites.php:79
+#, php-format
+msgid "%1$s's favorite notices, page %2$d"
+msgstr "Notas favoritas de %1$s, páxina %2$d"
+
+#: actions/showfavorites.php:132
+msgid "Could not retrieve favorite notices."
+msgstr "Non se puideron obter as notas favoritas."
+
+#: actions/showfavorites.php:171
+#, php-format
+msgid "Feed for favorites of %s (RSS 1.0)"
+msgstr "Fonte de novas dos favoritos de %s (RSS 1.0)"
+
+#: actions/showfavorites.php:178
+#, php-format
+msgid "Feed for favorites of %s (RSS 2.0)"
+msgstr "Fonte de novas dos favoritos de %s (RSS 2.0)"
+
+#: actions/showfavorites.php:185
+#, php-format
+msgid "Feed for favorites of %s (Atom)"
+msgstr "Fonte de novas dos favoritos de %s (Atom)"
+
+#: actions/showfavorites.php:206
+msgid ""
+"You haven't chosen any favorite notices yet. Click the fave button on "
+"notices you like to bookmark them for later or shed a spotlight on them."
+msgstr ""
+"Aínda non escolleu ningunha nota favorita. Prema no botón de nota favorita "
+"naquelas notas que lle gusten para marcalas para logo ou para salientalas."
+
+#: actions/showfavorites.php:208
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
+msgstr ""
+"%s aínda non marcou ningunha nota como favorita. Publique algo interesante "
+"que poida querer engadir aos seus favoritos :)"
+
+#: actions/showfavorites.php:212
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
+msgstr ""
+"%s aínda non marcou ningunha nota como favorita. Por que non [rexistrar unha "
+"conta](%%%%action.register%%%%) e publicar algo interesante que puidese "
+"querer engadir aos seus favoritos? :)"
+
+#: actions/showfavorites.php:243
+msgid "This is a way to share what you like."
+msgstr "Isto é un modo de compartir o que lle gusta."
+
+#: actions/showgroup.php:82 lib/groupnav.php:86
+#, php-format
+msgid "%s group"
+msgstr "Grupo %s"
+
+#: actions/showgroup.php:84
+#, php-format
+msgid "%1$s group, page %2$d"
+msgstr "Grupo %1$s, páxina %2$d"
+
+#: actions/showgroup.php:227
+msgid "Group profile"
+msgstr "Perfil do grupo"
+
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
+msgid "URL"
+msgstr "URL"
+
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
+msgid "Note"
+msgstr "Nota"
+
+#: actions/showgroup.php:293 lib/groupeditform.php:184
+msgid "Aliases"
+msgstr "Pseudónimos"
+
+#: actions/showgroup.php:302
+msgid "Group actions"
+msgstr "Accións do grupo"
+
+#: actions/showgroup.php:338
+#, php-format
+msgid "Notice feed for %s group (RSS 1.0)"
+msgstr "Fonte de novas das notas do grupo %s (RSS 1.0)"
+
+#: actions/showgroup.php:344
+#, php-format
+msgid "Notice feed for %s group (RSS 2.0)"
+msgstr "Fonte de novas das notas do grupo %s (RSS 2.0)"
+
+#: actions/showgroup.php:350
+#, php-format
+msgid "Notice feed for %s group (Atom)"
+msgstr "Fonte de novas das notas do grupo %s (Atom)"
+
+#: actions/showgroup.php:355
+#, php-format
+msgid "FOAF for %s group"
+msgstr "Amigo dun amigo para o grupo %s"
+
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
+msgid "Members"
+msgstr "Membros"
+
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
+msgid "(None)"
+msgstr "(Ningún)"
+
+#: actions/showgroup.php:404
+msgid "All members"
+msgstr "Todos os membros"
+
+#: actions/showgroup.php:439
+msgid "Created"
+msgstr "Creado"
+
+#: actions/showgroup.php:455
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. [Join now](%%%%action.register%%%%) to become part "
+"of this group and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+"**%s** é un grupo de usuarios de %%%%site.name%%%%, un servizo de [mensaxes "
+"de blogue curtas](http://en.wikipedia.org/wiki/Microblogging) (en inglés) "
+"baseado na ferramenta de software libre [StatusNet](http://status.net/). Os "
+"seus membros comparten mensaxes curtas sobre as súas vidas e intereses. "
+"[Únase agora](%%%%action.register%%%%) para pasar a formar parte deste grupo "
+"e de moitos máis! ([Máis información](%%%%doc.help%%%%))"
+
+#: actions/showgroup.php:461
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. "
+msgstr ""
+"**%s** é un grupo de usuarios de %%%%site.name%%%%, un servizo de [mensaxes "
+"de blogue curtas](http://en.wikipedia.org/wiki/Microblogging) (en inglés) "
+"baseado na ferramenta de software libre [StatusNet](http://status.net/). Os "
+"seus membros comparten mensaxes curtas sobre as súas vidas e intereses. "
+
+#: actions/showgroup.php:489
+msgid "Admins"
+msgstr "Administradores"
+
+#: actions/showmessage.php:81
+msgid "No such message."
+msgstr "Non se atopou esa mensaxe."
+
+#: actions/showmessage.php:98
+msgid "Only the sender and recipient may read this message."
+msgstr "Esta mensaxe só a poden ler o destinatario e mais o remitente."
+
+#: actions/showmessage.php:108
+#, php-format
+msgid "Message to %1$s on %2$s"
+msgstr "Mensaxe a %1$s en %2$s"
+
+#: actions/showmessage.php:113
+#, php-format
+msgid "Message from %1$s on %2$s"
+msgstr "Mensaxe de %1$s en %2$s"
+
+#: actions/shownotice.php:90
+msgid "Notice deleted."
+msgstr "Borrouse a nota."
+
+#: actions/showstream.php:73
+#, php-format
+msgid " tagged %s"
+msgstr " etiquetouse %s"
+
+#: actions/showstream.php:79
+#, php-format
+msgid "%1$s, page %2$d"
+msgstr "%1$s, páxina %2$d"
+
+#: actions/showstream.php:122
+#, php-format
+msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
+msgstr "Fonte de novas das notas para %1$s etiquetadas con %2$s (RSS 1.0)"
+
+#: actions/showstream.php:129
+#, php-format
+msgid "Notice feed for %s (RSS 1.0)"
+msgstr "Fonte de novas das notas para %s (RSS 1.0)"
+
+#: actions/showstream.php:136
+#, php-format
+msgid "Notice feed for %s (RSS 2.0)"
+msgstr "Fonte de novas das notas para %s (RSS 2.0)"
+
+#: actions/showstream.php:143
+#, php-format
+msgid "Notice feed for %s (Atom)"
+msgstr "Fonte de novas das notas para %s (Atom)"
+
+#: actions/showstream.php:148
+#, php-format
+msgid "FOAF for %s"
+msgstr "Amigo dun amigo para %s"
+
+#: actions/showstream.php:200
+#, php-format
+msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+msgstr "Esta é a liña do tempo para %1$s pero %2$s aínda non publicou nada."
+
+#: actions/showstream.php:205
+msgid ""
+"Seen anything interesting recently? You haven't posted any notices yet, now "
+"would be a good time to start :)"
+msgstr ""
+"Viu algo interesante hoxe? Aínda non publicou ningunha nota, este sería un "
+"bo momento para comezar :)"
+
+#: actions/showstream.php:207
+#, php-format
+msgid ""
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
+msgstr ""
+"Pode probar a facerlle un aceno a %1$s ou [publicar algo dirixido a el ou "
+"ela](%%%%action.newnotice%%%%?status_textarea=%2$s)."
+
+#: actions/showstream.php:243
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
+"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+"**%s** ten unha conta en %%%%site.name%%%%, un servizo de [mensaxes de "
+"blogue curtas](http://en.wikipedia.org/wiki/Microblogging) (en inglés) "
+"baseado na ferramenta de software libre [StatusNet](http://status.net/). "
+"[Únase agora](%%%%action.register%%%%) para seguir as notas de **%s** e de "
+"moita máis xente! ([Máis información](%%%%doc.help%%%%))"
+
+#: actions/showstream.php:248
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. "
+msgstr ""
+"**%s** ten unha conta en %%%%site.name%%%%, un servizo de [mensaxes de "
+"blogue curtas](http://en.wikipedia.org/wiki/Microblogging) (en inglés) "
+"baseado na ferramenta de software libre [StatusNet](http://status.net/). "
+
+#: actions/showstream.php:305
+#, php-format
+msgid "Repeat of %s"
+msgstr "Repeticións de %s"
+
+#: actions/silence.php:65 actions/unsilence.php:65
+msgid "You cannot silence users on this site."
+msgstr "Non pode silenciar usuarios neste sitio."
+
+#: actions/silence.php:72
+msgid "User is already silenced."
+msgstr "O usuario xa está silenciado."
+
+#: actions/siteadminpanel.php:69
+msgid "Basic settings for this StatusNet site"
+msgstr "Configuración básica para este sitio StatusNet"
+
+#: actions/siteadminpanel.php:133
+msgid "Site name must have non-zero length."
+msgstr "O nome do sitio non pode quedar baleiro."
+
+#: actions/siteadminpanel.php:141
+msgid "You must have a valid contact email address."
+msgstr "Ten que ter un enderezo de correo electrónico de contacto correcto."
+
+#: actions/siteadminpanel.php:159
+#, php-format
+msgid "Unknown language \"%s\"."
+msgstr "Non se coñece a lingua \"%s\"."
+
+#: actions/siteadminpanel.php:165
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "O límite mínimo de texto é 0 (ilimitado)."
+
+#: actions/siteadminpanel.php:171
+msgid "Dupe limit must be one or more seconds."
+msgstr "O tempo límite de repetición debe ser de 1 ou máis segundos."
+
+#: actions/siteadminpanel.php:221
+msgid "General"
+msgstr "Xeral"
+
+#: actions/siteadminpanel.php:224
+msgid "Site name"
+msgstr "Nome do sitio"
+
+#: actions/siteadminpanel.php:225
+msgid "The name of your site, like \"Yourcompany Microblog\""
+msgstr ""
+"O nome do seu sitio, como por exemplo \"O sitio de mensaxes de blogue curtas "
+"da miña empresa\""
+
+#: actions/siteadminpanel.php:229
+msgid "Brought by"
+msgstr "Publicado por"
+
+#: actions/siteadminpanel.php:230
+msgid "Text used for credits link in footer of each page"
+msgstr "Texto utilizado para a ligazón aos créditos ao pé de cada páxina"
+
+#: actions/siteadminpanel.php:234
+msgid "Brought by URL"
+msgstr "URL do publicador"
+
+#: actions/siteadminpanel.php:235
+msgid "URL used for credits link in footer of each page"
+msgstr "URL utilizado para a ligazón aos créditos ao pé de cada páxina"
+
+#: actions/siteadminpanel.php:239
+msgid "Contact email address for your site"
+msgstr "Enderezo de correo electrónico de contacto para o seu sitio"
+
+#: actions/siteadminpanel.php:245
+msgid "Local"
+msgstr "Local"
+
+#: actions/siteadminpanel.php:256
+msgid "Default timezone"
+msgstr "Fuso horario por defecto"
+
+#: actions/siteadminpanel.php:257
+msgid "Default timezone for the site; usually UTC."
+msgstr "Fuso horario por defecto para este sitio. Adoita poñerse o UTC."
+
+#: actions/siteadminpanel.php:262
+msgid "Default language"
+msgstr "Lingua por defecto"
+
+#: actions/siteadminpanel.php:263
+msgid "Site language when autodetection from browser settings is not available"
+msgstr ""
+"Lingua do sitio para cando a detección automática a partir do navegador non "
+"sexa posible"
+
+#: actions/siteadminpanel.php:271
+msgid "Limits"
+msgstr "Límites"
+
+#: actions/siteadminpanel.php:274
+msgid "Text limit"
+msgstr "Límite de texto"
+
+#: actions/siteadminpanel.php:274
+msgid "Maximum number of characters for notices."
+msgstr "Número máximo de caracteres para as notas."
+
+#: actions/siteadminpanel.php:278
+msgid "Dupe limit"
+msgstr "Tempo límite de repetición"
+
+#: actions/siteadminpanel.php:278
+msgid "How long users must wait (in seconds) to post the same thing again."
+msgstr ""
+"Tempo (en segundos) que teñen que agardar os usuarios para publicar unha "
+"nota de novo."
+
+#: actions/sitenoticeadminpanel.php:56
+msgid "Site Notice"
+msgstr "Nota do sitio"
+
+#: actions/sitenoticeadminpanel.php:67
+msgid "Edit site-wide message"
+msgstr "Editar a mensaxe global do sitio"
+
+#: actions/sitenoticeadminpanel.php:103
+msgid "Unable to save site notice."
+msgstr "Non se puido gardar a nota do sitio."
+
+#: actions/sitenoticeadminpanel.php:113
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "O tamaño máximo da nota global do sitio é de 255 caracteres."
+
+#: actions/sitenoticeadminpanel.php:176
+msgid "Site notice text"
+msgstr "Texto da nota do sitio"
+
+#: actions/sitenoticeadminpanel.php:178
+msgid "Site-wide notice text (255 chars max; HTML okay)"
+msgstr ""
+"Texto da nota global do sitio (255 caracteres como máximo, pode conter HTML)"
+
+#: actions/sitenoticeadminpanel.php:198
+msgid "Save site notice"
+msgstr "Gardar a nota do sitio"
+
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
+msgid "SMS settings"
+msgstr "Configuración dos SMS"
+
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
+#, php-format
+msgid "You can receive SMS messages through email from %%site.name%%."
+msgstr "Pode recibir mensaxes SMS de %%site.name%% por correo electrónico."
+
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
+msgid "SMS is not available."
+msgstr "Os SMS non están dispoñibles."
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Enderezo dos SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
+msgid "Current confirmed SMS-enabled phone number."
+msgstr "Número de teléfono cos SMS activados confirmado actualmente."
+
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
+msgid "Awaiting confirmation on this phone number."
+msgstr "Agardando pola confirmación do número de teléfono."
+
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
+msgid "Confirmation code"
+msgstr "Código de confirmación"
+
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
+msgid "Enter the code you received on your phone."
+msgstr "Introduza o código que recibiu no teléfono."
+
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
+msgid "SMS phone number"
+msgstr "Número de teléfono para os SMS"
+
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
+msgid "Phone number, no punctuation or spaces, with area code"
+msgstr ""
+"Número de teléfono, sen signos de puntuación nin espazos en branco, co "
+"código da zona"
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferencias dos SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
+msgid ""
+"Send me notices through SMS; I understand I may incur exorbitant charges "
+"from my carrier."
+msgstr ""
+"Enviádeme notas por SMS. Comprendo que isto podería supoñerme uns custos "
+"exorbitantes na factura da miña compañía."
+
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Gardáronse as preferencias dos SMS."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
+msgid "No phone number."
+msgstr "Non hai ningún número de teléfono."
+
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
+msgid "No carrier selected."
+msgstr "Non se escolleu unha compañía."
+
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
+msgid "That is already your phone number."
+msgstr "Ese xa é o seu número de teléfono."
+
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
+msgid "That phone number already belongs to another user."
+msgstr "Ese número de teléfono xa pertence a outro usuario."
+
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
+msgid ""
+"A confirmation code was sent to the phone number you added. Check your phone "
+"for the code and instructions on how to use it."
+msgstr ""
+"Enviouse un código de confirmación ao número de teléfono que engadiu. "
+"Comprobe no seu teléfono o código e as instrucións para utilizalo."
+
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
+msgid "That is the wrong confirmation number."
+msgstr "Ese número de confirmación é incorrecto."
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Cancelouse a confirmación para os SMS."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
+msgid "That is not your phone number."
+msgstr "Ese número de teléfono non é seu."
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Borrouse o número de teléfono para os SMS."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
+msgid "Mobile carrier"
+msgstr "Compañía"
+
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
+msgid "Select a carrier"
+msgstr "Escolla unha compañía"
+
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
+#, php-format
+msgid ""
+"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
+"email but isn't listed here, send email to let us know at %s."
+msgstr ""
+"Compañía de telecomunicacións coa que contratou o seu móbil. Se sabe "
+"dalgunha compañía que permita SMS sobre correo electrónico pero non aparece "
+"nesta lista, envíenos un correo electrónico para notificárnolo a %s."
+
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
+msgid "No code entered"
+msgstr "Non se introduciu ningún código"
+
+#. TRANS: Menu item for site administration
+#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
+#: lib/adminpanelaction.php:408
+msgid "Snapshots"
+msgstr "Instantáneas"
+
+#: actions/snapshotadminpanel.php:65
+msgid "Manage snapshot configuration"
+msgstr "Xestione a configuración das instantáneas"
+
+#: actions/snapshotadminpanel.php:127
+msgid "Invalid snapshot run value."
+msgstr "Valor de execución da instantánea incorrecto."
+
+#: actions/snapshotadminpanel.php:133
+msgid "Snapshot frequency must be a number."
+msgstr "A frecuencia das instantáneas debe ser un número."
+
+#: actions/snapshotadminpanel.php:144
+msgid "Invalid snapshot report URL."
+msgstr "URL de envío das instantáneas incorrecto."
+
+#: actions/snapshotadminpanel.php:200
+msgid "Randomly during web hit"
+msgstr "Ao chou durante o acceso á rede"
+
+#: actions/snapshotadminpanel.php:201
+msgid "In a scheduled job"
+msgstr "Nun proceso programado"
+
+#: actions/snapshotadminpanel.php:206
+msgid "Data snapshots"
+msgstr "Instantáneas de datos"
+
+#: actions/snapshotadminpanel.php:208
+msgid "When to send statistical data to status.net servers"
+msgstr "Cando enviar información estatística aos servidores status.net"
+
+#: actions/snapshotadminpanel.php:217
+msgid "Frequency"
+msgstr "Frecuencia"
+
+#: actions/snapshotadminpanel.php:218
+msgid "Snapshots will be sent once every N web hits"
+msgstr "As instantáneas enviaranse unha vez cada N accesos á rede"
+
+#: actions/snapshotadminpanel.php:226
+msgid "Report URL"
+msgstr "URL de envío"
+
+#: actions/snapshotadminpanel.php:227
+msgid "Snapshots will be sent to this URL"
+msgstr "As instantáneas enviaranse a este URL"
+
+#: actions/snapshotadminpanel.php:248
+msgid "Save snapshot settings"
+msgstr "Gardar a configuración das instantáneas"
+
+#: actions/subedit.php:70
+msgid "You are not subscribed to that profile."
+msgstr "Non está subscrito a ese perfil."
+
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
+msgid "Could not save subscription."
+msgstr "Non se puido gardar a subscrición."
+
+#: actions/subscribe.php:77
+msgid "This action only accepts POST requests."
+msgstr "Esta acción só permite solicitudes POST."
+
+#: actions/subscribe.php:107
+msgid "No such profile."
+msgstr "Non existe ese perfil."
+
+#: actions/subscribe.php:117
+msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
+msgstr "Non se pode subscribir a un perfil remoto OMB 0.1 con esta acción."
+
+#: actions/subscribe.php:145
+msgid "Subscribed"
+msgstr "Subscrito"
+
+#: actions/subscribers.php:50
+#, php-format
+msgid "%s subscribers"
+msgstr "%s subscritores"
+
+#: actions/subscribers.php:52
+#, php-format
+msgid "%1$s subscribers, page %2$d"
+msgstr "%1$s subscritores, páxina %2$d"
+
+#: actions/subscribers.php:63
+msgid "These are the people who listen to your notices."
+msgstr "Estas son as persoas que seguen as súas notas."
+
+#: actions/subscribers.php:67
+#, php-format
+msgid "These are the people who listen to %s's notices."
+msgstr "Estas son as persoas que están seguindo as notas de %s."
+
+#: actions/subscribers.php:108
+msgid ""
+"You have no subscribers. Try subscribing to people you know and they might "
+"return the favor"
+msgstr ""
+"Non ten subscritores. Probe a subscribirse a xente que coñeza e pode que lle "
+"devolvan o favor"
+
+#: actions/subscribers.php:110
+#, php-format
+msgid "%s has no subscribers. Want to be the first?"
+msgstr "%s non ten subscritores. Quere ser o primeiro?"
+
+#: actions/subscribers.php:114
+#, php-format
+msgid ""
+"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
+"%) and be the first?"
+msgstr ""
+"%s non ten subscritores. Por que non [rexistrar unha conta](%%%%action."
+"register%%%%) e ser o primeiro?"
+
+#: actions/subscriptions.php:52
+#, php-format
+msgid "%s subscriptions"
+msgstr "%s subscricións"
+
+#: actions/subscriptions.php:54
+#, php-format
+msgid "%1$s subscriptions, page %2$d"
+msgstr "%1$s subscricións, páxina %2$d"
+
+#: actions/subscriptions.php:65
+msgid "These are the people whose notices you listen to."
+msgstr "Estas son as persoas cuxas notas segue."
+
+#: actions/subscriptions.php:69
+#, php-format
+msgid "These are the people whose notices %s listens to."
+msgstr "Estas son as persoas cuxas notas segue %s."
+
+#: actions/subscriptions.php:126
+#, php-format
+msgid ""
+"You're not listening to anyone's notices right now, try subscribing to "
+"people you know. Try [people search](%%action.peoplesearch%%), look for "
+"members in groups you're interested in and in our [featured users](%%action."
+"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
+"automatically subscribe to people you already follow there."
+msgstr ""
+"Agora mesmo non está a seguir as notas de ninguén, probe a subscribirse a "
+"xente que coñeza. Intente [buscar xente](%%action.peoplesearch%%), buscar "
+"xente en grupos que lle interesen e nos nosos [usuarios destacados](%%action."
+"featured%%). Se é [usuario do Twitter](%%action.twittersettings%%), pode "
+"subscribirse automaticamente á xente que segue alí."
+
+#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#, php-format
+msgid "%s is not listening to anyone."
+msgstr "%s non está seguindo a ninguén."
+
+#: actions/subscriptions.php:208
+msgid "Jabber"
+msgstr "Jabber"
+
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
+msgid "SMS"
+msgstr "SMS"
+
+#: actions/tag.php:69
+#, php-format
+msgid "Notices tagged with %1$s, page %2$d"
+msgstr "Notas etiquetadas con %1$s, páxina %2$d"
+
+#: actions/tag.php:87
+#, php-format
+msgid "Notice feed for tag %s (RSS 1.0)"
+msgstr "Fonte de novas das notas para a etiqueta %s (RSS 1.0)"
+
+#: actions/tag.php:93
+#, php-format
+msgid "Notice feed for tag %s (RSS 2.0)"
+msgstr "Fonte de novas das notas para a etiqueta %s (RSS 2.0)"
+
+#: actions/tag.php:99
+#, php-format
+msgid "Notice feed for tag %s (Atom)"
+msgstr "Fonte de novas das notas para a etiqueta %s (Atom)"
+
+#: actions/tagother.php:39
+msgid "No ID argument."
+msgstr "Sen argumento ID."
+
+#: actions/tagother.php:65
+#, php-format
+msgid "Tag %s"
+msgstr "Etiqueta %s"
+
+#: actions/tagother.php:77 lib/userprofile.php:76
+msgid "User profile"
+msgstr "Perfil do usuario"
+
+#: actions/tagother.php:81 actions/userauthorization.php:132
+#: lib/userprofile.php:103
+msgid "Photo"
+msgstr "Fotografía"
+
+#: actions/tagother.php:141
+msgid "Tag user"
+msgstr "Etiquetar ao usuario"
+
+#: actions/tagother.php:151
+msgid ""
+"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
+"separated"
+msgstr ""
+"Etiquetas para este usuario (letras, números, -, ., e _), separadas por "
+"comas ou espazos en branco"
+
+#: actions/tagother.php:193
+msgid ""
+"You can only tag people you are subscribed to or who are subscribed to you."
+msgstr ""
+"Só pode etiquetar a xente á que estea subscrito ou que estean subscritos a "
+"vostede."
+
+#: actions/tagother.php:200
+msgid "Could not save tags."
+msgstr "Non se puideron gardar as etiquetas."
+
+#: actions/tagother.php:236
+msgid "Use this form to add tags to your subscribers or subscriptions."
+msgstr ""
+"Utilice este formulario para engadir etiquetas aos seus subscritores ou "
+"subscricións."
+
+#: actions/tagrss.php:35
+msgid "No such tag."
+msgstr "Esa etiqueta non existe."
+
+#: actions/unblock.php:59
+msgid "You haven't blocked that user."
+msgstr "Non bloqueou a ese usuario."
+
+#: actions/unsandbox.php:72
+msgid "User is not sandboxed."
+msgstr "O usuario non está illado."
+
+#: actions/unsilence.php:72
+msgid "User is not silenced."
+msgstr "O usuario non está silenciado."
+
+#: actions/unsubscribe.php:77
+msgid "No profile ID in request."
+msgstr "à solicitude fáltalle o ID do perfil."
+
+#: actions/unsubscribe.php:98
+msgid "Unsubscribed"
+msgstr "Cancelouse a subscrición"
+
+#: actions/updateprofile.php:64 actions/userauthorization.php:337
+#, php-format
+msgid ""
+"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+"A licenza \"%1$s\" das transmisións da persoa seguida non é compatible coa "
+"licenza deste sitio: \"%2$s\"."
+
+#. TRANS: User admin panel title
+#: actions/useradminpanel.php:59
+msgctxt "TITLE"
+msgid "User"
+msgstr "Usuario"
+
+#: actions/useradminpanel.php:70
+msgid "User settings for this StatusNet site."
+msgstr "Preferencias de usuario para este sitio StatusNet."
+
+#: actions/useradminpanel.php:149
+msgid "Invalid bio limit. Must be numeric."
+msgstr "Límite da biografía incorrecto. Debe ser numérico."
+
+#: actions/useradminpanel.php:155
+msgid "Invalid welcome text. Max length is 255 characters."
+msgstr "Texto de benvida incorrecto. A extensión máxima é de 255 caracteres."
+
+#: actions/useradminpanel.php:165
+#, php-format
+msgid "Invalid default subscripton: '%1$s' is not user."
+msgstr "Subscrición por defecto incorrecta. \"%1$s\" non é un usuario."
+
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
+#: lib/personalgroupnav.php:109
+msgid "Profile"
+msgstr "Perfil"
+
+#: actions/useradminpanel.php:222
+msgid "Bio Limit"
+msgstr "Límite da biografía"
+
+#: actions/useradminpanel.php:223
+msgid "Maximum length of a profile bio in characters."
+msgstr "Extensión máxima da biografía dun perfil en caracteres."
+
+#: actions/useradminpanel.php:231
+msgid "New users"
+msgstr "Novos usuarios"
+
+#: actions/useradminpanel.php:235
+msgid "New user welcome"
+msgstr "Nova benvida para os usuarios"
+
+#: actions/useradminpanel.php:236
+msgid "Welcome text for new users (Max 255 chars)."
+msgstr "Texto de benvida para os novos usuarios (255 caracteres como máximo)."
+
+#: actions/useradminpanel.php:241
+msgid "Default subscription"
+msgstr "Subscrición por defecto"
+
+#: actions/useradminpanel.php:242
+msgid "Automatically subscribe new users to this user."
+msgstr "Subscribir automaticamente aos novos usuarios a este usuario."
+
+#: actions/useradminpanel.php:251
+msgid "Invitations"
+msgstr "Invitacións"
+
+#: actions/useradminpanel.php:256
+msgid "Invitations enabled"
+msgstr "Activáronse as invitacións"
+
+#: actions/useradminpanel.php:258
+msgid "Whether to allow users to invite new users."
+msgstr "Permitir ou non que os usuarios poidan invitar a novos usuarios."
+
+#: actions/userauthorization.php:105
+msgid "Authorize subscription"
+msgstr "Autorizar a subscrición"
+
+#: actions/userauthorization.php:110
+msgid ""
+"Please check these details to make sure that you want to subscribe to this "
+"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
+"click “Rejectâ€."
+msgstr ""
+"Verifique estes detalles para certificar que quere subscribirse ás notas "
+"deste usuario. Se non pediu a subscrición ás notas de alguén, prema en "
+"\"Rexeitar\"."
+
+#: actions/userauthorization.php:196 actions/version.php:167
+msgid "License"
+msgstr "Licenza"
+
+#: actions/userauthorization.php:217
+msgid "Accept"
+msgstr "Aceptar"
+
+#: actions/userauthorization.php:218 lib/subscribeform.php:115
+#: lib/subscribeform.php:139
+msgid "Subscribe to this user"
+msgstr "Subscribirse a este usuario"
+
+#: actions/userauthorization.php:219
+msgid "Reject"
+msgstr "Rexeitar"
+
+#: actions/userauthorization.php:220
+msgid "Reject this subscription"
+msgstr "Rexeitar esta subscrición"
+
+#: actions/userauthorization.php:232
+msgid "No authorization request!"
+msgstr "Non se solicitou a autorización!"
+
+#: actions/userauthorization.php:254
+msgid "Subscription authorized"
+msgstr "Autorizouse a subscrición"
+
+#: actions/userauthorization.php:256
+msgid ""
+"The subscription has been authorized, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to authorize the "
+"subscription. Your subscription token is:"
+msgstr ""
+"Autorizouse a subscrición, pero non se devolveu ningún URL. Bote unha ollada "
+"ás instrucións do sitio para saber máis sobre como autorizar a subscrición. "
+"O pase da súa subscrición é:"
+
+#: actions/userauthorization.php:266
+msgid "Subscription rejected"
+msgstr "Rexeitouse a subscrición"
+
+#: actions/userauthorization.php:268
+msgid ""
+"The subscription has been rejected, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to fully reject the "
+"subscription."
+msgstr ""
+"Rexeitouse a subscrición, pero non se devolveu ningún URL. Bote unha ollada "
+"ás instrucións do sitio para obter máis información sobre como rexeitar "
+"completamente a subscrición."
+
+#: actions/userauthorization.php:303
+#, php-format
+msgid "Listener URI ‘%s’ not found here."
+msgstr "Non se atopou o URI do seguidor, \"%s\", aquí."
+
+#: actions/userauthorization.php:308
+#, php-format
+msgid "Listenee URI ‘%s’ is too long."
+msgstr "O URI do seguidor, \"%s\", é longo de máis."
+
+#: actions/userauthorization.php:314
+#, php-format
+msgid "Listenee URI ‘%s’ is a local user."
+msgstr "O URI do seguidor, \"%s\", é dun usuario local."
+
+#: actions/userauthorization.php:329
+#, php-format
+msgid "Profile URL ‘%s’ is for a local user."
+msgstr "O URL do perfil, \"%s\", pertence a un usuario local."
+
+#: actions/userauthorization.php:345
+#, php-format
+msgid "Avatar URL ‘%s’ is not valid."
+msgstr "O URL do avatar, \"%s\", é incorrecto."
+
+#: actions/userauthorization.php:350
+#, php-format
+msgid "Can’t read avatar URL ‘%s’."
+msgstr "Non se puido ler o URL do avatar, \"%s\"."
+
+#: actions/userauthorization.php:355
+#, php-format
+msgid "Wrong image type for avatar URL ‘%s’."
+msgstr "O tipo de imaxe do URL do avatar, \"%s\", é incorrecto."
+
+#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+msgid "Profile design"
+msgstr "Deseño do perfil"
+
+#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+msgid ""
+"Customize the way your profile looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+"Personalice a aparencia do seu perfil cunha imaxe de fondo e unha paleta de "
+"cores escollida por vostede."
+
+#: actions/userdesignsettings.php:282
+msgid "Enjoy your hotdog!"
+msgstr "Bo proveito!"
+
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
+msgid "%1$s groups, page %2$d"
+msgstr "%1$s grupos, páxina %2$d"
+
+#: actions/usergroups.php:132
+msgid "Search for more groups"
+msgstr "Buscar máis grupos"
+
+#: actions/usergroups.php:159
+#, php-format
+msgid "%s is not a member of any group."
+msgstr "%s non pertence a ningún grupo."
+
+#: actions/usergroups.php:164
+#, php-format
+msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
+msgstr "Probe a [buscar grupos](%%action.groupsearch%%) e unirse a eles."
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
+#, php-format
+msgid "Updates from %1$s on %2$s!"
+msgstr "Actualizacións de %1$s en %2$s!"
+
+#: actions/version.php:75
+#, php-format
+msgid "StatusNet %s"
+msgstr "%s de StatusNet"
+
+#: actions/version.php:155
+#, php-format
+msgid ""
+"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
+"Inc. and contributors."
+msgstr ""
+"Este sitio foi desenvolvido sobre a versión %2$s de %1$s, propiedade de "
+"StatusNet, Inc. e colaboradores, 2008-2010."
+
+#: actions/version.php:163
+msgid "Contributors"
+msgstr "Colaboradores"
+
+#: actions/version.php:170
+msgid ""
+"StatusNet is free software: you can redistribute it and/or modify it under "
+"the terms of the GNU Affero General Public License as published by the Free "
+"Software Foundation, either version 3 of the License, or (at your option) "
+"any later version. "
+msgstr ""
+"StatusNet é software libre: pode redistribuílo e modificalo baixo os termos "
+"da Licenza Pública Xeral Affero de GNU, tal e como a publicou a Free "
+"Software Foundation, versión 3 ou calquera versión posterior (a elección do "
+"usuario) da licenza. "
+
+#: actions/version.php:176
+msgid ""
+"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. "
+msgstr ""
+"Este programa distribúese coa esperanza de que resulte útil, pero SEN "
+"NINGUNHA GARANTÃA, nin sequera as garantías implícitas de COMERCIALIZACIÓN "
+"ou IDONEIDADE PARA UN PROPÓSITO PARTICULAR. Lea a Licenza Pública Xeral "
+"Affero de GNU para máis información. "
+
+#: actions/version.php:182
+#, php-format
+msgid ""
+"You should have received a copy of the GNU Affero General Public License "
+"along with this program. If not, see %s."
+msgstr ""
+"Debeu recibir unha copia da Licenza Pública Xeral Affero de GNU xunto co "
+"programa. En caso contrario, vexa %s."
+
+#: actions/version.php:191
+msgid "Plugins"
+msgstr "Complementos"
+
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
+msgid "Version"
+msgstr "Versión"
+
+#: actions/version.php:199
+msgid "Author(s)"
+msgstr "Autores"
+
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Non se pode procesar o URL \"%s\""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin pensa que algo é imposible."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, php-format
+msgid ""
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgstr ""
+"Ningún ficheiro pode superar os %1$d bytes e o que enviou ocupaba %2$d. "
+"Probe a subir un ficheiro máis pequeno."
+
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
+#, php-format
+msgid "A file this large would exceed your user quota of %d bytes."
+msgstr ""
+"Un ficheiro deste tamaño excedería a súa cota de usuario, que é de %d bytes."
+
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
+#, php-format
+msgid "A file this large would exceed your monthly quota of %d bytes."
+msgstr "Un ficheiro deste tamaño excedería a súa cota mensual de %d bytes."
+
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nome de ficheiro incorrecto."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
+msgid "Group join failed."
+msgstr "Non se puido unir ao grupo."
+
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
+msgid "Not part of group."
+msgstr "Non forma parte do grupo."
+
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
+msgid "Group leave failed."
+msgstr "Non se puido deixar o grupo."
+
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
+msgid "Could not update local group."
+msgstr "Non se puido actualizar o grupo local."
+
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
+msgid "Could not create login token for %s"
+msgstr "Non se puido crear un pase de sesión para %s"
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Non se atopou por ningures o nome da base de datos ou DSN."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
+msgid "You are banned from sending direct messages."
+msgstr "Prohibíuselle enviar mensaxes directas de momento."
+
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
+msgid "Could not insert message."
+msgstr "Non se puido inserir a mensaxe."
+
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
+msgid "Could not update message with new URI."
+msgstr "Non se puido actualizar a mensaxe co novo URI."
+
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Non existe tal perfil (%1$d) para a nota (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Houbo un erro na base de datos ao intentar inserir a etiqueta: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
+msgid "Problem saving notice. Too long."
+msgstr "Houbo un problema ao gardar a nota. É longa de máis."
+
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
+msgid "Problem saving notice. Unknown user."
+msgstr "Houbo un problema ao gardar a nota. Descoñécese o usuario."
+
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
+msgid ""
+"Too many notices too fast; take a breather and post again in a few minutes."
+msgstr ""
+"Escribiu demasiadas notas en moi pouco tempo. Tómese un respiro e volva "
+"publicar nuns minutos."
+
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
+msgid ""
+"Too many duplicate messages too quickly; take a breather and post again in a "
+"few minutes."
+msgstr ""
+"Repetiu demasiadas mensaxes en moi pouco tempo. Tómese un respiro e volva "
+"publicar nuns minutos."
+
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
+msgid "You are banned from posting notices on this site."
+msgstr "Prohibíuselle publicar notas neste sitio de momento."
+
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
+msgid "Problem saving notice."
+msgstr "Houbo un problema ao gardar a nota."
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "O tipo dado para saveKnownGroups era incorrecto"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
+msgid "Problem saving group inbox."
+msgstr "Houbo un problema ao gardar a caixa de entrada do grupo."
+
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
+msgid "RT @%1$s %2$s"
+msgstr "â™» @%1$s %2$s"
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Non se pode revogar o rol \"%1$s\" do usuario #%2$d: o usuario non existe."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Non se pode revogar o rol \"%1$s\" do usuario #%2$d: erro na base de datos."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Falta o perfil de usuario."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Non se puido gardar a nota do sitio."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr "Prohibíuselle realizar subscricións de momento."
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
+msgid "Already subscribed!"
+msgstr "Xa está subscrito!"
+
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
+msgid "User has blocked you."
+msgstr "O usuario bloqueouno."
+
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
+msgid "Not subscribed!"
+msgstr "Non está subscrito!"
+
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "Non se puido borrar a subscrición a si mesmo."
+
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Non se puido borrar o pase de subscrición OMB."
+
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr "Non se puido borrar a subscrición."
+
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
+#, php-format
+msgid "Welcome to %1$s, @%2$s!"
+msgstr "Benvido a %1$s, @%2$s!"
+
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
+msgid "Could not create group."
+msgstr "Non se puido crear o grupo."
+
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
+msgid "Could not set group URI."
+msgstr "Non se puido establecer o URI do grupo."
+
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
+msgid "Could not set group membership."
+msgstr "Non se puido establecer a pertenza ao grupo."
+
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
+msgid "Could not save local group info."
+msgstr "Non se puido gardar a información do grupo local."
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
+msgid "Change your profile settings"
+msgstr "Cambie a configuración do seu perfil"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
+msgid "Upload an avatar"
+msgstr "Cargue un avatar"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
+msgid "Change your password"
+msgstr "Cambie o seu contrasinal"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
+msgid "Change email handling"
+msgstr "Cambie a xestión do correo electrónico"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
+msgid "Design your profile"
+msgstr "Deseñe o seu perfil"
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr "Outras opcións"
+
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Outros"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
+msgid "%1$s - %2$s"
+msgstr "%1$s - %2$s"
+
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
+msgid "Untitled page"
+msgstr "Páxina sen título"
+
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
+msgid "Primary site navigation"
+msgstr "Navegación principal do sitio"
+
+#. TRANS: Tooltip for main menu option "Personal"
+#: lib/action.php:442
+msgctxt "TOOLTIP"
+msgid "Personal profile and friends timeline"
+msgstr "Liña do tempo do perfil persoal e os amigos"
+
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
+msgctxt "MENU"
+msgid "Personal"
+msgstr "Persoal"
+
+#. TRANS: Tooltip for main menu option "Account"
+#: lib/action.php:447
+msgctxt "TOOLTIP"
+msgid "Change your email, avatar, password, profile"
+msgstr "Cambie o seu correo electrónico, avatar, contrasinal ou perfil"
+
+#. TRANS: Tooltip for main menu option "Services"
+#: lib/action.php:452
+msgctxt "TOOLTIP"
+msgid "Connect to services"
+msgstr "Conectarse aos servizos"
+
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
+msgid "Connect"
+msgstr "Conectarse"
+
+#. TRANS: Tooltip for menu option "Admin"
+#: lib/action.php:458
+msgctxt "TOOLTIP"
+msgid "Change site configuration"
+msgstr "Cambiar a configuración do sitio"
+
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
+msgctxt "MENU"
+msgid "Admin"
+msgstr "Administrador"
+
+#. TRANS: Tooltip for main menu option "Invite"
+#: lib/action.php:465
+#, php-format
+msgctxt "TOOLTIP"
+msgid "Invite friends and colleagues to join you on %s"
+msgstr "Convide a amigos e compañeiros a unírselle en %s"
+
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
+msgctxt "MENU"
+msgid "Invite"
+msgstr "Convidar"
+
+#. TRANS: Tooltip for main menu option "Logout"
+#: lib/action.php:474
+msgctxt "TOOLTIP"
+msgid "Logout from the site"
+msgstr "Saír ao anonimato"
+
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
+msgctxt "MENU"
+msgid "Logout"
+msgstr "Saír"
+
+#. TRANS: Tooltip for main menu option "Register"
+#: lib/action.php:482
+msgctxt "TOOLTIP"
+msgid "Create an account"
+msgstr "Crear unha conta"
+
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
+msgctxt "MENU"
+msgid "Register"
+msgstr "Rexistrarse"
+
+#. TRANS: Tooltip for main menu option "Login"
+#: lib/action.php:488
+msgctxt "TOOLTIP"
+msgid "Login to the site"
+msgstr "Identificarse no sitio"
+
+#: lib/action.php:491
+msgctxt "MENU"
+msgid "Login"
+msgstr "Identificarse"
+
+#. TRANS: Tooltip for main menu option "Help"
+#: lib/action.php:494
+msgctxt "TOOLTIP"
+msgid "Help me!"
+msgstr "Axuda!"
+
+#: lib/action.php:497
+msgctxt "MENU"
+msgid "Help"
+msgstr "Axuda"
+
+#. TRANS: Tooltip for main menu option "Search"
+#: lib/action.php:500
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
+msgstr "Buscar persoas ou palabras"
+
+#: lib/action.php:503
+msgctxt "MENU"
+msgid "Search"
+msgstr "Buscar"
+
+#. TRANS: DT element for site notice. String is hidden in default CSS.
+#. TRANS: Menu item for site administration
+#: lib/action.php:525 lib/adminpanelaction.php:400
+msgid "Site notice"
+msgstr "Nota do sitio"
+
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
+msgid "Local views"
+msgstr "Vistas locais"
+
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
+msgid "Page notice"
+msgstr "Nota da páxina"
+
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
+msgid "Secondary site navigation"
+msgstr "Navegación secundaria do sitio"
+
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
+msgid "Help"
+msgstr "Axuda"
+
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
+msgid "About"
+msgstr "Acerca de"
+
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
+msgid "FAQ"
+msgstr "Preguntas máis frecuentes"
+
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
+msgid "TOS"
+msgstr "Condicións do servicio"
+
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
+msgid "Privacy"
+msgstr "Protección de datos"
+
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
+msgid "Source"
+msgstr "Código fonte"
+
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
+msgid "Contact"
+msgstr "Contacto"
+
+#: lib/action.php:794
+msgid "Badge"
+msgstr "Insignia"
+
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
+msgid "StatusNet software license"
+msgstr "Licenza do software StatusNet"
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, php-format
+msgid ""
+"**%%site.name%%** is a microblogging service brought to you by [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
+msgstr ""
+"**%%site.name%%** é un servizo de mensaxes de blogue curtas ofrecido por [%%"
+"site.broughtby%%](%%site.broughtbyurl%%)."
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
+#, php-format
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** é un servizo de mensaxes de blogue curtas."
+
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
+#, php-format
+msgid ""
+"It runs the [StatusNet](http://status.net/) microblogging software, version %"
+"s, available under the [GNU Affero General Public License](http://www.fsf."
+"org/licensing/licenses/agpl-3.0.html)."
+msgstr ""
+"Utiliza a versión %s do software de mensaxes de blogue curtas [StatusNet]"
+"(http://status.net/), dispoñible baixo a [Licenza Pública Xeral Affero de "
+"GNU](http://www.fsf.org/licensing/licenses/agpl-3.0.html) (en inglés)."
+
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
+msgid "Site content license"
+msgstr "Licenza dos contidos do sitio"
+
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
+#, php-format
+msgid "Content and data of %1$s are private and confidential."
+msgstr "O contido e os datos de %1$s son privados e confidenciais."
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
+#, php-format
+msgid "Content and data copyright by %1$s. All rights reserved."
+msgstr ""
+"Os contidos e datos son propiedade intelectual de %1$s. Quedan reservados "
+"todos os dereitos."
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
+msgid "Content and data copyright by contributors. All rights reserved."
+msgstr ""
+"Os contidos e datos son propiedade intelectual dos colaboradores. Quedan "
+"reservados todos os dereitos."
+
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Todos os contidos e datos de %1$s están dispoñibles baixo a licenza %2$s."
+
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
+msgid "Pagination"
+msgstr "Paxinación"
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
+msgid "After"
+msgstr "Posteriores"
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
+msgid "Before"
+msgstr "Anteriores"
+
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+"Esperábase unha fonte de novas raíz pero recibiuse un documento XML completo."
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "Aínda non é posible manexar contidos remotos."
+
+#: lib/activityutils.php:244
+msgid "Can't handle embedded XML content yet."
+msgstr "Aínda non se poden manexar contidos XML integrados."
+
+#: lib/activityutils.php:248
+msgid "Can't handle embedded Base64 content yet."
+msgstr "Aínda non se poden manexar contidos Base64."
+
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
+#: lib/adminpanelaction.php:98
+msgid "You cannot make changes to this site."
+msgstr "Non pode realizar cambios neste sitio."
+
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
+#: lib/adminpanelaction.php:110
+msgid "Changes to that panel are not allowed."
+msgstr "Non se permite realizar cambios nese panel."
+
+#. TRANS: Client error message.
+#: lib/adminpanelaction.php:229
+msgid "showForm() not implemented."
+msgstr "showForm() non está integrado."
+
+#. TRANS: Client error message
+#: lib/adminpanelaction.php:259
+msgid "saveSettings() not implemented."
+msgstr "saveSettings() non está integrado."
+
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
+msgid "Unable to delete design setting."
+msgstr "Non se puido borrar a configuración do deseño."
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:350
+msgid "Basic site configuration"
+msgstr "Configuración básica do sitio"
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:352
+msgctxt "MENU"
+msgid "Site"
+msgstr "Sitio"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:358
+msgid "Design configuration"
+msgstr "Configuración do deseño"
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:360
+msgctxt "MENU"
+msgid "Design"
+msgstr "Deseño"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:366
+msgid "User configuration"
+msgstr "Configuración do usuario"
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
+msgid "User"
+msgstr "Usuario"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:374
+msgid "Access configuration"
+msgstr "Configuración de acceso"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:382
+msgid "Paths configuration"
+msgstr "Configuración das rutas"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:390
+msgid "Sessions configuration"
+msgstr "Configuración das sesións"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:398
+msgid "Edit site notice"
+msgstr "Modificar a nota do sitio"
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:406
+msgid "Snapshots configuration"
+msgstr "Configuración das instantáneas"
+
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
+msgid "API resource requires read-write access, but you only have read access."
+msgstr ""
+"O recurso API precisa permisos de lectura e escritura, pero só dispón de "
+"permisos de lectura."
+
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
+msgid "Edit application"
+msgstr "Modificar a aplicación"
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
+msgid "Icon for this application"
+msgstr "Icona para esta aplicación"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
+msgid "Describe your application in %d characters"
+msgstr "Describa a súa aplicación en %d caracteres"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
+msgid "Describe your application"
+msgstr "Describa a súa aplicación"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr "URL do sitio web desta aplicación"
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL de orixe"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
+msgid "Organization responsible for this application"
+msgstr "Organización responsable desta aplicación"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
+msgid "URL for the homepage of the organization"
+msgstr "URL do sitio web da organización"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
+msgid "URL to redirect to after authentication"
+msgstr "URL ao que ir tras a autenticación"
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
+msgid "Browser"
+msgstr "Navegador"
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
+msgid "Desktop"
+msgstr "Escritorio"
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
+msgid "Type of application, browser or desktop"
+msgstr "Tipo de aplicación, de navegador ou de escritorio"
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
+msgid "Read-only"
+msgstr "Lectura"
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
+msgid "Read-write"
+msgstr "Lectura e escritura"
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
+msgid "Default access for this application: read-only, or read-write"
+msgstr ""
+"Permisos por defecto para esta aplicación: lectura ou lectura e escritura"
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lectura e escritura"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "lectura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprobado o %1$s - permisos de \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
+msgid "Revoke"
+msgstr "Revogar"
+
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
+msgid "Attachments"
+msgstr "Ficheiros anexos"
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:265
+msgid "Author"
+msgstr "Autor"
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
+msgid "Provider"
+msgstr "Provedor"
+
+#: lib/attachmentnoticesection.php:67
+msgid "Notices where this attachment appears"
+msgstr "Notas nas que se anexou este ficheiro"
+
+#: lib/attachmenttagcloudsection.php:48
+msgid "Tags for this attachment"
+msgstr "Etiquetas para este ficheiro"
+
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
+msgid "Password changing failed"
+msgstr "Non se puido cambiar o contrasinal"
+
+#: lib/authenticationplugin.php:236
+msgid "Password changing is not allowed"
+msgstr "Non se permite cambiar o contrasinal"
+
+#: lib/channel.php:157 lib/channel.php:177
+msgid "Command results"
+msgstr "Resultados da orde"
+
+#: lib/channel.php:229 lib/mailhandler.php:142
+msgid "Command complete"
+msgstr "Completouse a orde"
+
+#: lib/channel.php:240
+msgid "Command failed"
+msgstr "A orde fallou"
+
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Non hai ningunha nota con esa id"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "O usuario non ten ningunha última nota"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
+msgid "Could not find a user with nickname %s"
+msgstr "Non se deu atopado ningún usuario co alcume %s"
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Non se deu atopado ningún usuario local co alcume %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Esta orde aínda non está integrada."
+
+#: lib/command.php:225
+msgid "It does not make a lot of sense to nudge yourself!"
+msgstr "Non ten sentido ningún facerse un aceno a un mesmo!"
+
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
+msgid "Nudge sent to %s"
+msgstr "Fíxoselle un aceno a %s"
+
+#: lib/command.php:260
+#, php-format
+msgid ""
+"Subscriptions: %1$s\n"
+"Subscribers: %2$s\n"
+"Notices: %3$s"
+msgstr ""
+"Subscricións: %1$s\n"
+"Subscritores: %2$s\n"
+"Notas: %3$s"
+
+#: lib/command.php:302
+msgid "Notice marked as fave."
+msgstr "Marcouse a nota como favorita."
+
+#: lib/command.php:323
+msgid "You are already a member of that group"
+msgstr "Xa forma parte dese grupo"
+
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Non se puido meter ao usuario %1$s no grupo %2$s"
+
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Non se puido eliminar ao usuario %1$s do grupo %2$s"
+
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
+#, php-format
+msgid "Fullname: %s"
+msgstr "Nome completo: %s"
+
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
+#, php-format
+msgid "Location: %s"
+msgstr "Localidade: %s"
+
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
+#, php-format
+msgid "Homepage: %s"
+msgstr "Sitio web: %s"
+
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
+#, php-format
+msgid "About: %s"
+msgstr "Acerca de: %s"
+
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s é un perfil remoto. Só pode enviarlle mensaxes persoais aos usuarios do "
+"mesmo servidor."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "A mensaxe é longa de máis. O límite son %1$d caracteres, e enviou %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
+msgid "Direct message to %s sent"
+msgstr "Envióuselle a mensaxe directa a %s"
+
+#: lib/command.php:494
+msgid "Error sending direct message."
+msgstr "Houbo un erro ao enviar a mensaxe directa."
+
+#: lib/command.php:514
+msgid "Cannot repeat your own notice"
+msgstr "Non pode repetir unha nota propia"
+
+#: lib/command.php:519
+msgid "Already repeated that notice"
+msgstr "Xa repetiu esa nota"
+
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
+msgid "Notice from %s repeated"
+msgstr "Repetiuse a nota de %s"
+
+#: lib/command.php:531
+msgid "Error repeating notice."
+msgstr "Houbo un erro ao repetir a nota."
+
+#: lib/command.php:562
+#, php-format
+msgid "Notice too long - maximum is %d characters, you sent %d"
+msgstr "A nota é longa de máis. O límite son %d caracteres, e enviou %d"
+
+#: lib/command.php:571
+#, php-format
+msgid "Reply to %s sent"
+msgstr "Enviouse a resposta a %s"
+
+#: lib/command.php:573
+msgid "Error saving notice."
+msgstr "Houbo un erro ao gardar a nota."
+
+#: lib/command.php:620
+msgid "Specify the name of the user to subscribe to"
+msgstr "Introduza o nome do usuario ao que quere subscribirse"
+
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Non se pode subscribir aos perfís OMB cunha orde."
+
+#: lib/command.php:634
+#, php-format
+msgid "Subscribed to %s"
+msgstr "Subscribiuse a %s"
+
+#: lib/command.php:655 lib/command.php:754
+msgid "Specify the name of the user to unsubscribe from"
+msgstr "Introduza o nome do usuario ao que quer deixar de estar subscrito"
+
+#: lib/command.php:664
+#, php-format
+msgid "Unsubscribed from %s"
+msgstr "Cancelar a subscrición a %s"
+
+#: lib/command.php:682 lib/command.php:705
+msgid "Command not yet implemented."
+msgstr "Aínda non se integrou esa orde."
+
+#: lib/command.php:685
+msgid "Notification off."
+msgstr "Desactivar a notificación."
+
+#: lib/command.php:687
+msgid "Can't turn off notification."
+msgstr "Non se pode desactivar a notificación."
+
+#: lib/command.php:708
+msgid "Notification on."
+msgstr "Activar a notificación."
+
+#: lib/command.php:710
+msgid "Can't turn on notification."
+msgstr "Non se pode activar a notificación."
+
+#: lib/command.php:723
+msgid "Login command is disabled"
+msgstr "A orde de identificación está desactivada"
+
+#: lib/command.php:734
+#, php-format
+msgid "This link is useable only once, and is good for only 2 minutes: %s"
+msgstr ""
+"Esta ligazón só se pode utilizar unha vez, e só nos próximos dous minutos: %s"
+
+#: lib/command.php:761
+#, php-format
+msgid "Unsubscribed %s"
+msgstr "Cancelou a subscrición a %s"
+
+#: lib/command.php:778
+msgid "You are not subscribed to anyone."
+msgstr "Non está subscrito a ninguén."
+
+#: lib/command.php:780
+msgid "You are subscribed to this person:"
+msgid_plural "You are subscribed to these people:"
+msgstr[0] "Vostede está subscrito a esta persoa:"
+msgstr[1] "Vostede está subscrito a estas persoas:"
+
+#: lib/command.php:800
+msgid "No one is subscribed to you."
+msgstr "Non hai ninguén subscrito a vostede."
+
+#: lib/command.php:802
+msgid "This person is subscribed to you:"
+msgid_plural "These people are subscribed to you:"
+msgstr[0] "Esta persoa está subscrita a vostede:"
+msgstr[1] "Estas persoas están subscritas a vostede:"
+
+#: lib/command.php:822
+msgid "You are not a member of any groups."
+msgstr "Non forma parte de ningún grupo."
+
+#: lib/command.php:824
+msgid "You are a member of this group:"
+msgid_plural "You are a member of these groups:"
+msgstr[0] "Vostede pertence a este grupo:"
+msgstr[1] "Vostede pertence a estes grupos:"
+
+#: lib/command.php:838
+msgid ""
+"Commands:\n"
+"on - turn on notifications\n"
+"off - turn off notifications\n"
+"help - show this help\n"
+"follow <nickname> - subscribe to user\n"
+"groups - lists the groups you have joined\n"
+"subscriptions - list the people you follow\n"
+"subscribers - list the people that follow you\n"
+"leave <nickname> - unsubscribe from user\n"
+"d <nickname> <text> - direct message to user\n"
+"get <nickname> - get last notice from user\n"
+"whois <nickname> - get profile info on user\n"
+"lose <nickname> - force user to stop following you\n"
+"fav <nickname> - add user's last notice as a 'fave'\n"
+"fav #<notice_id> - add notice with the given id as a 'fave'\n"
+"repeat #<notice_id> - repeat a notice with a given id\n"
+"repeat <nickname> - repeat the last notice from user\n"
+"reply #<notice_id> - reply to notice with a given id\n"
+"reply <nickname> - reply to the last notice from user\n"
+"join <group> - join group\n"
+"login - Get a link to login to the web interface\n"
+"drop <group> - leave group\n"
+"stats - get your stats\n"
+"stop - same as 'off'\n"
+"quit - same as 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
+msgstr ""
+"Ordes:\n"
+"on - activa as notificacións\n"
+"off - desactiva as notificacións\n"
+"help - amosa esta axuda\n"
+"follow <alcume> - subscribirse ao usuario\n"
+"groups - lista os grupos nos que está\n"
+"subscriptions - lista a xente á que segue\n"
+"subscribers - lista a xente que o segue\n"
+"leave <alcume> - cancela a subscrición ao usuario\n"
+"d <alcume> <texto> - mensaxe directa a un usuario\n"
+"get <alcume> - obter a última nota do usuario\n"
+"whois <alcume> - obtén a información do perfil do usuario\n"
+"lose <alcume> - facer que o usuario deixe de seguilo\n"
+"fav <alcume> - marcar como \"favorita\" a última nota do usuario\n"
+"fav #<id da nota> - marcar como \"favorita\" a nota coa id indicada\n"
+"repeat #<id da nota> - repetir a nota doa id indicada\n"
+"repeat <alcume> - repetir a última nota do usuario\n"
+"reply #<id da nota> - responder a unha nota coa id indicada\n"
+"reply <alcume> - responder á última nota do usuario\n"
+"join <grupo> - unirse ao grupo indicado\n"
+"login - obter un enderezo para identificarse na interface web\n"
+"drop <grupo> - deixar o grupo indicado\n"
+"stats - obter as súas estatísticas\n"
+"stop - idéntico a \"off\"\n"
+"quit - idéntico a \"off\"\n"
+"sub <alcume> - idéntico a \"follow\"\n"
+"unsub <alcume> - idéntico a \"leave\"\n"
+"last <alcume> - idéntico a \"get\"\n"
+"on <alcume> - aínda non se integrou\n"
+"off <alcume> - aínda non se integrou\n"
+"nudge <alcume> - facerlle un aceno ao usuario indicado\n"
+"invite <número de teléfono> - aínda non se integrou\n"
+"track <palabra> - aínda non se integrou\n"
+"untrack <palabra> - aínda non se integrou\n"
+"track off - aínda non se integrou\n"
+"untrack all - aínda non se integrou\n"
+"tracks - aínda non se integrou\n"
+"tracking - aínda non se integrou\n"
+
+#: lib/common.php:135
+msgid "No configuration file found. "
+msgstr "Non se atopou ningún ficheiro de configuración. "
+
+#: lib/common.php:136
+msgid "I looked for configuration files in the following places: "
+msgstr "Buscáronse ficheiros de configuración nos seguintes lugares: "
+
+#: lib/common.php:138
+msgid "You may wish to run the installer to fix this."
+msgstr "Pode que queira executar o instalador para arranxalo."
+
+#: lib/common.php:139
+msgid "Go to the installer."
+msgstr "Ir ao instalador."
+
+#: lib/connectsettingsaction.php:110
+msgid "IM"
+msgstr "MI"
+
+#: lib/connectsettingsaction.php:111
+msgid "Updates by instant messenger (IM)"
+msgstr "Actualizacións por mensaxería instantánea (MI)"
+
+#: lib/connectsettingsaction.php:116
+msgid "Updates by SMS"
+msgstr "Actualizacións por SMS"
+
+#: lib/connectsettingsaction.php:120
+msgid "Connections"
+msgstr "Conexións"
+
+#: lib/connectsettingsaction.php:121
+msgid "Authorized connected applications"
+msgstr "Aplicacións conectadas autorizadas"
+
+#: lib/dberroraction.php:60
+msgid "Database error"
+msgstr "Houbo un erro na base de datos"
+
+#: lib/designsettings.php:105
+msgid "Upload file"
+msgstr "Cargar un ficheiro"
+
+#: lib/designsettings.php:109
+msgid ""
+"You can upload your personal background image. The maximum file size is 2MB."
+msgstr ""
+"Pode cargar a súa imaxe de fondo persoal. O ficheiro non pode ocupar máis de "
+"2MB."
+
+#: lib/designsettings.php:418
+msgid "Design defaults restored."
+msgstr "Restableceuse o deseño por defecto."
+
+#: lib/disfavorform.php:114 lib/disfavorform.php:140
+msgid "Disfavor this notice"
+msgstr "Desmarcar esta nota como favorita"
+
+#: lib/favorform.php:114 lib/favorform.php:140
+msgid "Favor this notice"
+msgstr "Marcar esta nota como favorita"
+
+#: lib/favorform.php:140
+msgid "Favor"
+msgstr "Marcar como favorito"
+
+#: lib/feed.php:85
+msgid "RSS 1.0"
+msgstr "RSS 1.0"
+
+#: lib/feed.php:87
+msgid "RSS 2.0"
+msgstr "RSS 2.0"
+
+#: lib/feed.php:89
+msgid "Atom"
+msgstr "Atom"
+
+#: lib/feed.php:91
+msgid "FOAF"
+msgstr "Amigo dun amigo"
+
+#: lib/feedlist.php:64
+msgid "Export data"
+msgstr "Exportar os datos"
+
+#: lib/galleryaction.php:121
+msgid "Filter tags"
+msgstr "Filtrar as etiquetas"
+
+#: lib/galleryaction.php:131
+msgid "All"
+msgstr "Todas"
+
+#: lib/galleryaction.php:139
+msgid "Select tag to filter"
+msgstr "Escolla unha etiqueta a filtrar"
+
+#: lib/galleryaction.php:140
+msgid "Tag"
+msgstr "Etiqueta"
+
+#: lib/galleryaction.php:141
+msgid "Choose a tag to narrow list"
+msgstr "Escolla unha etiqueta para reducir a lista"
+
+#: lib/galleryaction.php:143
+msgid "Go"
+msgstr "Continuar"
+
+#: lib/grantroleform.php:91
+#, php-format
+msgid "Grant this user the \"%s\" role"
+msgstr "Outorgarlle a este usuario o rol \"%s\""
+
+#: lib/groupeditform.php:163
+msgid "URL of the homepage or blog of the group or topic"
+msgstr "URL do sitio web persoal ou blogue do grupo ou tema"
+
+#: lib/groupeditform.php:168
+msgid "Describe the group or topic"
+msgstr "Describa o grupo ou o tema"
+
+#: lib/groupeditform.php:170
+#, php-format
+msgid "Describe the group or topic in %d characters"
+msgstr "Describa o grupo ou o tema en %d caracteres"
+
+#: lib/groupeditform.php:179
+msgid ""
+"Location for the group, if any, like \"City, State (or Region), Country\""
+msgstr ""
+"Localidade do grupo, se a ten, como por exemplo \"Cidade, Provincia, "
+"Comunidade, País\""
+
+#: lib/groupeditform.php:187
+#, php-format
+msgid "Extra nicknames for the group, comma- or space- separated, max %d"
+msgstr ""
+"Alcumes adicionais para o grupo, separados por comas ou espazos, %d como "
+"máximo"
+
+#: lib/groupnav.php:85
+msgid "Group"
+msgstr "Grupo"
+
+#: lib/groupnav.php:101
+msgid "Blocked"
+msgstr "Bloqueado"
+
+#: lib/groupnav.php:102
+#, php-format
+msgid "%s blocked users"
+msgstr "%s usuarios bloqueados"
+
+#: lib/groupnav.php:108
+#, php-format
+msgid "Edit %s group properties"
+msgstr "Modificar as propiedades do grupo %s"
+
+#: lib/groupnav.php:113
+msgid "Logo"
+msgstr "Logotipo"
+
+#: lib/groupnav.php:114
+#, php-format
+msgid "Add or edit %s logo"
+msgstr "Engadir ou modificar o logotipo de %s"
+
+#: lib/groupnav.php:120
+#, php-format
+msgid "Add or edit %s design"
+msgstr "Engadir ou modificar o deseño de %s"
+
+#: lib/groupsbymemberssection.php:71
+msgid "Groups with most members"
+msgstr "Grupos con máis membros"
+
+#: lib/groupsbypostssection.php:71
+msgid "Groups with most posts"
+msgstr "Grupos con máis notas"
+
+#: lib/grouptagcloudsection.php:56
+#, php-format
+msgid "Tags in %s group's notices"
+msgstr "Etiquetas nas notas do grupo %s"
+
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
+msgid "This page is not available in a media type you accept"
+msgstr "Esta páxina non está dispoñible nun formato axeitado para vostede"
+
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Non se soporta o formato da imaxe."
+
+#: lib/imagefile.php:88
+#, php-format
+msgid "That file is too big. The maximum file size is %s."
+msgstr "Ese ficheiro é grande de máis. O tamaño máximo por ficheiro son %s."
+
+#: lib/imagefile.php:93
+msgid "Partial upload."
+msgstr "Carga parcial."
+
+#: lib/imagefile.php:101 lib/mediafile.php:170
+msgid "System error uploading file."
+msgstr "Houbo un erro no sistema ao cargar o ficheiro."
+
+#: lib/imagefile.php:109
+msgid "Not an image or corrupt file."
+msgstr "O ficheiro está mal ou non é unha imaxe."
+
+#: lib/imagefile.php:122
+msgid "Lost our file."
+msgstr "Perdeuse o noso ficheiro."
+
+#: lib/imagefile.php:163 lib/imagefile.php:224
+msgid "Unknown file type"
+msgstr "Non se coñece o tipo de ficheiro"
+
+#: lib/imagefile.php:244
+msgid "MB"
+msgstr "MB"
+
+#: lib/imagefile.php:246
+msgid "kB"
+msgstr "kB"
+
+#: lib/jabber.php:387
+#, php-format
+msgid "[%s]"
+msgstr "[%s]"
+
+#: lib/jabber.php:567
+#, php-format
+msgid "Unknown inbox source %d."
+msgstr "Non se coñece a fonte %d da caixa de entrada."
+
+#: lib/joinform.php:114
+msgid "Join"
+msgstr "Unirse"
+
+#: lib/leaveform.php:114
+msgid "Leave"
+msgstr "Deixar"
+
+#: lib/logingroupnav.php:80
+msgid "Login with a username and password"
+msgstr "Identificarse cun nome de usuario e contrasinal"
+
+#: lib/logingroupnav.php:86
+msgid "Sign up for a new account"
+msgstr "Rexistrar unha conta nova"
+
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
+msgid "Email address confirmation"
+msgstr "Confirmación do enderezo de correo electrónico"
+
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
+#, php-format
+msgid ""
+"Hey, %s.\n"
+"\n"
+"Someone just entered this email address on %s.\n"
+"\n"
+"If it was you, and you want to confirm your entry, use the URL below:\n"
+"\n"
+"\t%s\n"
+"\n"
+"If not, just ignore this message.\n"
+"\n"
+"Thanks for your time, \n"
+"%s\n"
+msgstr ""
+"Ola, %s:\n"
+"\n"
+"Alguén acaba de introducir este enderezo de correo electrónico en %s.\n"
+"\n"
+"Se foi vostede, e quere confirmalo, utilice o seguinte URL:\n"
+"\n"
+"%s\n"
+"\n"
+"En caso contrario, simplemente ignore esta mensaxe.\n"
+"\n"
+"Grazas polo seu tempo, \n"
+"%s\n"
+
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
+#, php-format
+msgid "%1$s is now listening to your notices on %2$s."
+msgstr "Agora %1$s segue as súas notas en %2$s."
+
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Se cre que esta conta se está usando con fins abusivos, pode bloquear a súa "
+"lista de subscritores e informar disto aos administradores do sitio en %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
+msgid ""
+"%1$s is now listening to your notices on %2$s.\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"Faithfully yours,\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Change your email address or notification options at %8$s\n"
+msgstr ""
+"Agora %1$s segue as súas notas en %2$s.\n"
+"\n"
+"%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"Atentamente,\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Modifique o seu enderezo de correo electrónico ou as súas preferencias de "
+"notificación en %8$s\n"
+
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
+msgid "Bio: %s"
+msgstr "Biografía: %s"
+
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
+#, php-format
+msgid "New email address for posting to %s"
+msgstr "Novo enderezo de correo electrónico para publicar en %s"
+
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
+#, php-format
+msgid ""
+"You have a new posting address on %1$s.\n"
+"\n"
+"Send email to %2$s to post new messages.\n"
+"\n"
+"More email instructions at %3$s.\n"
+"\n"
+"Faithfully yours,\n"
+"%4$s"
+msgstr ""
+"Ten un novo enderezo de correo electrónico para publicar en %1$s.\n"
+"\n"
+"Envíe un correo electrónico a %2$s para publicar mensaxes novas.\n"
+"\n"
+"Máis información en %3$s.\n"
+"\n"
+"Atentamente,\n"
+"%4$s"
+
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
+#, php-format
+msgid "%s status"
+msgstr "Estado de %s"
+
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
+msgid "SMS confirmation"
+msgstr "Confirmación dos SMS"
+
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s: utilice o seguinte código para confirmar que o número de teléfono é seu:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
+#, php-format
+msgid "You've been nudged by %s"
+msgstr "%s fíxolle un aceno"
+
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
+#, php-format
+msgid ""
+"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
+"to post some news.\n"
+"\n"
+"So let's hear from you :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%4$s\n"
+msgstr ""
+"%1$s (%2$s) pregúntase que estivo a facer vostede estes días, e convídao a "
+"publicar algunha nova.\n"
+"\n"
+"Así que anímese, conte algo :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"Non responda a esta mensaxe, non lle chegará ao remitente.\n"
+"\n"
+"Atentamente,\n"
+"%4$s\n"
+
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
+#, php-format
+msgid "New private message from %s"
+msgstr "Nova mensaxe privada de %s"
+
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
+#, php-format
+msgid ""
+"%1$s (%2$s) sent you a private message:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"You can reply to their message here:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%5$s\n"
+msgstr ""
+"%1$s (%2$s) envioulle unha mensaxe privada:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"Pode responder á mensaxe aquí:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Non responda a esta mensaxe, non lle chegará ao remitente.\n"
+"\n"
+"Atentamente,\n"
+"%5$s\n"
+
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
+#, php-format
+msgid "%s (@%s) added your notice as a favorite"
+msgstr "%s (@%s) marcou a súa nota como favorita"
+
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
+#, php-format
+msgid ""
+"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
+"\n"
+"The URL of your notice is:\n"
+"\n"
+"%3$s\n"
+"\n"
+"The text of your notice is:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see the list of %1$s's favorites here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Faithfully yours,\n"
+"%6$s\n"
+msgstr ""
+"%1$s (@%7$s) acaba de marcar a súa nota en %2$s coma unha das súas "
+"favoritas.\n"
+"\n"
+"O URL da súa nota é:\n"
+"\n"
+"%3$s\n"
+"\n"
+"O texto da nota di:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Pode ver a lista das notas favoritas de %1$s en:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Atentamente,\n"
+"%6$s\n"
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Pode ler a conversa completa en:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr "%s (@%s) enviou unha nota á súa atención"
+
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
+#, php-format
+msgid ""
+"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
+"\n"
+"The notice is here:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"It reads:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
+msgstr ""
+"%1$s (@%9$s) acaba de enviar unha nota á súa atención (unha resposta) en %2"
+"$s.\n"
+"\n"
+"A nota está en:\n"
+"\n"
+"%3$s\n"
+"\n"
+"Di:\n"
+"\n"
+"%4$s\n"
+"\n"
+"%5$sPode responder en:\n"
+"\n"
+"%6$s\n"
+"\n"
+"A lista de todas as respostas está en:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Atentamente,\n"
+"%2$s\n"
+"\n"
+"P.S.: pode desactivar estas notificacións por correo electrónico en %8$s\n"
+
+#: lib/mailbox.php:89
+msgid "Only the user can read their own mailboxes."
+msgstr "Só o usuario pode ler as súas caixas de entrada."
+
+#: lib/mailbox.php:139
+msgid ""
+"You have no private messages. You can send private message to engage other "
+"users in conversation. People can send you messages for your eyes only."
+msgstr ""
+"Non ten mensaxes privadas. Pode enviar mensaxes privadas para conversar con "
+"outros usuarios. A xente pode enviarlle mensaxes para que só as lea vostede."
+
+#: lib/mailbox.php:227 lib/noticelist.php:505
+msgid "from"
+msgstr "de"
+
+#: lib/mailhandler.php:37
+msgid "Could not parse message."
+msgstr "Non se puido analizar a mensaxe."
+
+#: lib/mailhandler.php:42
+msgid "Not a registered user."
+msgstr "Non está rexistrado."
+
+#: lib/mailhandler.php:46
+msgid "Sorry, that is not your incoming email address."
+msgstr "Ese non é o seu enderezo de correo electrónico para recibir correos."
+
+#: lib/mailhandler.php:50
+msgid "Sorry, no incoming email allowed."
+msgstr "Non se permite recibir correo electrónico."
+
+#: lib/mailhandler.php:228
+#, php-format
+msgid "Unsupported message type: %s"
+msgstr "Non se soporta o tipo de mensaxe: %s"
+
+#: lib/mediafile.php:98 lib/mediafile.php:123
+msgid "There was a database error while saving your file. Please try again."
+msgstr ""
+"Houbo un erro na base de datos ao gardar o seu ficheiro. Volva intentalo."
+
+#: lib/mediafile.php:142
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
+msgstr "O ficheiro subido supera a directiva upload_max_filesize no php.ini."
+
+#: lib/mediafile.php:147
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form."
+msgstr ""
+"O ficheiro subido supera a directiva MAX_FILE_SIZE especificada no "
+"formulario HTML."
+
+#: lib/mediafile.php:152
+msgid "The uploaded file was only partially uploaded."
+msgstr "O ficheiro só se subiu parcialmente."
+
+#: lib/mediafile.php:159
+msgid "Missing a temporary folder."
+msgstr "Falta un cartafol temporal."
+
+#: lib/mediafile.php:162
+msgid "Failed to write file to disk."
+msgstr "Non se puido escribir o ficheiro no disco."
+
+#: lib/mediafile.php:165
+msgid "File upload stopped by extension."
+msgstr "Interrompeuse a carga do ficheiro por mor da extensión."
+
+#: lib/mediafile.php:179 lib/mediafile.php:217
+msgid "File exceeds user's quota."
+msgstr "O ficheiro supera a cota do usuario."
+
+#: lib/mediafile.php:197 lib/mediafile.php:234
+msgid "File could not be moved to destination directory."
+msgstr "Non se puido mover o ficheiro ao directorio de destino."
+
+#: lib/mediafile.php:202 lib/mediafile.php:238
+msgid "Could not determine file's MIME type."
+msgstr "Non se puido determinar o tipo MIME do ficheiro."
+
+#: lib/mediafile.php:318
+#, php-format
+msgid " Try using another %s format."
+msgstr "Inténteo utilizando outro formato %s."
+
+#: lib/mediafile.php:323
+#, php-format
+msgid "%s is not a supported file type on this server."
+msgstr "Neste servidor non se soporta o tipo de ficheiro %s."
+
+#: lib/messageform.php:120
+msgid "Send a direct notice"
+msgstr "Enviar unha nota directa"
+
+#: lib/messageform.php:146
+msgid "To"
+msgstr "A"
+
+#: lib/messageform.php:159 lib/noticeform.php:185
+msgid "Available characters"
+msgstr "Caracteres dispoñibles"
+
+#: lib/messageform.php:178 lib/noticeform.php:236
+msgctxt "Send button for sending notice"
+msgid "Send"
+msgstr "Enviar"
+
+#: lib/noticeform.php:160
+msgid "Send a notice"
+msgstr "Enviar unha nota"
+
+#: lib/noticeform.php:173
+#, php-format
+msgid "What's up, %s?"
+msgstr "Que hai de novo, %s?"
+
+#: lib/noticeform.php:192
+msgid "Attach"
+msgstr "Anexar"
+
+#: lib/noticeform.php:196
+msgid "Attach a file"
+msgstr "Anexar un ficheiro"
+
+#: lib/noticeform.php:212
+msgid "Share my location"
+msgstr "Publicar a miña localidade"
+
+#: lib/noticeform.php:215
+msgid "Do not share my location"
+msgstr "Non publicar a miña localidade"
+
+#: lib/noticeform.php:216
+msgid ""
+"Sorry, retrieving your geo location is taking longer than expected, please "
+"try again later"
+msgstr ""
+"Estase tardando máis do esperado en obter a súa xeolocalización, vólvao "
+"intentar máis tarde"
+
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
+msgid "N"
+msgstr "N"
+
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
+msgid "S"
+msgstr "S"
+
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
+msgid "E"
+msgstr "L"
+
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
+msgid "W"
+msgstr "O"
+
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
+msgid "at"
+msgstr "en"
+
+#: lib/noticelist.php:567
+msgid "in context"
+msgstr "no contexto"
+
+#: lib/noticelist.php:602
+msgid "Repeated by"
+msgstr "Repetida por"
+
+#: lib/noticelist.php:629
+msgid "Reply to this notice"
+msgstr "Responder a esta nota"
+
+#: lib/noticelist.php:630
+msgid "Reply"
+msgstr "Responder"
+
+#: lib/noticelist.php:674
+msgid "Notice repeated"
+msgstr "Repetiuse a nota"
+
+#: lib/nudgeform.php:116
+msgid "Nudge this user"
+msgstr "Facerlle un aceno a este usuario"
+
+#: lib/nudgeform.php:128
+msgid "Nudge"
+msgstr "Facer un aceno"
+
+#: lib/nudgeform.php:128
+msgid "Send a nudge to this user"
+msgstr "Facerlle un aceno a este usuario"
+
+#: lib/oauthstore.php:283
+msgid "Error inserting new profile"
+msgstr "Houbo un erro ao inserir o novo perfil"
+
+#: lib/oauthstore.php:291
+msgid "Error inserting avatar"
+msgstr "Houbo un erro ao inserir o avatar"
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Houbo un erro ao actualizar o perfil remoto"
+
+#: lib/oauthstore.php:311
+msgid "Error inserting remote profile"
+msgstr "Houbo un erro ao inserir o perfil remoto"
+
+#: lib/oauthstore.php:345
+msgid "Duplicate notice"
+msgstr "Nota duplicada"
+
+#: lib/oauthstore.php:490
+msgid "Couldn't insert new subscription."
+msgstr "Non se puido inserir unha subscrición nova."
+
+#: lib/personalgroupnav.php:99
+msgid "Personal"
+msgstr "Persoal"
+
+#: lib/personalgroupnav.php:104
+msgid "Replies"
+msgstr "Respostas"
+
+#: lib/personalgroupnav.php:114
+msgid "Favorites"
+msgstr "Favoritas"
+
+#: lib/personalgroupnav.php:125
+msgid "Inbox"
+msgstr "Caixa de entrada"
+
+#: lib/personalgroupnav.php:126
+msgid "Your incoming messages"
+msgstr "As mensaxes recibidas"
+
+#: lib/personalgroupnav.php:130
+msgid "Outbox"
+msgstr "Caixa de saída"
+
+#: lib/personalgroupnav.php:131
+msgid "Your sent messages"
+msgstr "As mensaxes enviadas"
+
+#: lib/personaltagcloudsection.php:56
+#, php-format
+msgid "Tags in %s's notices"
+msgstr "Etiquetas nas notas de %s"
+
+#: lib/plugin.php:115
+msgid "Unknown"
+msgstr "Descoñecida"
+
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+msgid "Subscriptions"
+msgstr "Subscricións"
+
+#: lib/profileaction.php:126
+msgid "All subscriptions"
+msgstr "Todas as subscricións"
+
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
+msgid "Subscribers"
+msgstr "Subscritores"
+
+#: lib/profileaction.php:161
+msgid "All subscribers"
+msgstr "Todos os subscritores"
+
+#: lib/profileaction.php:191
+msgid "User ID"
+msgstr "ID do usuario"
+
+#: lib/profileaction.php:196
+msgid "Member since"
+msgstr "Membro dende"
+
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Media diaria"
+
+#: lib/profileaction.php:264
+msgid "All groups"
+msgstr "Todos os grupos"
+
+#: lib/profileformaction.php:123
+msgid "Unimplemented method."
+msgstr "Aínda non se implantou o método."
+
+#: lib/publicgroupnav.php:78
+msgid "Public"
+msgstr "Públicas"
+
+#: lib/publicgroupnav.php:82
+msgid "User groups"
+msgstr "Grupos do usuario"
+
+#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
+msgid "Recent tags"
+msgstr "Últimas etiquetas"
+
+#: lib/publicgroupnav.php:88
+msgid "Featured"
+msgstr "Salientadas"
+
+#: lib/publicgroupnav.php:92
+msgid "Popular"
+msgstr "Populares"
+
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Sen argumentos \"return-to\"."
+
+#: lib/repeatform.php:107
+msgid "Repeat this notice?"
+msgstr "Quere repetir esta nota?"
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Si"
+
+#: lib/repeatform.php:132
+msgid "Repeat this notice"
+msgstr "Repetir esta nota"
+
+#: lib/revokeroleform.php:91
+#, php-format
+msgid "Revoke the \"%s\" role from this user"
+msgstr "Revogarlle o rol \"%s\" a este usuario"
+
+#: lib/router.php:709
+msgid "No single user defined for single-user mode."
+msgstr "Non se estableceu ningún usuario único para o modo de usuario único."
+
+#: lib/sandboxform.php:67
+msgid "Sandbox"
+msgstr "Illar"
+
+#: lib/sandboxform.php:78
+msgid "Sandbox this user"
+msgstr "Illar a este usuario"
+
+#: lib/searchaction.php:120
+msgid "Search site"
+msgstr "Buscar no sitio"
+
+#: lib/searchaction.php:126
+msgid "Keyword(s)"
+msgstr "Termos de busca"
+
+#: lib/searchaction.php:127
+msgid "Search"
+msgstr "Buscar"
+
+#: lib/searchaction.php:162
+msgid "Search help"
+msgstr "Buscar na axuda"
+
+#: lib/searchgroupnav.php:80
+msgid "People"
+msgstr "Xente"
+
+#: lib/searchgroupnav.php:81
+msgid "Find people on this site"
+msgstr "Atopar xente neste sitio"
+
+#: lib/searchgroupnav.php:83
+msgid "Find content of notices"
+msgstr "Buscar nos contidos das notas"
+
+#: lib/searchgroupnav.php:85
+msgid "Find groups on this site"
+msgstr "Buscar grupos neste sitio"
+
+#: lib/section.php:89
+msgid "Untitled section"
+msgstr "Sección sen título"
+
+#: lib/section.php:106
+msgid "More..."
+msgstr "Máis..."
+
+#: lib/silenceform.php:67
+msgid "Silence"
+msgstr "Silenciar"
+
+#: lib/silenceform.php:78
+msgid "Silence this user"
+msgstr "Silenciar a este usuario"
+
+#: lib/subgroupnav.php:83
+#, php-format
+msgid "People %s subscribes to"
+msgstr "Persoas ás que está subscrito %s"
+
+#: lib/subgroupnav.php:91
+#, php-format
+msgid "People subscribed to %s"
+msgstr "Persoas subscritas a %s"
+
+#: lib/subgroupnav.php:99
+#, php-format
+msgid "Groups %s is a member of"
+msgstr "Grupos aos que pertence %s"
+
+#: lib/subgroupnav.php:105
+msgid "Invite"
+msgstr "Convidar"
+
+#: lib/subgroupnav.php:106
+#, php-format
+msgid "Invite friends and colleagues to join you on %s"
+msgstr "Convide a amigos e compañeiros a unírselle en %s"
+
+#: lib/subscriberspeopleselftagcloudsection.php:48
+#: lib/subscriptionspeopleselftagcloudsection.php:48
+msgid "People Tagcloud as self-tagged"
+msgstr "Nube de etiquetas que as persoas se puxeron a si mesmas"
+
+#: lib/subscriberspeopletagcloudsection.php:48
+#: lib/subscriptionspeopletagcloudsection.php:48
+msgid "People Tagcloud as tagged"
+msgstr "Nube de etiquetas que lle puxo a outras persoas"
+
+#: lib/tagcloudsection.php:56
+msgid "None"
+msgstr "Ningún"
+
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"O servidor non pode xestionar as cargas de temas visuais sen soporte para o "
+"formato ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "O ficheiro do tema visual non existe ou a subida fallou."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Non se puido gardar o tema visual."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Tema visual inválido: a estrutura do directorio é incorrecta"
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"O tema visual cargado é grande de máis; o tamaño descomprimido non pode "
+"superar os %d bytes."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Arquivo de tema visual inválido: falta o ficheiro css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"O tema visual contén un ficheiro inválido ou nome de cartafol incorrecto. "
+"Limíteo a letras ASCII, díxitos, barras baixas e signos menos."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "O tema visual contén o tipo de ficheiro \".%s\". Non está permitido."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Houbo un erro ao abrir o arquivo do tema visual."
+
+#: lib/topposterssection.php:74
+msgid "Top posters"
+msgstr "Os que máis publican"
+
+#: lib/unsandboxform.php:69
+msgid "Unsandbox"
+msgstr "Deixar de illar"
+
+#: lib/unsandboxform.php:80
+msgid "Unsandbox this user"
+msgstr "Deixar de illar a este usuario"
+
+#: lib/unsilenceform.php:67
+msgid "Unsilence"
+msgstr "Dar voz"
+
+#: lib/unsilenceform.php:78
+msgid "Unsilence this user"
+msgstr "Darlle voz a este usuario"
+
+#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
+msgid "Unsubscribe from this user"
+msgstr "Cancelar a subscrición a este usuario"
+
+#: lib/unsubscribeform.php:137
+msgid "Unsubscribe"
+msgstr "Cancelar a subscrición"
+
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "O usuario %s (%d) non ten perfil."
+
+#: lib/userprofile.php:117
+msgid "Edit Avatar"
+msgstr "Modificar o avatar"
+
+#: lib/userprofile.php:234 lib/userprofile.php:248
+msgid "User actions"
+msgstr "Accións do usuario"
+
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Procedendo a borrar o usuario..."
+
+#: lib/userprofile.php:263
+msgid "Edit profile settings"
+msgstr "Modificar a configuración do perfil"
+
+#: lib/userprofile.php:264
+msgid "Edit"
+msgstr "Modificar"
+
+#: lib/userprofile.php:287
+msgid "Send a direct message to this user"
+msgstr "Enviarlle unha mensaxe directa a este usuario"
+
+#: lib/userprofile.php:288
+msgid "Message"
+msgstr "Mensaxe"
+
+#: lib/userprofile.php:326
+msgid "Moderate"
+msgstr "Moderar"
+
+#: lib/userprofile.php:364
+msgid "User role"
+msgstr "Rol do usuario"
+
+#: lib/userprofile.php:366
+msgctxt "role"
+msgid "Administrator"
+msgstr "Administrador"
+
+#: lib/userprofile.php:367
+msgctxt "role"
+msgid "Moderator"
+msgstr "Moderador"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
+msgid "a few seconds ago"
+msgstr "hai uns segundos"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
+msgid "about a minute ago"
+msgstr "hai como un minuto"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
+#, php-format
+msgid "about %d minutes ago"
+msgstr "hai como %d minutos"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
+msgid "about an hour ago"
+msgstr "hai como unha hora"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
+#, php-format
+msgid "about %d hours ago"
+msgstr "hai como %d horas"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
+msgid "about a day ago"
+msgstr "hai como un día"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
+#, php-format
+msgid "about %d days ago"
+msgstr "hai como %d días"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
+msgid "about a month ago"
+msgstr "hai como un mes"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
+#, php-format
+msgid "about %d months ago"
+msgstr "hai como %d meses"
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
+msgid "about a year ago"
+msgstr "hai como un ano"
+
+#: lib/webcolor.php:82
+#, php-format
+msgid "%s is not a valid color!"
+msgstr "%s non é unha cor correcta!"
+
+#: lib/webcolor.php:123
+#, php-format
+msgid "%s is not a valid color! Use 3 or 6 hex chars."
+msgstr "%s non é unha cor correcta! Use 3 ou 6 caracteres hexadecimais."
+
+#: lib/xmppmanager.php:403
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr ""
+"A mensaxe é longa de máis, o límite de caracteres é de %1$d, e enviou %2$d."
diff --git a/locale/he/LC_MESSAGES/statusnet.po b/locale/he/LC_MESSAGES/statusnet.po
index 49f229a96..64c36e84e 100644
--- a/locale/he/LC_MESSAGES/statusnet.po
+++ b/locale/he/LC_MESSAGES/statusnet.po
@@ -7,12 +7,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:49:57+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:32+0000\n"
"Language-Team: Hebrew\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: he\n"
"X-Message-Group: out-statusnet\n"
@@ -20,7 +20,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "קבל"
@@ -76,86 +76,91 @@ msgstr "×ין משתמש ×›×–×”."
msgid "Save access settings"
msgstr "הגדרות"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "שמור"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "×ין הודעה כזו."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "×ין משתמש ×›×–×”."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s וחברי×"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s וחברי×"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "הזנות ×”×—×‘×¨×™× ×©×œ %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "הזנות ×”×—×‘×¨×™× ×©×œ %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "הזנות ×”×—×‘×¨×™× ×©×œ %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,79 +168,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s וחברי×"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "קוד ×”×ישור ×œ× × ×ž×¦×."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "עידכון המשתמש נכשל."
@@ -245,7 +252,7 @@ msgstr "עידכון המשתמש נכשל."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "למשתמש ×ין פרופיל."
@@ -256,9 +263,9 @@ msgid "Could not save profile."
msgstr "שמירת הפרופיל נכשלה."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -316,48 +323,49 @@ msgstr ""
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr ""
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "×–×” ×רוך מידי. ×ורך מירבי להודעה ×”×•× 140 ×ותיות."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr ""
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "זהו כבר זיהוי ה-Jabber שלך."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr ""
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "נכשלה ההפניה לשרת: %s"
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -374,8 +382,8 @@ msgstr "נכשלה ההפניה לשרת: %s"
msgid "You cannot unfollow yourself."
msgstr "עידכון המשתמש נכשל."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -388,118 +396,131 @@ msgstr "עידכון המשתמש נכשל."
msgid "Could not find target user."
msgstr "עידכון המשתמש נכשל."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "כינוי יכול להכיל רק ×ותיות ×נגליות קטנות ומספרי×, ×•×œ×œ× ×¨×•×•×—×™×."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "כינוי ×–×” כבר תפוס. נסה כינוי ×חר."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "×©× ×ž×©×ª×ž×© ×œ× ×—×•×§×™."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "ל×תר הבית יש כתובת ×œ× ×—×•×§×™×ª."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "×”×©× ×”×ž×œ× ×רוך מידי (מותרות 255 ×ותיות בלבד)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "הביוגרפיה ×רוכה מידי (לכל היותר 140 ×ותיות)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "×©× ×”×ž×™×§×•× ×רוך מידי (מותר עד 255 ×ותיות)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "כתובת ×תר הבית '%s' ××™× ×” חוקית"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "כינוי ×–×” כבר תפוס. נסה כינוי ×חר."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "×œ× × ×ž×¦×"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "כבר נכנסת למערכת!"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "נכשלה ההפניה לשרת: %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "נכשלה יצירת OpenID מתוך: %s"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "פרופיל"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr ""
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ההעלה"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -510,17 +531,17 @@ msgid "Invalid token."
msgstr "גודל ×œ× ×—×•×§×™."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -554,12 +575,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "הגשת טופס ×œ× ×¦×¤×•×™×”."
@@ -579,21 +603,23 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
#, fuzzy
msgid "Account"
msgstr "×ודות"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "כינוי"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "סיסמה"
@@ -609,11 +635,11 @@ msgstr ""
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -632,61 +658,66 @@ msgstr "×œ× × ×™×ª×Ÿ ×œ×”×™×¨×©× ×œ×œ× ×”×¡×›×ž×” לרשיון"
msgid "Already repeated that notice."
msgstr "כבר נכנסת למערכת!"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "התמונה עודכנה."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "×–×” ×רוך מידי. ×ורך מירבי להודעה ×”×•× 140 ×ותיות."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+#, fuzzy
+msgid "Not found."
msgstr "×œ× × ×ž×¦×"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "פורמט התמונה ×ינו נתמך."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "הסטטוס של %1$s ב-%2$s "
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "מיקרובלוג מ×ת %s"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "הסטטוס של %1$s ב-%2$s "
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -701,20 +732,19 @@ msgstr "תגובת עבור %s"
msgid "Repeats of %s"
msgstr "תגובת עבור %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "מיקרובלוג מ×ת %s"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "×œ× × ×ž×¦×"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
#, fuzzy
@@ -736,8 +766,9 @@ msgstr "×ין גודל."
msgid "Invalid size."
msgstr "גודל ×œ× ×—×•×§×™."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "תמונה"
@@ -747,10 +778,11 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
+msgstr "למשתמש ×ין פרופיל."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -769,7 +801,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
#, fuzzy
msgid "Delete"
msgstr "מחק"
@@ -782,23 +814,28 @@ msgstr "ההעלה"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "העל××” חלקית."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "התמונה עודכנה."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "עדכון התמונה נכשל."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "התמונה עודכנה."
@@ -808,41 +845,58 @@ msgstr "התמונה עודכנה."
msgid "You already blocked that user."
msgstr "כבר נכנסת למערכת!"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
#, fuzzy
msgid "Block user"
msgstr "×ין משתמש ×›×–×”."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "ל×"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "×ין משתמש ×›×–×”."
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "כן"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "×ין משתמש ×›×–×”."
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -855,8 +909,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "×ין הודעה כזו."
@@ -889,9 +943,11 @@ msgstr ""
msgid "Unblock this user"
msgstr "×ין משתמש ×›×–×”."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "תגובת עבור %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -905,34 +961,44 @@ msgstr "קוד ×”×ישור ×œ× × ×ž×¦×."
msgid "That confirmation code is not for you!"
msgstr "קוד ×”×ישור ×”×–×” ×ינו מיועד לך!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "סוג ×œ× ×ž×–×•×”×” של כתובת %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "כתובת זו כבר ×ושרה."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "עידכון המשתמש נכשל."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr ""
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "×שר כתובת"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "הכתובת \"%s\" ×ושרה עבור חשבונך."
@@ -943,7 +1009,7 @@ msgid "Conversation"
msgstr "מיקו×"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "הודעות"
@@ -965,7 +1031,7 @@ msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -981,23 +1047,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "×ין הודעה כזו."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "ת×ר ×ת עצמך ו×ת נוש××™ העניין שלך ב-140 ×ותיות"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "×œ× ×ž×—×•×‘×¨."
@@ -1020,12 +1088,14 @@ msgstr ""
msgid "Are you sure you want to delete this notice?"
msgstr ""
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "×ין הודעה כזו."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr ""
@@ -1050,135 +1120,156 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "×ין משתמש ×›×–×”."
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "גודל ×œ× ×—×•×§×™."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "שנה סיסמה"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "הודעה חדשה"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "שנה"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "הודעה חדשה"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "הודעה חדשה"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "×–×” ×רוך מידי. ×ורך מירבי להודעה ×”×•× 140 ×ותיות."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "שנה סיסמה"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "התחבר"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "חיפוש"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "טקסט"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "היכנס"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "שמור"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1292,12 +1383,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "הביוגרפיה ×רוכה מידי (לכל היותר 140 ×ותיות)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "כתובת ×תר הבית '%s' ××™× ×” חוקית"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "עידכון המשתמש נכשל."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "שמירת מידע התמונה נכשל"
@@ -1307,180 +1404,240 @@ msgstr "שמירת מידע התמונה נכשל"
msgid "Options saved."
msgstr "ההגדרות נשמרו."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "הגדרות הפרופיל"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "כתבות"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "כתובת ×ž×¡×¨×™× ×ž×™×“×™×™×"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr ""
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "הסר"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "בטל"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "כתובת ×ž×¡×¨×™× ×ž×™×“×™×™×"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr ""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "הוסף"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "חדש"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "העדפות"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr ""
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "העדפות נשמרו."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr ""
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr ""
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr ""
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "הכנסת קוד ×”×ישור נכשלה."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "×ין ×ישור ממתין שניתן לבטל."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "זוהי כתובת ×ž×¡×¨×™× ×ž×™×“×™×™× ×©×’×•×™×”."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "×”×ישור בוטל."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr ""
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "הכתובת הוסרה."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1602,8 +1759,9 @@ msgstr "המרת ×סימון הבקשה ל×סימון גישה ×œ× ×”×¦×œ×™×—
msgid "Remote service uses unknown version of OMB protocol."
msgstr "גירסה ×œ× ×ž×•×›×¨×ª של פרוטוקול OMB"
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "שגי××” בעדכון פרופיל מרוחק"
#: actions/getfile.php:79
@@ -1637,13 +1795,13 @@ msgstr "למשתמש ×ין פרופיל."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
@@ -1666,12 +1824,12 @@ msgstr "למשתמש ×ין פרופיל."
msgid "User is not a member of group."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "×ין משתמש ×›×–×”."
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1679,17 +1837,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "נכשלה ההפניה לשרת: %s"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "×ין משתמש ×›×–×”."
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1734,11 +1894,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "למשתמש ×ין פרופיל."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1771,34 +1926,38 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr ""
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "מיקרובלוג מ×ת %s"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "קבוצות"
@@ -1818,7 +1977,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "צור חשבון חדש"
@@ -1871,12 +2030,16 @@ msgstr "למשתמש ×ין פרופיל."
msgid "Error removing the block."
msgstr "שגי××” בשמירת המשתמש."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "הגדרות ×ž×¡×¨×™× ×ž×™×“×™×™×"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1885,16 +2048,26 @@ msgstr ""
"×פשר לשלוח ולקבל בודעות דרך Jabber/GTalk [instant messages](%%doc.im%%) הגדר "
"×ת כתובתך והעדפותיך למטה."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "כתובת ×ž×¡×¨×™× ×ž×™×“×™×™×"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "כתובת מ×ושרת נוכחית של Jabber/GTalk."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1903,12 +2076,9 @@ msgstr ""
"מחכה ל×ישור כתובת זו. בדוק ×ת חשבון ×”-Jabber/GTalk שלך לקבלת מסר ×¢× ×”×•×¨×ות "
"נוספותץ (×”×× ×”×•×¡×¤×ª ×ת %s לרשימת ×”×—×‘×¨×™× ×©×œ×š?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "כתובת ×ž×¡×¨×™× ×ž×™×“×™×™×"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1917,43 +2087,65 @@ msgstr ""
"כתובת Jabber ×ו GTalk, כגון \"UserName@example.org\". הוסף ×ת %s ×ל רשימת "
"×”×—×‘×¨×™× ×‘×ª×•×›× ×ª ×”×”×ž×¡×¨×™× ×”×ž×™×“×™×™× ×ו GTalk שלך."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "העדפות"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "שלח לי הודעות דרך Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "×¤×¨×¡× ×”×•×“×¢×” כששורת הסטטוס שלי ב-Jabber/GTalk מתעדכנת."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "העדפות נשמרו."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "×ין זיהוי Jabber ×›×–×”."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "×œ× × ×™×ª×Ÿ לנרמל ×ת זהות ×”-Jabber ×”×–×”"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "×œ× ×¢×•×ž×“ ×‘×›×œ×œ×™× ×œ×–×™×”×•×™ Jabber"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "זהו כבר זיהוי ה-Jabber שלך."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "זיהוי ×”-Jabber כבר שייך למשתמש ×חר."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1962,10 +2154,35 @@ msgstr ""
"קוד ×ישור נשלח ×ל כתובת ×”×ž×¡×¨×™× ×”×ž×™×“×™×™× ×©×”×•×¡×¤×ª. עליך ל×שר ×ת %s לשליחת ×ž×¡×¨×™× "
"×ž×™×“×™×™× ×ליך."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "זוהי כתובת ×ž×¡×¨×™× ×ž×™×“×™×™× ×©×’×•×™×”."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "הכנסת קוד ×”×ישור נכשלה."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "×”×ישור בוטל."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "זהו ×œ× ×–×™×”×•×™ ×”-Jabber שלך."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "הכתובת הוסרה."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1985,9 +2202,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "עידכון המשתמש נכשל."
#: actions/invite.php:72
#, php-format
@@ -2006,7 +2223,9 @@ msgstr ""
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2054,12 +2273,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "שלח"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2099,7 +2320,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "×ין כינוי"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr ""
@@ -2108,60 +2331,66 @@ msgstr ""
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "הסטטוס של %1$s ב-%2$s "
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "כבר מחובר."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "×©× ×ž×©×ª×ž×© ×ו סיסמה ×œ× × ×›×•× ×™×."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "×œ× ×ž×•×¨×©×”."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "היכנס"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "זכור ×ותי"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "בעתיד התחבר ×וטומטית; ×œ× ×œ×©×™×ž×•×© ×‘×ž×—×©×‘×™× ×¦×™×‘×•×¨×™×™×!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "שכחת ×ו ×יבדת ×ת הסיסמה?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr "לצרכי ×בטחה, הכנס מחדש ×ת ×©× ×”×ž×©×ª×ž×© והסיסמה לפני שתשנה ×ת ההגדרות."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "×©× ×”×ž×©×ª×ž×© ×ו הסיסמה ×œ× ×—×•×§×™×™×"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"היכנס בעזרת ×©× ×”×ž×©×ª×ž×© והסיסמה שלך. עדיין ×ין לך ×©× ×ž×©×ª×ž×©? [הרש×](%%action."
"register%%) לחשבון "
@@ -2186,8 +2415,9 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "למשתמש ×ין פרופיל."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "×ין תוצ×ות"
#: actions/newapplication.php:52
#, fuzzy
@@ -2223,12 +2453,12 @@ msgstr ""
msgid "New message"
msgstr "הודעה חדשה"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "×ין תוכן!"
@@ -2236,7 +2466,7 @@ msgstr "×ין תוכן!"
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2251,7 +2481,7 @@ msgstr "הודעה חדשה"
msgid "Direct message to %s sent."
msgstr ""
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr ""
@@ -2259,7 +2489,7 @@ msgstr ""
msgid "New notice"
msgstr "הודעה חדשה"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
#, fuzzy
msgid "Notice posted"
msgstr "הודעות"
@@ -2308,7 +2538,7 @@ msgstr "כל ×”×¢×™×“×›×•× ×™× ×”×ª×•××ž×™× ×ת החיפוש ×חרי \"%s\"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2350,11 +2580,11 @@ msgid "You are not a user of that application."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2362,26 +2592,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "להודעה ×ין פרופיל"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "הסטטוס של %1$s ב-%2$s "
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "התחבר"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2493,7 +2728,7 @@ msgid "6 or more characters"
msgstr "לפחות 6 ×ותיות"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "×שר"
@@ -2505,11 +2740,11 @@ msgstr "זהה לסיסמה למעלה"
msgid "Change"
msgstr "שנה"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr ""
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "הסיסמ×ות ×œ× ×ª×•×מות."
@@ -2521,7 +2756,7 @@ msgstr "הסיסמה הישנה ×œ× × ×›×•× ×”"
msgid "Error saving user; invalid."
msgstr "שגי××” בשמירת ×©× ×”×ž×©×ª×ž×©, ×œ× ×¢×•×ž×“ בכללי×."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "×œ× × ×™×ª×Ÿ לשמור ×ת הסיסמה"
@@ -2530,7 +2765,7 @@ msgid "Password saved."
msgstr "הסיסמה נשמרה."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2540,23 +2775,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2706,18 +2941,19 @@ msgstr ""
msgid "People search"
msgstr "חיפוש סיסמה"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "×œ× ×¢×•×ž×“ ×‘×›×œ×œ×™× ×œ-OpenID."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "מיקרובלוג מ×ת %s"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "תוכן ההודעה ×œ× ×—×•×§×™"
#: actions/postnotice.php:101
@@ -2743,43 +2979,44 @@ msgstr "פרופיל ×œ× ×ž×•×›×¨"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1 עד 64 ×ותיות ×נגליות קטנות ×ו מספרי×, ×œ×œ× ×¡×™×ž× ×™ פיסוק ×ו רווחי×."
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "×©× ×ž×œ×"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "×תר בית"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "הכתובת של ×תר הבית שלך, בלוג, ×ו פרופיל ב×תר ×חר "
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "ת×ר ×ת עצמך ו×ת נוש××™ העניין שלך ב-140 ×ותיות"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "ת×ר ×ת עצמך ו×ת נוש××™ העניין שלך ב-140 ×ותיות"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "ביוגרפיה"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "מיקו×"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "מיקומך, למשל \"עיר, מדינה ×ו מחוז, ×רץ\""
@@ -2789,7 +3026,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2819,7 +3056,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "הביוגרפיה ×רוכה מידי (לכל היותר 140 ×ותיות)"
@@ -2862,7 +3099,7 @@ msgstr "ההגדרות נשמרו."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3019,7 +3256,7 @@ msgstr "×יפוס סיסמה"
msgid "Recover password"
msgstr "סיסמת שיחזור"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "התבקש שיחזור סיסמה"
@@ -3039,123 +3276,139 @@ msgstr "×יפוס"
msgid "Enter a nickname or email address."
msgstr ""
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr ""
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "שגי××” בשמירת ×ישור הכתובת."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "×יפוס סיסמה ×œ× ×¦×¤×•×™."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "הסיסמה חייבת להיות בת לפחות 6 ×ותיות."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "הסיסמה ו×ישורה ×ינן תו×מות."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "שגי××” ביצירת ×©× ×”×ž×©×ª×ž×©."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "הסיסמה החדשה נשמרה בהצלחה. ×תה מחובר למערכת."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "שגי××” ב×ישור הקוד."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr ""
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "הירש×"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr ""
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "×œ× × ×™×ª×Ÿ ×œ×”×™×¨×©× ×œ×œ× ×”×¡×›×ž×” לרשיון"
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr ""
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "×©× ×”×ž×©×ª×ž×© ×ו הסיסמה ×œ× ×—×•×§×™×™×"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr " לפחות 6 ×ותיות. שדה חובה."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr ""
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr ""
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "לשימוש רק ×‘×ž×§×¨×™× ×©×œ עידכוני×, הודעות מערכת, ושיחזורי סיסמ×ות"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "×”×˜×§×¡×˜×™× ×•×”×§×‘×¦×™× ×©×œ×™ ×ž×•×¤×¦×™× ×ª×—×ª רשיון"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3174,7 +3427,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3217,7 +3470,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "כתובת הפרופיל שלך בשרות ביקרובלוג תו×× ×חר"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "×”×™×¨×©× ×›×ž× ×•×™"
@@ -3258,7 +3511,7 @@ msgstr "×œ× × ×™×ª×Ÿ ×œ×”×™×¨×©× ×œ×œ× ×”×¡×›×ž×” לרשיון"
msgid "You already repeated that notice."
msgstr "כבר נכנסת למערכת!"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "צור"
@@ -3298,7 +3551,7 @@ msgstr "הזנת הודעות של %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3311,8 +3564,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3330,7 +3583,7 @@ msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
msgid "User doesn't have this role."
msgstr "למשתמש ×ין פרופיל."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "התמונה עודכנה."
@@ -3347,7 +3600,7 @@ msgstr "למשתמש ×ין פרופיל."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3386,29 +3639,33 @@ msgstr ""
msgid "Application profile"
msgstr "להודעה ×ין פרופיל"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "כינוי"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "מיקו×"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "הרשמות"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "סטטיסטיקה"
@@ -3492,16 +3749,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3518,71 +3775,71 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "כל המנויי×"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "×ין הודעה כזו."
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
#, fuzzy
msgid "Note"
msgstr "הודעות"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "הזנת הודעות של %s"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "הזנת הודעות של %s"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "הזנת הודעות של %s"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "הזנת הודעות של %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "חבר מ××–"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "צור"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3592,7 +3849,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3601,7 +3858,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3677,8 +3934,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3730,11 +3987,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3827,7 +4084,7 @@ msgid "Unable to save site notice."
msgstr "בעיה בשמירת ההודעה."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3844,104 +4101,165 @@ msgstr ""
msgid "Save site notice"
msgstr "הודעה חדשה"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "הגדרות ×ž×¡×¨×™× ×ž×™×“×™×™×"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "כתובת ×ž×¡×¨×™× ×ž×™×“×™×™×"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr ""
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "×שר"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr ""
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "העדפות"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "העדפות נשמרו."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr ""
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr "קוד ×”×ישור ×”×–×” ×ינו מיועד לך!"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "×”×ישור בוטל."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr ""
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "הכתובת הוסרה."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3963,7 +4281,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4004,8 +4322,8 @@ msgstr "הגדרות"
msgid "You are not subscribed to that profile."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "יצירת המנוי נכשלה."
@@ -4100,12 +4418,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s כעת מ×זין להודעות שלך ב-%2$s"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "×ין זיהוי Jabber ×›×–×”."
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "סמס"
@@ -4139,13 +4457,13 @@ msgstr "×ין מסמך ×›×–×”."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "למשתמש ×ין פרופיל."
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4178,10 +4496,6 @@ msgstr ""
msgid "No such tag."
msgstr "×ין הודעה כזו."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4199,7 +4513,7 @@ msgstr "למשתמש ×ין פרופיל."
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "השרת ×œ× ×”×—×–×™×¨ כתובת פרופיל"
#: actions/unsubscribe.php:98
@@ -4237,7 +4551,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "פרופיל"
@@ -4300,7 +4615,7 @@ msgstr ""
"בדוק ×ת ×”×¤×¨×˜×™× ×›×“×™ ×œ×•×•×“× ×©×‘×¨×¦×•× ×š ×œ×”×™×¨×©× ×›×ž× ×•×™ להודעות משתמש ×–×”. ×× ×ינך רוצה "
"להירש×, לחץ \"בטל\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4405,48 +4720,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "כל המנויי×"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "סטטיסטיקה"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4454,7 +4775,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4462,336 +4783,453 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "×ישי"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "גודל ×œ× ×—×•×§×™."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "×ין הודעה כזו."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "עידכון המשתמש נכשל."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "×ין הודעה כזו."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "עידכון המשתמש נכשל."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "שמירת מידע התמונה נכשל"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "שגי×ת מסד × ×ª×•× ×™× ×‘×”×›× ×¡×ª התגובה: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "בעיה בשמירת ההודעה."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "בעיה בשמירת ההודעה."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "בעיה בשמירת ההודעה."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "בעיה בשמירת ההודעה."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "למשתמש ×ין פרופיל."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "בעיה בשמירת ההודעה."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
#, fuzzy
msgid "User has blocked you."
msgstr "למשתמש ×ין פרופיל."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "×œ× ×ž× ×•×™!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "מחיקת המנוי ×œ× ×”×¦×œ×™×—×”."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "מחיקת המנוי ×œ× ×”×¦×œ×™×—×”."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "מחיקת המנוי ×œ× ×”×¦×œ×™×—×”."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "שמירת מידע התמונה נכשל"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "יצירת המנוי נכשלה."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "יצירת המנוי נכשלה."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "יצירת המנוי נכשלה."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr ""
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "עדכון התמונה נכשל."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr ""
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "למשתמש ×ין פרופיל."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
msgstr ""
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "הסטטוס של %1$s ב-%2$s "
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "×ישי"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "שנה סיסמה"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "נכשלה ההפניה לשרת: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "התחבר"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "הרשמות"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr ""
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "גודל ×œ× ×—×•×§×™."
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "צ×"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "צור חשבון חדש"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "הירש×"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "היכנס"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "עזרה"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "עזרה"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4799,76 +5237,90 @@ msgstr "חיפוש"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "הודעה חדשה"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "הודעה חדשה"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "הרשמות"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "עזרה"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "×ודות"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "רשימת ש×לות נפוצות"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "פרטיות"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "מקור"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "צור קשר"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** ×”×•× ×©×¨×•×ª ביקרובלוג הניתן על ידי [%%site.broughtby%%](%%"
"site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** ×”×•× ×©×¨×•×ª ביקרובלוג."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4879,70 +5331,84 @@ msgstr ""
"s, המופצת תחת רשיון [GNU Affero General Public License](http://www.fsf.org/"
"licensing/licenses/agpl-3.0.html)"
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "הודעה חדשה"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "<< ×חרי"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "לפני >>"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4952,165 +5418,203 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "הרשמות"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "הודעה חדשה"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr ""
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "×ישי"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "הרשמות"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "מתשמש"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "הרשמות"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "הרשמות"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "הרשמות"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "הודעה חדשה"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "הרשמות"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "ת×ר ×ת עצמך ו×ת נוש××™ העניין שלך ב-140 ×ותיות"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "ת×ר ×ת עצמך ו×ת נוש××™ העניין שלך ב-140 ×ותיות"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "מקור"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "הכתובת של ×תר הבית שלך, בלוג, ×ו פרופיל ב×תר ×חר "
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "מקור"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "הכתובת של ×תר הבית שלך, בלוג, ×ו פרופיל ב×תר ×חר "
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "בטל"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "הסר"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "פרופיל"
@@ -5123,47 +5627,68 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "הסיסמה נשמרה."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "הסיסמה נשמרה."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr ""
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr ""
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "×ין פרופיל תו×× ×œ×¤×¨×•×¤×™×œ המרוחק "
+
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "למשתמש ×ין פרופיל."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "עידכון המשתמש נכשל."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "עידכון המשתמש נכשל."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "תגובת עבור %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5171,206 +5696,208 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "×ין פרופיל תו×× ×œ×¤×¨×•×¤×™×œ המרוחק "
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "למשתמש ×ין פרופיל."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "כבר נכנסת למערכת!"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "נכשלה ההפניה לשרת: %s"
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "הסטטוס של %1$s ב-%2$s "
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "נכשלה יצירת OpenID מתוך: %s"
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "הסטטוס של %1$s ב-%2$s "
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "×©× ×ž×œ×"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr ""
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr ""
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "×ודות: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr ""
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "×œ× × ×™×ª×Ÿ ×œ×”×™×¨×©× ×œ×œ× ×”×¡×›×ž×” לרשיון"
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "כבר נכנסת למערכת!"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "הודעות"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "בעיה בשמירת ההודעה."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "תגובת עבור %s"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "בעיה בשמירת ההודעה."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
+#: lib/command.php:628
#, fuzzy
-msgid "No such user"
-msgstr "×ין משתמש ×›×–×”."
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "בטל מנוי"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
msgstr[1] "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "הרשמה מרוחקת"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "הרשמה מרוחקת"
msgstr[1] "הרשמה מרוחקת"
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
msgstr[1] "×œ× ×©×œ×—× ×• ×לינו ×ת הפרופיל ×”×–×”"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5412,20 +5939,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "×ין קוד ×ישור."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5604,54 +6131,55 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "עמוד ×–×” ×ינו זמין בסוג מדיה ש×תה יכול לקבל"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "פורמט התמונה ×ינו נתמך."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "×–×” ×רוך מידי. ×ורך מירבי להודעה ×”×•× 140 ×ותיות."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "העל××” חלקית."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "שגי×ת מערכת בהעל×ת הקובץ."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "זהו ×œ× ×§×•×‘×¥ תמונה, ×ו שחל בו שיבוש."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "פורמט התמונה ×ינו נתמך."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "×ין הודעה כזו."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr ""
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5676,11 +6204,13 @@ msgstr "×©× ×”×ž×©×ª×ž×© ×ו הסיסמה ×œ× ×—×•×§×™×™×"
msgid "Sign up for a new account"
msgstr "צור חשבון חדש"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr ""
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5697,12 +6227,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s כעת מ×זין להודעות שלך ב-%2$s"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5722,17 +6261,20 @@ msgstr ""
" שלך,\n"
" %4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "×ודות: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5745,21 +6287,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr ""
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5775,12 +6327,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr ""
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5799,12 +6353,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%1$s כעת מ×זין להודעות שלך ב-%2$s"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5825,12 +6381,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5843,6 +6409,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5855,7 +6433,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr ""
@@ -5910,25 +6488,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "עידכון המשתמש נכשל."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5986,52 +6564,56 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "ל×"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "×ין תוכן!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "צור"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr ""
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
#, fuzzy
msgid "Reply"
msgstr "הגב"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "הודעות"
@@ -6056,6 +6638,10 @@ msgstr "שגי××” בהכנסת הפרופיל"
msgid "Error inserting avatar"
msgstr "שגי××” בהכנסת התמונה."
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "שגי××” בעדכון פרופיל מרוחק"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "שגי××” בהכנסת פרופיל מרוחק"
@@ -6102,11 +6688,11 @@ msgstr ""
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "הרשמות"
@@ -6114,34 +6700,34 @@ msgstr "הרשמות"
msgid "All subscriptions"
msgstr "כל המנויי×"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "מנויי×"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "מנויי×"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "מתשמש"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "חבר מ××–"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr ""
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "×ין מסמך ×›×–×”."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6166,12 +6752,21 @@ msgstr ""
msgid "Popular"
msgstr "×נשי×"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "×ין מסמך ×›×–×”."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "×ין הודעה כזו."
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "כן"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "×ין הודעה כזו."
@@ -6181,7 +6776,7 @@ msgstr "×ין הודעה כזו."
msgid "Revoke the \"%s\" role from this user"
msgstr "×ין משתמש ×›×–×”."
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6285,6 +6880,50 @@ msgstr ""
msgid "None"
msgstr "ל×"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "עדכון התמונה נכשל."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "שגי××” בעדכון פרופיל מרוחק"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6315,93 +6954,112 @@ msgstr ""
msgid "Unsubscribe"
msgstr "בטל מנוי"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "למשתמש ×ין פרופיל."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "תמונה"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr ""
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "הגדרות הפרופיל"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr ""
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
#, fuzzy
msgid "Message"
msgstr "הודעה חדשה"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "למשתמש ×ין פרופיל."
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "לפני מספר שניות"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "לפני כדקה"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "לפני כ-%d דקות"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "לפני כשעה"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "לפני כ-%d שעות"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "לפני כיו×"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "לפני ×›-%d ימי×"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "לפני כחודש"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "לפני ×›-%d חודשי×"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "לפני כשנה"
@@ -6415,7 +7073,7 @@ msgstr "ל×תר הבית יש כתובת ×œ× ×—×•×§×™×ª."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/hsb/LC_MESSAGES/statusnet.po b/locale/hsb/LC_MESSAGES/statusnet.po
index 91d9c9c73..860efa66e 100644
--- a/locale/hsb/LC_MESSAGES/statusnet.po
+++ b/locale/hsb/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Upper Sorbian
#
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Michawiki
# --
@@ -9,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:00+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:33+0000\n"
"Language-Team: Dutch\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: hsb\n"
"X-Message-Group: out-statusnet\n"
@@ -23,30 +24,27 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Přistup"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "Sydłowe nastajenja składować"
+msgstr "Nastajenja za sydłowy přistup"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
-msgstr "Registrować"
+msgstr "Registrowanje"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
-msgstr ""
+msgstr "Anonymnym wužiwarjam (njepřizjewjenym) wobhladowanje sydła zakazć?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Priwatny"
@@ -73,89 +71,92 @@ msgstr "ZaÄinjeny"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "Sydłowe nastajenja składować"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "Přistupne nastajenja składować"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Składować"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Strona njeeksistuje"
+msgid "No such page."
+msgstr "Strona njeeksistuje."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Wužiwar njeeksistuje"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s a přećeljo, strona %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s a přećeljo"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Kanal za přećelow wužiwarja %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Kanal za přećelow wužiwarja %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Kanal za přećelow wužiwarja %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,77 +164,79 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Ty a přećeljo"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
-msgstr ""
+msgstr "Aktualizacije wot %1$s a přećelow na %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API-metoda njenamakana."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Tuta metoda wužaduje sej POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Wužiwar njeje so dał aktualizować."
@@ -242,7 +245,7 @@ msgstr "Wužiwar njeje so dał aktualizować."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Wužiwar nima profil."
@@ -252,9 +255,9 @@ msgid "Could not save profile."
msgstr "Profil njeje so składować dał."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -284,11 +287,11 @@ msgstr "Njemóžeš so samoho blokować."
#: actions/apiblockcreate.php:126
msgid "Block user failed."
-msgstr ""
+msgstr "Blokowanje wužiwarja je so njeporadźiło."
#: actions/apiblockdestroy.php:114
msgid "Unblock user failed."
-msgstr ""
+msgstr "Wotblokowanje wužiwarja je so njeporadźiło."
#: actions/apidirectmessage.php:89
#, php-format
@@ -310,47 +313,49 @@ msgstr "Direktne powěsće do %s"
msgid "All the direct messages sent to %s"
msgstr "Wšě do %s pósłane direktne powěsće"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Žadyn powěsćowy tekst!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "To je předołho. Maksimalna powěsćowa wulkosć je %d znamješkow."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Přijimowar njenamakany."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
+"Njeje móžno, direktne powěsće wužiwarjam pósłać, kotřiž twoji přećeljo "
+"njejsu."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Status z tym ID njenamakany."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Tutón status je hižo faworit."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
-msgstr ""
+msgstr "Faworit njeda so wutworić."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Tón status faworit njeje."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
-msgstr ""
+msgstr "Faworit njeda so zhašeć."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+msgid "Could not follow user: profile not found."
+msgstr "Njebě móžno wužiwarja słědować: profil njenamakany."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -365,148 +370,160 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Njemóžeš slědowanje swójskich aktiwitow blokować."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr ""
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Dyrbitej so dwaj płaćiwej wužiwarskej ID abo wužiwarskej mjenje podać."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
-msgstr ""
+msgstr "Žórłowy wužiwar njeda so postajić."
#: actions/apifriendshipsshow.php:142
msgid "Could not find target user."
-msgstr ""
+msgstr "Cilowy wužiwar njeda so namakać."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
+"Přimjeno smě jenož małe pismiki a cyfry wobsahować. Mjezery njejsu dowolene."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Přimjeno so hižo wužiwa. Spytaj druhe."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Žane płaćiwe přimjeno."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Startowa strona njeje płaćiwy URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Dospołne mjeno je předołho (maks. 255 znamješkow)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Wopisanje je předołho (maks. %d znamješkow)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Městno je předołho (maks. 255 znamješkow)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Přewjele aliasow! Maksimum: %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Njepłaćiwy alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Njepłaćiwy alias: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias \"%s\" so hižo wužiwa. Spytaj druhi."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias njemóže samsny kaž přimjeno być."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Skupina njenamakana!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Skupina njenamakana."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Sy hižo ÄÅ‚on teje skupiny."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
-msgstr ""
+msgstr "Administratora tuteje skupiny je će zablokował."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Njebě móžno wužiwarja %1$s skupinje %2%s přidać."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Njejsy ÄÅ‚on tuteje skupiny."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Njebě móžno wužiwarja %1$s ze skupiny %2$s wotstronić."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
-msgstr ""
+msgstr "Skupiny wužiwarja %s"
+
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Skupiny na %1$s, w kotrychž wužiwar %2$s je ÄÅ‚on."
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
-msgstr ""
+msgstr "%s skupinow"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "skupiny na %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Nahraće je so njeporadźiło."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
#: actions/apioauthauthorize.php:106
-#, fuzzy
msgid "Invalid token."
-msgstr "Njepłaćiwa wulkosć."
+msgstr "Njepłaćiwy token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -518,12 +535,10 @@ msgid "Invalid nickname / password!"
msgstr "Njepłaćiwe přimjeno abo hesło!"
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "Zmylk datoweje banki při zasunjenju wužiwarja OAuth-aplikacije."
+msgstr "Zmylk datoweje banki při zhašenju wužiwarja OAuth-aplikacije."
#: actions/apioauthauthorize.php:185
-#, fuzzy
msgid "Database error inserting OAuth application user."
msgstr "Zmylk datoweje banki při zasunjenju wužiwarja OAuth-aplikacije."
@@ -539,22 +554,25 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
-msgstr ""
+msgstr "NjewoÄakowane wotpósÅ‚anje formulara."
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "Aplikacija chce so z twojom kontom zwjazać"
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "Přistup dowolić abo wotpokazać"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -564,20 +582,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Konto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Přimjeno"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Hesło"
@@ -591,13 +611,13 @@ msgstr "Dowolić"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "Přistup ke kontowym informacijam dowolić abo wotpokazać."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Tuta metoda wužaduje sej POST abo DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "NjemóžeÅ¡ status druheho wužiwarja zniÄić."
@@ -614,62 +634,66 @@ msgstr "Njemóžno twoju zdźělenku wospjetować."
msgid "Already repeated that notice."
msgstr "Tuta zdźělenka bu hižo wospjetowana."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status zniÄeny."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Žadyn status z tym ID namakany."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "To je předołho. Maksimalna wulkosć zdźělenki je %d znamješkow."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Njenamakany"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Njenamakany."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Njepodpěrany format."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr ""
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr ""
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr ""
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
-msgstr ""
+msgstr "%s aktualizacijow wote wšěch!"
#: actions/apitimelineretweetedtome.php:111
#, php-format
@@ -681,19 +705,19 @@ msgstr ""
msgid "Repeats of %s"
msgstr ""
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr ""
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Njenamakany."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
msgid "No such attachment."
@@ -714,8 +738,9 @@ msgstr "Žana wulkosć."
msgid "Invalid size."
msgstr "Njepłaćiwa wulkosć."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Awatar"
@@ -726,10 +751,10 @@ msgstr ""
"Móžeš swój wosobinski awatar nahrać. Maksimalna datajowa wulkosć je %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Wužiwar bjez hodźaceho so profila"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Wužiwar bjez hodźaceho so profila."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -747,7 +772,7 @@ msgid "Preview"
msgstr "Přehlad"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "ZniÄić"
@@ -759,23 +784,27 @@ msgstr "Nahrać"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Žana dataja nahrata."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
-msgstr ""
+msgstr "Naše datajowe daty su so zhubili."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Awatar zaktualizowany."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
-msgstr ""
+msgstr "Aktualizowanje awatara je so njeporadźiło."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Awatar zniÄeny."
@@ -783,38 +812,53 @@ msgstr "Awatar zniÄeny."
msgid "You already blocked that user."
msgstr "Sy tutoho wužiwarja hižo zablokował."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Wužiwarja blokować"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "NÄ›"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Tutoho wužiwarja njeblokować"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Haj"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Tutoho wužiwarja blokować"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -827,15 +871,15 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Skupina njeeksistuje."
#: actions/blockedfromgroup.php:97
#, php-format
msgid "%s blocked profiles"
-msgstr ""
+msgstr "%s je profile zablokował"
#: actions/blockedfromgroup.php:100
#, php-format
@@ -848,19 +892,21 @@ msgstr ""
#: actions/blockedfromgroup.php:288
msgid "Unblock user from group"
-msgstr ""
+msgstr "Wužiwarja za skupinu wotblokować"
#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
msgid "Unblock"
-msgstr ""
+msgstr "Wotblokować"
#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
msgid "Unblock this user"
-msgstr ""
+msgstr "Tutoho wužiwarja wotblokować"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Na %s pósłać"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -874,33 +920,43 @@ msgstr "Wobkrućenski kod njenamakany."
msgid "That confirmation code is not for you!"
msgstr "Tutón wobkrućenski kod njeje za tebje!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Njespóznany adresowy typ %s"
+msgid "Unrecognized address type %s."
+msgstr "Njespóznaty adresowy typ %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Tuta adresa bu hižo wobkrućena."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
-msgstr ""
+msgstr "Wužiwar njeda aktualizować."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
-msgstr ""
+msgstr "E-mejlowe wobkrućenje njeda so zhašeć."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Adresu wobkrućić"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Adresa \"%s\" bu za twoje konto wobkrućena."
@@ -910,19 +966,17 @@ msgid "Conversation"
msgstr "Konwersacija"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Zdźělenki"
#: actions/deleteapplication.php:63
-#, fuzzy
msgid "You must be logged in to delete an application."
-msgstr "Dyrbiš přizjewjeny być, zo by skupinu wobdźěłał."
+msgstr "DyrbiÅ¡ pÅ™izjewjeny być, zo by aplikaciju zniÄiÅ‚."
#: actions/deleteapplication.php:71
-#, fuzzy
msgid "Application not found."
-msgstr "Aplikaciski profil"
+msgstr "Aplikaciska njenamakana."
#: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94
@@ -931,14 +985,13 @@ msgstr "Njejsy wobsedźer tuteje aplikacije."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "Aplikacija njeeksistuje."
+msgstr "Aplikaciju zniÄić"
#: actions/deleteapplication.php:149
msgid ""
@@ -947,23 +1000,23 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
-msgstr "Tutu zdźělenku njewušmórnyć"
+msgstr "Tutu aplikaciju njezniÄić"
-#: actions/deleteapplication.php:160
-#, fuzzy
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
-msgstr "Tutu zdźělenku wušmórnyć"
+msgstr "Tutu aplikaciju zniÄić"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Njepřizjewjeny."
@@ -986,11 +1039,13 @@ msgstr "Zdźělenku wušmórnyć"
msgid "Are you sure you want to delete this notice?"
msgstr "Chceš woprawdźe tutu zdźělenku wušmórnyć?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Tutu zdźělenku njewušmórnyć"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Tutu zdźělenku wušmórnyć"
@@ -1012,58 +1067,69 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Tutoho wužiwarja wušmórnyć"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Design"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Designowe nastajenja za tute sydło StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Njepłaćiwy logowy URL."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Å at njesteji k dispoziciji: %s"
+msgid "Theme not available: %s."
+msgstr "Å at njesteji k dispoziciji: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Logo změnić"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo sydła"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Šat změnić"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Šat sydła"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Šat za sydło."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Swójski šat"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Móžeš swójski šat StatusNet jako .ZIP-archiw nahrać."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Pozadkowy wobraz změnić"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Pozadk"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1071,67 +1137,76 @@ msgid ""
msgstr ""
"Móžeš pozadkowy wobraz za sydło nahrać. Maksimalna datajowa wulkosć je %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Zapinjeny"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Wupinjeny"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Barby změnić"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Wobsah"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "BóÄnica"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Tekst"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Wotkazy"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Rozšěrjeny"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Swójski CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Standardne hódnoty wužiwać"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Standardne designy wobnowić"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Na standard wróćo stajić"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Składować"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Design składować"
@@ -1144,14 +1219,13 @@ msgid "Add to favorites"
msgstr "K faworitam přidać"
#: actions/doc.php:158
-#, fuzzy, php-format
+#, php-format
msgid "No such document \"%s\""
-msgstr "Dokument njeeksistuje."
+msgstr "Dokument \"%s\" njeeksistuje"
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "Aplikacije OAuth"
+msgstr "Aplikaciju wobdźěłać"
#: actions/editapplication.php:66
msgid "You must be logged in to edit an application."
@@ -1175,9 +1249,8 @@ msgid "Name is too long (max 255 chars)."
msgstr "Mjeno je předołho (maks. 255 znamješkow)."
#: actions/editapplication.php:183 actions/newapplication.php:162
-#, fuzzy
msgid "Name already in use. Try another one."
-msgstr "Přimjeno so hižo wužiwa. Spytaj druhe."
+msgstr "Mjeno so hižo wužiwa. Spytaj druhe."
#: actions/editapplication.php:186 actions/newapplication.php:168
msgid "Description is required."
@@ -1185,7 +1258,7 @@ msgstr "Wopisanje je trěbne."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr ""
+msgstr "Žórłowy URL je předołhi."
#: actions/editapplication.php:200 actions/newapplication.php:185
msgid "Source URL is not valid."
@@ -1193,7 +1266,7 @@ msgstr "URL žórła płaćiwy njeje."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
-msgstr ""
+msgstr "Organizacija je trěbna."
#: actions/editapplication.php:206 actions/newapplication.php:191
msgid "Organization is too long (max 255 chars)."
@@ -1201,7 +1274,7 @@ msgstr "Mjeno organizacije je předołho (maks. 255 znamješkow)."
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
-msgstr ""
+msgstr "Startowa strona organizacije je trěbna."
#: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long."
@@ -1218,7 +1291,7 @@ msgstr "Aplikacija njeda so aktualizować."
#: actions/editgroup.php:56
#, php-format
msgid "Edit %s group"
-msgstr ""
+msgstr "Skupinu %s wobdźěłać"
#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
msgid "You must be logged in to create a group."
@@ -1238,11 +1311,17 @@ msgstr "Wuž tutón formular, zo by skupinu wobdźěłał."
msgid "description is too long (max %d chars)."
msgstr "wopisanje je předołho (maks. %d znamješkow)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Njepłaćiwy alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Skupina njeje so dała aktualizować."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Aliasy njejsu so dali wutworić."
@@ -1250,178 +1329,229 @@ msgstr "Aliasy njejsu so dali wutworić."
msgid "Options saved."
msgstr "Opcije składowane."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-mejlowe nastajenja"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresa"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-mejlowa adresa"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Aktualna wobkrućena e-mejlowa adresa."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Wotstronić"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Přetorhnyć"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-mejlowa adresa"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-mejlowa adresa, kaž na př. \"WužiwarskeMjeno@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Přidać"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Dochadźaca e-mejl"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nowy"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Nastajenja"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "E-mejlowe nastajenja"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
-msgstr ""
+msgstr "E-mejl pósłać, hdyž něchtó priwatnu powěsć sćele."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Chcu zdźělenki přez e-mejl pósłać."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "MicroID za moju e-mejlowu adresu publikować"
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Nastajenja składowane."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "E-mejlowe nastajenja składowane."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Žana e-mejlowa adresa."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Njepłaćiwa e-mejlowa adresa."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "To je hižo twoja e-mejlowa adresa."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Ta e-mejlowa adresa hižo słuša k druhemu wužiwarjej."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr ""
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "to je wopaÄna IM-adresa."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "To je wopaÄna e-mejlowa adresa."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Wobkrućenje přetorhnjene."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "E-mejlowe wobkrućenje přetorhnjene."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "To njeje twoja e-mejlowa adresa."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Adresa bu wotstronjena."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "E-mejlowa adresa bu wotstronjena."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Žana adresa za dochadźace e-mejle."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
-msgstr ""
+msgstr "Datowa sadźba wužiwarja njeda so aktualizować."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Adresa za dochadźaće e-mejle wotstronjena."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nowa adresa za dochadźace e-mejle přidata."
@@ -1478,17 +1608,17 @@ msgstr ""
#: actions/featured.php:69 lib/featureduserssection.php:87
#: lib/publicgroupnav.php:89
msgid "Featured users"
-msgstr ""
+msgstr "Nazhonići wužiwarjo"
#: actions/featured.php:71
#, php-format
msgid "Featured users, page %d"
-msgstr ""
+msgstr "Nazhonići wužiwarjo, strona %d"
#: actions/featured.php:99
#, php-format
msgid "A selection of some great users on %s"
-msgstr ""
+msgstr "Wuběr wulkotnych wužiwarjow na %s"
#: actions/file.php:34
msgid "No notice ID."
@@ -1516,11 +1646,11 @@ msgstr ""
#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
msgid "You can use the local subscription!"
-msgstr ""
+msgstr "Móžeš lokalny abonement wužiwać!"
#: actions/finishremotesubscribe.php:99
msgid "That user has blocked you from subscribing."
-msgstr ""
+msgstr "Tutón wužiwar ći abonowanje njedowoli."
#: actions/finishremotesubscribe.php:110
msgid "You are not authorized."
@@ -1534,9 +1664,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr ""
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Zmylk při aktualizaciji zdaleneho profila."
#: actions/getfile.php:79
msgid "No such file."
@@ -1547,33 +1677,30 @@ msgid "Cannot read file."
msgstr "Dataja njeda so Äitać."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Njepłaćiwa wulkosć."
+msgstr "Njepłaćiwa róla."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Tuta róla je wuměnjena a njeda so stajić."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "Njemóžeš tutomu wužiwarju powěsć pósłać."
+msgstr "Njemóžeš wužiwarske róle na tutym sydle garantować."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "Wužiwar nima profil."
+msgstr "Wužiwar hižo ma tutu rólu."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Žadyn profil podaty."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Žadyn profil z tym ID."
@@ -1594,11 +1721,11 @@ msgstr "Wužiwar je hižo za skupinu zablokowany."
msgid "User is not a member of group."
msgstr "Wužiwar njeje ÄÅ‚on skupiny."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Wužiwarja za skupinu blokować"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1606,17 +1733,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Tutoho wužiwarja za tutu skupinu blokować"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Tutoho wužiwarja za tutu skupinu blokować"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
-msgstr ""
+msgstr "Zmylk datoweje banki blokuje wužiwarja za skupinu."
#: actions/groupbyid.php:74 actions/userbyid.php:70
msgid "No ID."
@@ -1657,10 +1786,6 @@ msgstr ""
"Móžeš logowy wobraz za swoju skupinu nahrać. Maksimalna datajowa wulkosć je %"
"s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Wužiwar bjez hodźaceho so profila."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1671,12 +1796,12 @@ msgstr "Logo zaktualizowane."
#: actions/grouplogo.php:401
msgid "Failed updating logo."
-msgstr ""
+msgstr "Aktualizowanje loga je so njeporadźiło."
#: actions/groupmembers.php:100 lib/groupnav.php:92
#, php-format
msgid "%s group members"
-msgstr ""
+msgstr "%s skupinskich ÄÅ‚onow"
#: actions/groupmembers.php:103
#, php-format
@@ -1691,34 +1816,38 @@ msgstr "Lisćina wužiwarjow w tutej skupinje."
msgid "Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blokować"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
-msgstr ""
+msgstr "Wužiwarja k administratorej skupiny Äinić"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
-msgstr ""
+msgstr "Za administratora pomjenować"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Tutoho wužiwarja k administratorej Äinić"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr ""
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
-msgstr ""
+msgstr "Aktualizacije wot %1$s na %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Skupiny"
@@ -1738,7 +1867,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Nowu skupinu wutworić"
@@ -1764,6 +1893,8 @@ msgid ""
"If you can't find the group you're looking for, you can [create it](%%action."
"newgroup%%) yourself."
msgstr ""
+"Jeli njemóžeš skupinu namakać, kotruž pytaš, móžeš [ju wutworić] (%%action."
+"newgroup%%)."
#: actions/groupsearch.php:85
#, php-format
@@ -1774,113 +1905,168 @@ msgstr ""
#: actions/groupunblock.php:91
msgid "Only an admin can unblock group members."
-msgstr ""
+msgstr "Jenož administrator móže skupinskich ÄÅ‚onow wotblokować."
#: actions/groupunblock.php:95
msgid "User is not blocked from group."
-msgstr ""
+msgstr "Wužiwar njeje zablokowany za skupinu."
#: actions/groupunblock.php:128 actions/unblock.php:86
msgid "Error removing the block."
-msgstr ""
+msgstr "Zmylk při wotstronjenju blokowanja."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM-nastajenja"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM k dispoziciji njesteji."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM-adresa"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM-adresa"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM-nastajenja"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Nastajenja składowane."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Žadyn ID Jabber."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr ""
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Njepłaćiwy ID Jabber"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "To je hižo twój ID Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr ""
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "to je wopaÄna IM-adresa."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "IM-wobkrućenje njeda so zhašeć."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "IM-wobkrućenje přetorhnjene."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "To njeje twój ID Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "IM-adresa bu wotstronjena."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
-msgstr ""
+msgstr "Dochadny póst za %1$s - strona %2$d"
#: actions/inbox.php:62
#, php-format
msgid "Inbox for %s"
-msgstr ""
+msgstr "Dochadny póst za %s"
#: actions/inbox.php:115
msgid "This is your inbox, which lists your incoming private messages."
msgstr ""
+"To je twój dochadny póst, kotryž twoje priwatne dochadne powěsće nalistuje."
#: actions/invite.php:39
msgid "Invites have been disabled."
@@ -1888,8 +2074,10 @@ msgstr "Přeprošenja buchu znjemóžnjene."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
+"Dyrbiš přizjewjeny być, zo by druheho wužiwarja přeprosył, zo by wón %s "
+"wužiwał."
#: actions/invite.php:72
#, php-format
@@ -1908,7 +2096,9 @@ msgstr "Nowych wužiwarjow přeprosyć"
msgid "You are already subscribed to these users:"
msgstr "Sy tutych wužiwarjow hižo abonował:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1916,11 +2106,11 @@ msgstr "%1$s (%2$s)"
#: actions/invite.php:136
msgid ""
"These people are already users and you were automatically subscribed to them:"
-msgstr ""
+msgstr "Tući ludźo su hižo wužiwarjo a ty sy jich awtomatisce abonował:"
#: actions/invite.php:144
msgid "Invitation(s) sent to the following people:"
-msgstr ""
+msgstr "Přeprošenja, kotrež buchu na slědowacych ludźi pósłane:"
#: actions/invite.php:150
msgid ""
@@ -1953,17 +2143,18 @@ msgstr "Wosobinsku powěsć po dobrozdaću přeprošenju přidać."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Pósłać"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -1996,75 +2187,84 @@ msgstr ""
#: actions/joingroup.php:60
msgid "You must be logged in to join a group."
-msgstr ""
+msgstr "Dyrbiš přizjewjeny być, zo by do skupiny zastupił."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Žane přimjeno."
+msgstr "Žane přimjeno abo žadyn ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
-msgstr ""
+msgstr "%1$s je do %2$s zastupił"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
msgstr "Dyrbiš přizjewjeny być, zo by skupinu wopušćił."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Njejsy ÄÅ‚on teje skupiny."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
-msgstr ""
+msgstr "%1$s je skupinu %2$s wopušćił"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Hižo přizjewjeny."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "WopaÄne wužiwarske mjeno abo hesÅ‚o."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Zmylk při nastajenju wužiwarja. Snano njejsy awtorizowany."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Přizjewić"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Při sydle přizjewić"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Składować"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Hesło zhubjene abo zabyte?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
+"ProÅ¡u zapodaj z pÅ™iÄinow wÄ›stoty swoje wužiwarske mjeno znowa, prjedy haÄ "
+"změniš swoje nastajenja."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Přizjewjenje z twojim wužiwarskim mjenom a hesłom."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
+"Hišće nimaš wužiwarske mjeno? [Zregistruj (%%action.register%%) nowe konto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2078,21 +2278,20 @@ msgstr "%1$s je hižo administrator za skupinu \"%2$s\"."
#: actions/makeadmin.php:133
#, php-format
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:146
#, php-format
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ć."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Žadyn aktualny status"
+msgid "No current status."
+msgstr "Žadyn aktualny status."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "Aplikacija njeeksistuje."
+msgstr "Nowa aplikacija"
#: actions/newapplication.php:64
msgid "You must be logged in to register an application."
@@ -2104,7 +2303,7 @@ msgstr "Wužij tutón formular, zo by nowu aplikaciju registrował."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr ""
+msgstr "Žórłowy URL je trěbny."
#: actions/newapplication.php:258 actions/newapplication.php:267
msgid "Could not create application."
@@ -2122,12 +2321,12 @@ msgstr "Wužij tutón formular, zo by nowu skupinu wutworił."
msgid "New message"
msgstr "Nowa powěsć"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Njemóžeš tutomu wužiwarju powěsć pósłać."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Žadyn wobsah!"
@@ -2135,7 +2334,7 @@ msgstr "Žadyn wobsah!"
msgid "No recipient specified."
msgstr "Žadyn přijimowar podaty."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2149,7 +2348,7 @@ msgstr "Powěsć pósłana"
msgid "Direct message to %s sent."
msgstr "Direktna powěsć do %s pósłana."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Zmylk Ajax"
@@ -2157,7 +2356,7 @@ msgstr "Zmylk Ajax"
msgid "New notice"
msgstr "Nowa zdźělenka"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Zdźělenka wotpósłana"
@@ -2175,7 +2374,7 @@ msgstr "Tekstowe pytanje"
#: actions/noticesearch.php:91
#, php-format
msgid "Search results for \"%1$s\" on %2$s"
-msgstr ""
+msgstr "Pytanske wuslědki za \"%1$s\" na %2$s"
#: actions/noticesearch.php:121
#, php-format
@@ -2194,7 +2393,7 @@ msgstr ""
#: actions/noticesearchrss.php:96
#, php-format
msgid "Updates with \"%s\""
-msgstr ""
+msgstr "Aktualizacije z \"%s\""
#: actions/noticesearchrss.php:98
#, php-format
@@ -2203,7 +2402,7 @@ msgstr ""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2224,16 +2423,16 @@ msgstr "Aplikacije OAuth"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "Aplikacije, za kotrež sy zregistrował"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "Hišće njejsy aplikacije zregistrował."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "Zwjazane aplikacije"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
@@ -2244,11 +2443,11 @@ msgid "You are not a user of that application."
msgstr "Njejsy wužiwar tuteje aplikacije."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2256,25 +2455,30 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Zdźělenka nima profil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Zdźělenka nima profil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr ""
-#: actions/oembed.php:157
-msgid "content type "
-msgstr ""
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Wobsahowy typ %s so njepodpěruje."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Jenož "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Njeje podpěrany datowy format."
@@ -2341,12 +2545,12 @@ msgstr "Přizjewjenske znamješko spadnjene."
#: actions/outbox.php:58
#, php-format
msgid "Outbox for %1$s - page %2$d"
-msgstr ""
+msgstr "Wuchadny póst za %1$s - strona %2$d"
#: actions/outbox.php:61
#, php-format
msgid "Outbox for %s"
-msgstr ""
+msgstr "Wuchadny póst za %s"
#: actions/outbox.php:116
msgid "This is your outbox, which lists private messages you have sent."
@@ -2377,23 +2581,23 @@ msgid "6 or more characters"
msgstr "6 abo wjace znamješkow"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Wobkrućić"
#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
msgid "Same as password above"
-msgstr ""
+msgstr "Samsne hesło kaž horjeka"
#: actions/passwordsettings.php:117
msgid "Change"
msgstr "Změnić"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Hesło dyrbi 6 abo wjace znamješkow měć."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Hesle so njekryjetej."
@@ -2403,18 +2607,18 @@ msgstr "WopaÄne stare hesÅ‚o"
#: actions/passwordsettings.php:181
msgid "Error saving user; invalid."
-msgstr ""
+msgstr "Zmylk při składowanju wužiwarja; njepłaćiwy."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
-msgstr ""
+msgstr "Nowe hesło njeda so składować."
#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
msgid "Password saved."
msgstr "Hesło składowane."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Šćežki"
@@ -2424,22 +2628,22 @@ msgstr "Šćežka a serwerowe nastajenja za tute sydło StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr ""
+msgid "Theme directory not readable: %s."
+msgstr "Å atowy zapis njeda so Äitać: %s"
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+msgid "Avatar directory not writable: %s."
+msgstr "Do awataroweho zapisa njeda so pisać: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+msgid "Background directory not writable: %s."
+msgstr "Do pozadkoweho zapisa njeda so pisać: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
+msgid "Locales directory not readable: %s."
msgstr ""
#: actions/pathsadminpanel.php:183
@@ -2577,19 +2781,19 @@ msgstr ""
msgid "People search"
msgstr "Za ludźimi pytać"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr ""
+msgid "Not a valid people tag: %s."
+msgstr "NjepÅ‚aćiwa wosobowa tafliÄka: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr ""
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Njepłaćiwy wobsah zdźělenki"
+msgid "Invalid notice content."
+msgstr "Njepłaćiwy wobsah zdźělenki."
#: actions/postnotice.php:101
#, php-format
@@ -2604,6 +2808,8 @@ msgstr "Profilowe nastajenja"
msgid ""
"You can update your personal profile info here so people know more about you."
msgstr ""
+"Móžeš swoje wosobinske profilowe informacije aktualizować, zo bychu ludźo "
+"wjace wo tebi zhonili."
#: actions/profilesettings.php:99
msgid "Profile information"
@@ -2613,44 +2819,45 @@ msgstr "Profilowe informacije"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Dospołne mjeno"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Startowa strona"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
-msgstr ""
+msgstr "Wopisaj sebje a swoje zajimy z %d znamješkami"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
-msgstr ""
+msgstr "Wopisaj sebje a swoje zajimy"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografija"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Městno"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
-msgstr ""
+msgstr "Hdźež sy, na př. \"město, zwjazkowy kraj (abo region) , kraj\""
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
@@ -2658,7 +2865,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2688,7 +2895,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Biografija je předołha (maks. %d znamješkow)."
@@ -2716,7 +2923,7 @@ msgstr "Nastajenja městna njedachu so składować."
#: actions/profilesettings.php:375
msgid "Couldn't save profile."
-msgstr ""
+msgstr "Profil njeda so składować."
#: actions/profilesettings.php:383
msgid "Couldn't save tags."
@@ -2729,8 +2936,8 @@ msgstr "Nastajenja składowane."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr ""
+msgid "Beyond the page limit (%s)."
+msgstr "Limit stronow (%s) pÅ™ekroÄeny."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2838,11 +3045,11 @@ msgstr ""
#: actions/recoverpassword.php:86
msgid "Error with confirmation code."
-msgstr ""
+msgstr "Zmylk z wobkrućenskim kodom."
#: actions/recoverpassword.php:97
msgid "This confirmation code is too old. Please start again."
-msgstr ""
+msgstr "Tutón wobkrućenski kod je pÅ™estary. ProÅ¡u zapoÄÅ„ hišće raz."
#: actions/recoverpassword.php:111
msgid "Could not update user with confirmed email address."
@@ -2860,19 +3067,20 @@ msgstr "Sy so identifikował. Zapodaj deleka nowe hesło. "
#: actions/recoverpassword.php:188
msgid "Password recovery"
-msgstr ""
+msgstr "Wobnowjenje hesła"
#: actions/recoverpassword.php:191
msgid "Nickname or email address"
-msgstr ""
+msgstr "Přimjeno abo e-mejlowa adresa"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
msgstr ""
+"Twoje přimjeno na tutym serwerje abo twoje zregistrowana e-mejlowa adresa."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
msgid "Recover"
-msgstr ""
+msgstr "Wobnowić"
#: actions/recoverpassword.php:208
msgid "Reset password"
@@ -2880,11 +3088,11 @@ msgstr "Hesło wróćo stajić"
#: actions/recoverpassword.php:209
msgid "Recover password"
-msgstr ""
+msgstr "Hesło wobnowić"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
-msgstr ""
+msgstr "Wobnowjenje hesła požadane"
#: actions/recoverpassword.php:213
msgid "Unknown action"
@@ -2902,123 +3110,139 @@ msgstr "Wróćo stajić"
msgid "Enter a nickname or email address."
msgstr "Zapodaj přimjeno abo e-mejlowu adresu."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
"Wužiwar z tej e-mejlowej adresu abo tym wužiwarskim mjenom njeeksistuje."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Wužiwar nima žanu zregistrowanu e-mejlowu adresu."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
-msgstr ""
+msgstr "Zmylk při składowanju adresoweho wobkrućenja."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr ""
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Hesło dyrbi 6 znamješkow abo wjace měć."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
-msgstr ""
+msgstr "Hesło a jeho wobkrućenje so njekryjetej."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
-msgstr ""
+msgstr "Zmylk při nastajenju wužiwarja."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
-msgstr ""
+msgstr "Nowe hesło bu wuspěšnje składowane. Sy nětko přizjewjeny."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Wodaj, jenož přeprošeni ludźo móžeja so registrować."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Wodaj, njepłaćiwy přeprošenski kod."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registrowanje wuspěšne"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrować"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registracija njedowolena."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
-msgstr ""
+msgstr "Njemóžeš so registrować, jeli njepřizwoleš do licency."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "E-mejlowa adresa hižo eksistuje."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Njepłaćiwe wužiwarske mjeno abo hesło."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 abo wjace znamješkow. Trěbne."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Jenake kaž hesło horjeka. Trěbne."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mejl"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Dlěše mjeno, wosebje twoje \"woprawdźite\" mjeno"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mój tekst a moje dataje steja k dispoziciji pod "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Wšě prawa wuměnjenjene."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3037,7 +3261,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3053,11 +3277,11 @@ msgstr ""
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
-msgstr ""
+msgstr "Zdaleny abonement"
#: actions/remotesubscribe.php:124
msgid "Subscribe to a remote user"
-msgstr ""
+msgstr "Zdaleneho wužiwarja abonować"
#: actions/remotesubscribe.php:129
msgid "User nickname"
@@ -3076,7 +3300,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Abonować"
@@ -3090,7 +3314,7 @@ msgstr ""
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "To je lokalny profil! Přizjew so, zo by abonował."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
@@ -3112,7 +3336,7 @@ msgstr "Njemóžeš swójsku zdźělenku wospjetować."
msgid "You already repeated that notice."
msgstr "Sy tutu zdźělenku hižo wospjetował."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Wospjetowany"
@@ -3150,7 +3374,7 @@ msgstr ""
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3163,8 +3387,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3173,16 +3397,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr ""
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "Njemóžeš tutomu wužiwarju powěsć pósłać."
+msgstr "Njemóžeš wužiwarske róle na tutym sydle wotwołać."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Wužiwar bjez hodźaceho so profila."
+msgstr "Wužiwar nima tutu rólu."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3196,14 +3418,13 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Posedźenja"
#: actions/sessionsadminpanel.php:65
-#, fuzzy
msgid "Session settings for this StatusNet site."
-msgstr "Designowe nastajenja za tute sydło StatusNet."
+msgstr "Nastajenja posedźenja za tute sydło StatusNet."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3234,26 +3455,30 @@ msgstr "Dyrbiš přizjewjeny być, zo by sej aplikaciju wobhladał."
msgid "Application profile"
msgstr "Aplikaciski profil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
-msgstr ""
+msgstr "Symbol"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Mjeno"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organizacija"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Wopisanje"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistika"
@@ -3264,7 +3489,7 @@ msgstr ""
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "Aplikaciske akcije"
#: actions/showapplication.php:236
msgid "Reset key & secret"
@@ -3272,7 +3497,7 @@ msgstr ""
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Aplikaciske informacije"
#: actions/showapplication.php:263
msgid "Consumer key"
@@ -3301,14 +3526,13 @@ msgid ""
msgstr ""
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "Chceš woprawdźe tutu zdźělenku wušmórnyć?"
+msgstr "ChceÅ¡ woprawdźe swój pÅ™etrjebowarski kluÄ a potajny kod wróćo stajić?"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "%1$s a přećeljo, strona %2$d"
+msgstr "Preferowane zdźělenki wot %1$s, strona %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3338,16 +3562,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3357,74 +3581,74 @@ msgstr ""
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
msgid "%s group"
-msgstr ""
+msgstr "skupina %s"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "%1$s skupinskich ÄÅ‚onow, strona %2$d"
+msgstr "%1$s skupina, strona %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Skupinski profil"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr ""
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliasy"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Skupinske akcije"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr ""
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Čłonojo"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Žadyn)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "WÅ¡itcy ÄÅ‚onojo"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Wutworjeny"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3434,7 +3658,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3443,7 +3667,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administratorojo"
@@ -3458,12 +3682,12 @@ msgstr ""
#: actions/showmessage.php:108
#, php-format
msgid "Message to %1$s on %2$s"
-msgstr ""
+msgstr "Powěsć do %1$s na %2$s"
#: actions/showmessage.php:113
#, php-format
msgid "Message from %1$s on %2$s"
-msgstr ""
+msgstr "Powěsć wot %1$s na %2$s"
#: actions/shownotice.php:90
msgid "Notice deleted."
@@ -3475,9 +3699,9 @@ msgid " tagged %s"
msgstr ""
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "%1$s a přećeljo, strona %2$d"
+msgstr "%1$s, strona %2$d"
#: actions/showstream.php:122
#, php-format
@@ -3518,8 +3742,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3553,9 +3777,8 @@ msgid "User is already silenced."
msgstr ""
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Designowe nastajenja za tute sydło StatusNet."
+msgstr "Zakładne nastajenja za tute sydło StatusNet."
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
@@ -3571,11 +3794,11 @@ msgid "Unknown language \"%s\"."
msgstr "Njeznata rÄ›Ä \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3588,7 +3811,7 @@ msgstr "Sydłowe mjeno"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr ""
+msgstr "Mjeno twojeho sydła, kaž \"TwojePředewzaće Microblog\""
#: actions/siteadminpanel.php:229
msgid "Brought by"
@@ -3620,12 +3843,11 @@ msgstr "Standardne Äasowe pasmo"
#: actions/siteadminpanel.php:257
msgid "Default timezone for the site; usually UTC."
-msgstr ""
+msgstr "Standardne Äasowe pasmo za sydÅ‚o; zwjetÅ¡a UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Standardna sydÅ‚owa rÄ›Ä"
+msgstr "Standardna rÄ›Ä"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
@@ -3652,140 +3874,189 @@ msgid "How long users must wait (in seconds) to post the same thing again."
msgstr ""
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Zdźělenki"
+msgstr "Sydłowa zdźělenka"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nowa powěsć"
+msgstr "Sydłodaloku powěsć wobdźěłać"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Wužiwar nima poslednju powěsć"
+msgstr "Njeje móžno, sydłowu zdźělenku składować."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Njepłaćiwy wobsah zdźělenki"
+msgstr "Tekst sydłoweje zdźělenki"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Sydłowe nastajenja składować"
+msgstr "Sydłowu zdźělenku składować"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS-nastajenja"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS k dispoziciji njesteji."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-adresa"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
-msgstr ""
+msgstr "Wobkrućenski kod"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Wobkrućić"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "SMS telefonowe ÄisÅ‚o"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS-nastajenja"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "SMS-nastajenja składowane."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Žane telefonowe ÄisÅ‚o."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "To je hižo twoje telefonowe ÄisÅ‚o."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Te telefonowe ÄisÅ‚o hižo druhemu wužiwarjej sÅ‚uÅ¡a."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
-msgstr ""
+msgstr "To je wopaÄne wobkrućenske ÄisÅ‚o."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS-wobkrućenje přetorhnjene."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
-msgstr ""
+msgstr "To twoje telefonowe ÄisÅ‚o njeje."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Telefonowe ÄisÅ‚o za SMS bu wotstronjene."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Žadyn kod zapodaty"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Konfiguraciju wobrazowkoweho fota zrjadować"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -3800,7 +4071,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3832,32 +4103,29 @@ msgid "Snapshots will be sent to this URL"
msgstr ""
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Sydłowe nastajenja składować"
+msgstr "Nastajenja wobrazowkoweho fota składować"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Njejsy tón profil abonował."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
-msgstr ""
+msgstr "Abonement njeda so składować."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
msgstr ""
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "Dataja njeeksistuje."
+msgstr "Profil njeeksistuje."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "Njejsy tón profil abonował."
+msgstr "Njemóžeš zdaleny profil OMB 0.1 z tutej akciju abonować."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -3891,7 +4159,7 @@ msgstr ""
#: actions/subscribers.php:110
#, php-format
msgid "%s has no subscribers. Want to be the first?"
-msgstr ""
+msgstr "%s abonentow nima. Chceš prěni być?"
#: actions/subscribers.php:114
#, php-format
@@ -3934,11 +4202,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr ""
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -3971,12 +4239,12 @@ msgstr "Žadyn argument ID."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Wužiwarski profil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4007,10 +4275,6 @@ msgstr ""
msgid "No such tag."
msgstr ""
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Njejsy toho wužiwarja zablokował."
@@ -4024,8 +4288,8 @@ msgid "User is not silenced."
msgstr ""
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+msgid "No profile ID in request."
+msgstr "Žadyn profilowy ID w naprašowanju."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4039,7 +4303,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Wužiwar"
@@ -4059,9 +4322,10 @@ msgstr ""
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
-msgstr ""
+msgstr "Njepłaćiwy standardny abonement: '%1$s' wužiwar njeje."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4108,7 +4372,7 @@ msgstr ""
#: actions/userauthorization.php:105
msgid "Authorize subscription"
-msgstr ""
+msgstr "Abonement awtorizować"
#: actions/userauthorization.php:110
msgid ""
@@ -4117,7 +4381,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licenca"
@@ -4140,7 +4404,7 @@ msgstr "Tutón abonement wotpokazać"
#: actions/userauthorization.php:232
msgid "No authorization request!"
-msgstr ""
+msgstr "Žane awtorizaciske naprašowanje!"
#: actions/userauthorization.php:254
msgid "Subscription authorized"
@@ -4187,7 +4451,7 @@ msgstr ""
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr ""
+msgstr "URL awatara '%s' njeje płaćiwy"
#: actions/userauthorization.php:350
#, php-format
@@ -4197,7 +4461,7 @@ msgstr ""
#: actions/userauthorization.php:355
#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr ""
+msgstr "WopaÄny wobrazowy typ za awatarowy URL '%s'."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
@@ -4213,48 +4477,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "%1$s skupinskich ÄÅ‚onow, strona %2$d"
+msgstr "%1$s skupinow, strona %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
-msgstr ""
+msgstr "Dalše skupiny pytać"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
-msgstr ""
+msgstr "%s ÄÅ‚on w žanej skupinje njeje."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
-msgstr ""
+msgstr "Aktualizacije wot %1$s na %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
-msgstr ""
+msgstr "Sobuskutkowarjo"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4262,7 +4532,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4270,400 +4540,505 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
-msgstr ""
+msgstr "TykaÄe"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Wersija"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Awtorojo"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Njepłaćiwe datajowe mjeno."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Přizamknjenje k skupinje je so njeporadźiło."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Njeje dźěl skupiny."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Wopušćenje skupiny je so njeporadźiło."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "Skupina njeje so dała aktualizować."
+msgstr "Lokalna skupina njeda so aktualizować."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Njeje móžno było, přizjewjenske znamješko za %s wutworić"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
-msgstr ""
+msgstr "Powěsć njeda so zasunyć."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Zmylk datoweje banki pÅ™i zasunjenju haÅ¡eje tafliÄki: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr ""
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr ""
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr ""
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr ""
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Falowacy profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Njeje móžno, tafliÄku skÅ‚adować."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Hižo abonowany!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Wužiwar je će zablokował."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Njeje abonowany!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr "Sebjeabonement njeje so daÅ‚ zniÄić."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "Sebjeabonement njeda so zhašeć."
-#: classes/Subscription.php:190
-#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Abonoment njeje so daÅ‚ zniÄić."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Znamjo OMB-abonementa njeda so zhašeć."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr "Abonoment njeje so daÅ‚ zniÄić."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr "Abonoment njeda so zhašeć ."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
-msgstr ""
+msgstr "Witaj do %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
-msgstr ""
+msgstr "Skupina njeda so wutowrić."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Skupina njeje so dała aktualizować."
+msgstr "URI skupiny njeda so nastajić."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
-msgstr ""
+msgstr "Skupinske ÄÅ‚onstwo njeda so stajić."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Profil njeje so składować dał."
+msgstr "Informacije wo lokalnej skupinje njedachu so składować."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
-msgstr ""
+msgstr "Twoje profilowe nastajenja změnić"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
-msgstr ""
+msgstr "Awatar nahrać"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
-msgstr ""
+msgstr "Twoje hesło změnić"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Druhe"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Druhe opcije"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Druhe"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Strona bjez titula"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Wosobinski"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Změń swoje hesło."
+msgstr "Wašu e-mejl, waš awatar, waše hesło, waš profil změnić"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "Zwiski"
+msgstr "Ze słužbami zwjazać"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Zwjazać"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Sydłowu konfiguraciju změnić"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administrator"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr ""
-"Wužij tutón formular, zo by swojich přećelow a kolegow přeprosył, zo bychu "
-"tutu słužbu wužiwali."
+msgstr "Přećelow a kolegow přeprosyć, so tebi na %s přidružić"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Přeprosyć"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
-msgstr "Šat za sydło."
+msgstr "Ze sydła wotzjewić"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
-msgstr "Logo"
+msgstr "Wotzjewić"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Konto załožić"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrować"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Při sydle přizjewić"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
-msgstr "Přizjewić"
+msgstr "Přizjewjenje"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Pomhaj!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Pomoc"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Za ludźimi abo tekstom pytać"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Pytać"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr ""
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr ""
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Pomoc"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Wo"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Huste prašenja"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Priwatnosć"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Žórło"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr ""
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4671,230 +5046,275 @@ msgid ""
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr ""
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
-msgstr ""
+msgstr "Po"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
+msgstr "Před"
+
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
-#: lib/activity.php:453
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
-msgstr ""
+msgstr "Njemóžeš tute sydło změnić."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Změny na tutym woknje njejsu dowolene."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
-msgstr ""
+msgstr "showForm() njeimplementowany."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
msgid "saveSettings() not implemented."
-msgstr ""
+msgstr "saveSettings() njeimplementowany."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
-msgstr ""
+msgstr "Zakładna sydłowa konfiguracija"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Sydło"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr ""
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Design"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
-#, fuzzy
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Wužiwarska konfiguracija"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Wužiwar"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
-#, fuzzy
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Přistupna konfiguracija"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
-#, fuzzy
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Konfiguracija posedźenjow"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Dwójna zdźělenka"
+msgstr "Sydłowu zdźělenku wobdźěłać"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "SMS-wobkrućenje"
+msgstr "Konfiguracija wobrazowkowych fotow"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
-msgstr ""
+msgstr "Aplikaciju wobdźěłać"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Symbol za tutu aplikaciju"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Wopisaj swoju aplikaciju z %d znamješkami"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Wopisaj swoju aplikaciju"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL žórła"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr ""
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL žórła"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "Organizacija, kotraž je za tutu aplikaciju zamołwita"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr ""
+msgstr "URL za startowu stronu organizacije"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
-msgstr ""
+msgstr "Wobhladowak"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "Desktop"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Jenož Äitajomny"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Popisujomny"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Přetorhnyć"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "popisujomny"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "jenož Äitajomny"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Wotwołać"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
-msgstr ""
+msgstr "Přiwěški"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Awtor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
-msgstr ""
+msgstr "Poskićowar"
#: lib/attachmentnoticesection.php:67
msgid "Notices where this attachment appears"
@@ -4904,45 +5324,64 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Změnjenje hesła je so njeporadźiło"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Změnjenje hesła njeje dowolene"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
-msgstr ""
+msgstr "Přikazowe wuslědki"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
-msgstr ""
+msgstr "Přikaz je so njeporadźił"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Zdźělenka z tym ID njeeksistuje"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Wužiwar nima poslednju powěsć"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
-msgstr ""
+msgstr "Wužiwar z přimjenom %s njeda so namakać"
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Lokalny wužiwar z přimjenom %s njeda so namakać"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Tutón přikaz hišće njeje implementowany."
-#: lib/command.php:92
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr ""
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -4950,170 +5389,174 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Zdźělenka z tym ID njeeksistuje"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Wužiwar nima poslednju powěsć"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Sy hižo ÄÅ‚on teje skupiny"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Njebě móžno wužiwarja %s skupinje %s přidać"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s je so k skupinje %s přizamknył"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Njebě móžno wužiwarja %s do skupiny %s přesunyć"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Njebě móžno wužiwarja %1$s skupinje %2%s přidać."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s je skupinu %s wopušćił"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Njebě móžno, wužiwarja %1$s ze skupiny %2$s wotstronić"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Dospołne mjeno: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Městno: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
-msgstr ""
+msgstr "Startowa strona: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Wo: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Powěsć předołho - maksimalna wulkosć je %1$d znamješkow, ty sy %2$d pósłał"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Direktna powěsć do %s pósłana"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
-msgstr ""
+msgstr "Zmylk při słanju direktneje powěsće,"
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Njemóžeš swójsku powěsć wospjetować"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Tuta zdźělenka bu hižo wospjetowana"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Zdźělenka wot %s wospjetowana"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Zmylk při wospjetowanju zdźělenki"
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Wotmołwa na %s pósłana"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr ""
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
-msgstr ""
+msgstr "Podaj mjeno wužiwarja, kotrehož chceš abonować"
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "Wužiwar njeeksistuje"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "OMB-profile njedadźa so přez přikaz abonować."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
-msgstr ""
+msgstr "%s abonowany"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
-msgstr ""
+msgstr "Podaj mjeno wužiwarja, kotrehož chceš wotskazać"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
-msgstr ""
+msgstr "%s wotskazany"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
-msgstr ""
+msgstr "Přikaz hišće njeimplementowany."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
-msgstr ""
+msgstr "Přizjewjenski přikaz je znjemóžnjeny"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
-msgstr "Wotskazany"
+msgstr "%s wotskazany"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
-msgstr ""
+msgstr "Njejsy nikoho abonował."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Sy tutu wosobu abonował:"
@@ -5121,11 +5564,11 @@ msgstr[1] "Sy tutej wosobje abonował:"
msgstr[2] "Sy tute wosoby abonował:"
msgstr[3] "Sy tute wosoby abonował:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
-msgstr ""
+msgstr "Nichtó njeje će abonował."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Tuta wosoba je će abonowała:"
@@ -5133,11 +5576,11 @@ msgstr[1] "Tutej wosobje stej će abonowałoj:"
msgstr[2] "Tute wosoby su će abonowali:"
msgstr[3] "Tute wosoby su će abonowali:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
-msgstr ""
+msgstr "Njejsy ÄÅ‚on w žanej skupinje."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Sy ÄÅ‚on tuteje skupiny:"
@@ -5145,7 +5588,7 @@ msgstr[1] "Sy ÄÅ‚on tuteju skupinow:"
msgstr[2] "Sy ÄÅ‚on tutych skupinow:"
msgstr[3] "Sy ÄÅ‚on tutych skupinow:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5187,21 +5630,21 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Žana konfiguraciska dataja namakana. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "Sym na slědowacych městnach za konfiguraciskimi datajemi pytał: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
-msgstr ""
+msgstr "Móže być, zo chceš instalaciski program startować, zo by to porjedźił."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
-msgstr ""
+msgstr "K instalaciji"
#: lib/connectsettingsaction.php:110
msgid "IM"
@@ -5209,11 +5652,11 @@ msgstr "IM"
#: lib/connectsettingsaction.php:111
msgid "Updates by instant messenger (IM)"
-msgstr ""
+msgstr "Aktualizacije přez Instant Messenger (IM)"
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
-msgstr ""
+msgstr "Aktualizacije přez SMS"
#: lib/connectsettingsaction.php:120
msgid "Connections"
@@ -5221,7 +5664,7 @@ msgstr "Zwiski"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "Awtorizowane zwjazane aplikacije"
#: lib/dberroraction.php:60
msgid "Database error"
@@ -5235,6 +5678,8 @@ msgstr "Dataju nahrać"
msgid ""
"You can upload your personal background image. The maximum file size is 2MB."
msgstr ""
+"Móžeš swój wosobinski pozadkowy wobraz nahrać. Maksimalna datajowa wulkosć "
+"je 2 MB."
#: lib/designsettings.php:418
msgid "Design defaults restored."
@@ -5270,7 +5715,7 @@ msgstr "FOAF"
#: lib/feedlist.php:64
msgid "Export data"
-msgstr ""
+msgstr "Daty eksportować"
#: lib/galleryaction.php:121
msgid "Filter tags"
@@ -5294,7 +5739,7 @@ msgstr ""
#: lib/galleryaction.php:143
msgid "Go"
-msgstr ""
+msgstr "Start"
#: lib/grantroleform.php:91
#, php-format
@@ -5318,6 +5763,8 @@ msgstr "Skupinu abo temu w %d znamješkach wopisać"
msgid ""
"Location for the group, if any, like \"City, State (or Region), Country\""
msgstr ""
+"Městno za skupinu, jeli eksistuje, na př. \"město, zwjazkowy kraj (abo "
+"region), kraj\""
#: lib/groupeditform.php:187
#, php-format
@@ -5340,7 +5787,7 @@ msgstr ""
#: lib/groupnav.php:108
#, php-format
msgid "Edit %s group properties"
-msgstr ""
+msgstr "Kajkosće skupiny %s wobdźěłać"
#: lib/groupnav.php:113
msgid "Logo"
@@ -5369,60 +5816,63 @@ msgstr "Skupiny z njawjace powěsćemi"
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
+"Tuta strona we wot tebje akceptowanym medijowym typje k dispoziciji "
+"njesteji."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Njepodpěrowany wobrazowy format."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
-msgstr ""
+msgstr "Tuta dataja je přewulka. Maksimalna datajowa wulkosć je %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Dźělne nahraće."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
-msgstr ""
-
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
+msgstr "Systemowy zmylk při nahrawanju dataje."
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr ""
+msgid "Not an image or corrupt file."
+msgstr "Žady wobraz abo žana wobškodźena dataja."
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Naša dataja je so zhubiła."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Njeznaty datajowy typ"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "KB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Njeznate žórło postoweho kašćika %d."
#: lib/joinform.php:114
msgid "Join"
-msgstr ""
+msgstr "Zastupić"
#: lib/leaveform.php:114
msgid "Leave"
@@ -5436,11 +5886,13 @@ msgstr "Přizjewjenje z wužiwarskim mjenom a hesłom"
msgid "Sign up for a new account"
msgstr "Nowe konto registrować"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Wobkrućenje e-mejloweje adresy"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5457,12 +5909,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr ""
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5477,17 +5938,20 @@ msgid ""
"Change your email address or notification options at %8$s\n"
msgstr ""
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Biografija: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5500,21 +5964,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr ""
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS-wobkrućenje"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5530,12 +6004,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nowa priwatna powěsć wot %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5554,12 +6030,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) je twoju zdźělenku jako faworit přidał"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5580,12 +6058,25 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"DospoÅ‚nu rozmoÅ‚wu móžes tu Äitać:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5598,11 +6089,23 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
-msgstr ""
+msgstr "Jenož wužiwar móže swoje póstowe kašćiki Äitać."
#: lib/mailbox.php:139
msgid ""
@@ -5610,13 +6113,13 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "wot"
#: lib/mailhandler.php:37
msgid "Could not parse message."
-msgstr ""
+msgstr "Powěsć njeda so analyzować."
#: lib/mailhandler.php:42
msgid "Not a registered user."
@@ -5638,6 +6141,8 @@ msgstr "Njepodpěrany powěsćowy typ: %s"
#: lib/mediafile.php:98 lib/mediafile.php:123
msgid "There was a database error while saving your file. Please try again."
msgstr ""
+"Při składowanju twojeje dataje je zmylk w datowej bance wustupił. Prošu "
+"spytaj hišće raz."
#: lib/mediafile.php:142
msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
@@ -5659,30 +6164,30 @@ msgstr "Temporerny rjadowka faluje."
#: lib/mediafile.php:162
msgid "Failed to write file to disk."
-msgstr ""
+msgstr "Dataju njeda so na taÄel pisać."
#: lib/mediafile.php:165
msgid "File upload stopped by extension."
-msgstr ""
+msgstr "Datajowe nahraće přez rozšěrjenje zastajene."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
-msgstr ""
+msgstr "Dataja njeda so do ciloweho zapisa přesunyć."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
-msgstr ""
+msgstr "MIME-typ dataje njeda so zwěsćić."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
-msgstr ""
+msgstr "Spytaj druhi format %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s njeje podpěrany datajowy typ na tutym serwerje."
@@ -5700,7 +6205,6 @@ msgid "Available characters"
msgstr "K dispoziciji stejace znamješka"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Pósłać"
@@ -5712,7 +6216,7 @@ msgstr "Zdźělenku pósłać"
#: lib/noticeform.php:173
#, php-format
msgid "What's up, %s?"
-msgstr ""
+msgstr "Å to je, %s?"
#: lib/noticeform.php:192
msgid "Attach"
@@ -5736,48 +6240,52 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "S"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "J"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "W"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "Z"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
-msgstr ""
+msgstr "w konteksće"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Wospjetowany wot"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Na tutu zdźělenku wotmołwić"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Wotmołwić"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Zdźělenka wospjetowana"
@@ -5801,6 +6309,10 @@ msgstr "Zmylk při zasunjenju noweho profila"
msgid "Error inserting avatar"
msgstr "Zmylk při zasunjenju awatara"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Zmylk při aktualizowanju zdaleneho profila"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Zmylk při zasunjenju zdaleneho profila"
@@ -5811,7 +6323,7 @@ msgstr "Dwójna zdźělenka"
#: lib/oauthstore.php:490
msgid "Couldn't insert new subscription."
-msgstr ""
+msgstr "Nowy abonement njeda so zasunyć."
#: lib/personalgroupnav.php:99
msgid "Personal"
@@ -5827,7 +6339,7 @@ msgstr "Fawority"
#: lib/personalgroupnav.php:125
msgid "Inbox"
-msgstr ""
+msgstr "Dochadny póst"
#: lib/personalgroupnav.php:126
msgid "Your incoming messages"
@@ -5835,7 +6347,7 @@ msgstr "Twoje dochadźace powěsće"
#: lib/personalgroupnav.php:130
msgid "Outbox"
-msgstr ""
+msgstr "Wuchadny póst"
#: lib/personalgroupnav.php:131
msgid "Your sent messages"
@@ -5846,11 +6358,11 @@ msgstr "Twoje pósłane powěsće"
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Njeznaty"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonementy"
@@ -5858,33 +6370,34 @@ msgstr "Abonementy"
msgid "All subscriptions"
msgstr "WÅ¡Ä› abonementy"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abonenća"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Wšitcy abonenća"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Wužiwarski ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Čłon wot"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Dnjowy přerězk"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "WÅ¡Ä› skupiny"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Žane wróćenske argumenty."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
-msgstr ""
+msgstr "Njeimplementowana metoda."
#: lib/publicgroupnav.php:78
msgid "Public"
@@ -5906,22 +6419,30 @@ msgstr ""
msgid "Popular"
msgstr "Woblubowany"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Žane wróćenske argumenty."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Tutu zdźělenku wospjetować?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Haj"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Tutu zdźělenku wospjetować"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Tutoho wužiwarja za tutu skupinu blokować"
+msgstr "Rólu \"%s\" tutoho wužiwarja wotwołać"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "Žadyn jednotliwy wužiwar za modus jednotliweho wužiwarja definowany."
#: lib/sandboxform.php:67
msgid "Sandbox"
@@ -5982,17 +6503,17 @@ msgstr ""
#: lib/subgroupnav.php:83
#, php-format
msgid "People %s subscribes to"
-msgstr ""
+msgstr "Ludźo, kotrychž %s abonuje"
#: lib/subgroupnav.php:91
#, php-format
msgid "People subscribed to %s"
-msgstr ""
+msgstr "Ludźo, kotřiž su %s abonowali"
#: lib/subgroupnav.php:99
#, php-format
msgid "Groups %s is a member of"
-msgstr ""
+msgstr "Skupiny, w kotrychž %s je ÄÅ‚on"
#: lib/subgroupnav.php:105
msgid "Invite"
@@ -6017,6 +6538,48 @@ msgstr ""
msgid "None"
msgstr "Žadyn"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Składowanje šata je so njeporadźiło."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Zmylk pÅ™i woÄinjenju Å¡atoweho archiwa."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6045,91 +6608,108 @@ msgstr "Tutoho wužiwarja wotskazać"
msgid "Unsubscribe"
msgstr "Wotskazać"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Wužiwar %s (%d) nima profil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Awatar wobdźěłać"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Wužiwarske akcije"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Wužiwar so haša..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Profilowe nastajenja wobdźěłać"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Wobdźěłać"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Tutomu wužiwarja direktnu powěsć pósłać"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Powěsć"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
-msgstr ""
+msgstr "Moderěrować"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Wužiwarski profil"
+msgstr "Wužiwarska róla"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administratorojo"
+msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "před něšto sekundami"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "před něhdźe jednej mjeńšinu"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "před %d mjeńšinami"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "před něhdźe jednej hodźinu"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "před něhdźe %d hodźinami"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "před něhdźe jednym dnjom"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "před něhdźe %d dnjemi"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "před něhdźe jednym měsacom"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "před něhdźe %d měsacami"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "před něhdźe jednym lětom"
@@ -6145,7 +6725,9 @@ msgstr ""
"%s płaćiwa barba njeje! Wužij 3 heksadecimalne znamješka abo 6 "
"heksadecimalnych znamješkow."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
+"Powěsć je předołho - maksimalna wulkosć je %1$d znamješkow, ty sy %2$d "
+"pósłał."
diff --git a/locale/ia/LC_MESSAGES/statusnet.po b/locale/ia/LC_MESSAGES/statusnet.po
index 7a96686ed..82541026b 100644
--- a/locale/ia/LC_MESSAGES/statusnet.po
+++ b/locale/ia/LC_MESSAGES/statusnet.po
@@ -8,12 +8,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:08+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:35+0000\n"
"Language-Team: Interlingua\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ia\n"
"X-Message-Group: out-statusnet\n"
@@ -21,7 +21,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Accesso"
@@ -42,7 +42,6 @@ msgstr "Prohibir al usatores anonyme (sin session aperte) de vider le sito?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Private"
@@ -72,79 +71,83 @@ msgstr "Claudite"
msgid "Save access settings"
msgstr "Salveguardar configurationes de accesso"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Salveguardar"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Pagina non existe"
+msgid "No such page."
+msgstr "Pagina non existe."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Usator non existe."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s e amicos, pagina %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s e amicos"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Syndication pro le amicos de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Syndication pro le amicos de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Syndication pro le amicos de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -152,7 +155,7 @@ msgstr ""
"Isto es le chronologia pro %s e su amicos, ma necuno ha ancora publicate "
"alique."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -162,83 +165,85 @@ msgstr ""
"action.groups%%) o publica alique tu mesme."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Tu pote tentar [dar un pulsata a %1$s](../%2$s) in su profilo o [publicar un "
"message a su attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Proque non [registrar un conto](%%%%action.register%%%%) e postea dar un "
"pulsata a %s o publicar un message a su attention."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Tu e amicos"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Actualisationes de %1$s e su amicos in %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Methodo API non trovate."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Iste methodo require un POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"Tu debe specificar un parametro nominate 'device' con un del valores: sms, "
-"im, none"
+"im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Non poteva actualisar le usator."
@@ -247,7 +252,7 @@ msgstr "Non poteva actualisar le usator."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Le usator non ha un profilo."
@@ -257,9 +262,9 @@ msgid "Could not save profile."
msgstr "Non poteva salveguardar le profilo."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -317,47 +322,47 @@ msgstr "Messages directe a %s"
msgid "All the direct messages sent to %s"
msgstr "Tote le messages directe inviate a %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Message sin texto!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Isto es troppo longe. Le maximo es %d characteres."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Usator destinatario non trovate."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Non pote inviar messages directe a usatores que non es tu amicos."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Nulle stato trovate con iste ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Iste stato es ja favorite."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Non poteva crear le favorite."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Iste stato non es favorite."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Non poteva deler le favorite."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Non poteva sequer le usator: Usator non trovate."
+msgid "Could not follow user: profile not found."
+msgstr "Non poteva sequer le usator: profilo non trovate."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -372,9 +377,9 @@ msgstr "Non poteva cessar de sequer le usator: Usator non trovate."
msgid "You cannot unfollow yourself."
msgstr "Tu non pote cessar de sequer te mesme."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Duo IDs de usator o pseudonymos debe esser fornite."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Duo IDs o pseudonymos valide debe esser fornite."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -384,115 +389,127 @@ msgstr "Non poteva determinar le usator de origine."
msgid "Could not find target user."
msgstr "Non poteva trovar le usator de destination."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Le pseudonymo pote solmente haber minusculas e numeros, sin spatios."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Pseudonymo ja in uso. Proba un altere."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Non un pseudonymo valide."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Le pagina personal non es un URL valide."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Le nomine complete es troppo longe (max. 255 characteres)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Description es troppo longe (max %d charachteres)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Loco es troppo longe (max. 255 characteres)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Troppo de aliases! Maximo: %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Alias invalide: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Alias invalide: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Le alias \"%s\" es ja in uso. Proba un altere."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Le alias non pote esser identic al pseudonymo."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Gruppo non trovate!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Gruppo non trovate."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Tu es ja membro de iste gruppo."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Le administrator te ha blocate de iste gruppo."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Non poteva inscriber le usator %1$s in le gruppo %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Tu non es membro de iste gruppo."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Non poteva remover le usator %1$s del gruppo %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Gruppos de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Gruppos de %1$s del quales %2$s es membro."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Gruppos de %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "gruppos in %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Le incargamento ha fallite."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Nulle parametro oauth_token fornite."
@@ -502,17 +519,17 @@ msgid "Invalid token."
msgstr "Indicio invalide."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -548,12 +565,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Le indicio de requesta %s ha essite refusate e revocate."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Submission de formulario inexpectate."
@@ -576,20 +596,22 @@ msgstr ""
"<strong>%3$s</strong> le datos de tu conto de %4$s. Tu debe solmente dar "
"accesso a tu conto de %4$s a tertie personas in le quales tu ha confidentia."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Conto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Pseudonymo"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Contrasigno"
@@ -605,11 +627,11 @@ msgstr "Permitter"
msgid "Allow or deny access to your account information."
msgstr "Permitter o refusar accesso al informationes de tu conto."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Iste methodo require un commando POST o DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Tu non pote deler le stato de un altere usator."
@@ -626,63 +648,67 @@ msgstr "Non pote repeter tu proprie nota."
msgid "Already repeated that notice."
msgstr "Iste nota ha ja essite repetite."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Stato delite."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Nulle stato trovate con iste ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Le cliente debe fornir un parametro 'status' con un valor."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
"Isto es troppo longe. Le longitude maximal del notas es %d characteres."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Non trovate"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Non trovate."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"Le longitude maximal del notas es %d characteres, includente le URL "
"adjungite."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formato non supportate."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favorites de %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s actualisationes favoritisate per %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Actualisationes que mentiona %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
"Actualisationes de %1$s que responde al actualisationes de %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Chronologia public de %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "Actualisationes de totes in %s!"
@@ -697,19 +723,19 @@ msgstr "Repetite a %s"
msgid "Repeats of %s"
msgstr "Repetitiones de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notas con etiquetta %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Actualisationes con etiquetta %1$s in %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Non trovate."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Methodo API in construction."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -730,8 +756,9 @@ msgstr "Nulle dimension."
msgid "Invalid size."
msgstr "Dimension invalide."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -742,9 +769,9 @@ msgstr ""
"Tu pote incargar tu avatar personal. Le dimension maximal del file es %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr "Usator sin profilo correspondente"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -763,7 +790,7 @@ msgid "Preview"
msgstr "Previsualisation"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Deler"
@@ -775,23 +802,27 @@ msgstr "Incargar"
msgid "Crop"
msgstr "Taliar"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Nulle file incargate."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Selige un area quadrate del imagine pro facer lo tu avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Datos del file perdite."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar actualisate."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Actualisation del avatar fallite."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar delite."
@@ -799,11 +830,11 @@ msgstr "Avatar delite."
msgid "You already blocked that user."
msgstr "Tu ha ja blocate iste usator."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Blocar usator"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -813,27 +844,42 @@ msgstr ""
"cancellate, ille non potera resubscriber se a te in le futuro, e tu non "
"recipera notification de su @-responsas."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Non blocar iste usator"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Si"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Blocar iste usator"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Falleva de salveguardar le information del blocada."
@@ -846,8 +892,8 @@ msgstr "Falleva de salveguardar le information del blocada."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Gruppo non existe."
@@ -877,9 +923,11 @@ msgstr "Disblocar"
msgid "Unblock this user"
msgstr "Disblocar iste usator"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Publicar in "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Publicar in %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -893,33 +941,43 @@ msgstr "Codice de confirmation non trovate."
msgid "That confirmation code is not for you!"
msgstr "Iste codice de confirmation non es pro te!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Typo de adresse %s non recognoscite"
+msgid "Unrecognized address type %s."
+msgstr "Le typo de adresse %s non es recognoscite."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Iste adresse ha ja essite confirmate."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Non poteva actualisar usator."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Non poteva deler confirmation de e-mail."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Confirmar adresse"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Le adresse \"%s\" ha essite confirmate pro tu conto."
@@ -929,7 +987,7 @@ msgid "Conversation"
msgstr "Conversation"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notas"
@@ -948,7 +1006,7 @@ msgstr "Tu non es le proprietario de iste application."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Il habeva un problema con tu indicio de session."
@@ -966,24 +1024,26 @@ msgstr ""
"le application del base de datos, includente tote le existente connexiones "
"de usator."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Non deler iste application"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Deler iste application"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
-msgstr "Non identificate."
+msgstr "Tu non ha aperite un session."
#: actions/deletenotice.php:71
msgid "Can't delete this notice."
@@ -1005,11 +1065,13 @@ msgstr "Deler nota"
msgid "Are you sure you want to delete this notice?"
msgstr "Es tu secur de voler deler iste nota?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Non deler iste nota"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Deler iste nota"
@@ -1033,58 +1095,71 @@ msgstr ""
"Es tu secur de voler deler iste usator? Isto radera tote le datos super le "
"usator del base de datos, sin copia de reserva."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Deler iste usator"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Apparentia"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Configuration del apparentia de iste sito StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL de logotypo invalide."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Thema non disponibile: %s"
+msgid "Theme not available: %s."
+msgstr "Thema non disponibile: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Cambiar logotypo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logotypo del sito"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Cambiar thema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Thema del sito"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Le thema de apparentia pro le sito."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Apparentia personalisate"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+"Es possibile incargar un apparentia personalisate de StatusNet in un "
+"archivo .ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Cambiar imagine de fundo"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Fundo"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1093,67 +1168,76 @@ msgstr ""
"Tu pote incargar un imagine de fundo pro le sito. Le dimension maximal del "
"file es %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Active"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Non active"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Activar o disactivar le imagine de fundo."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Tegular le imagine de fundo"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Cambiar colores"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Contento"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra lateral"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texto"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Ligamines"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avantiate"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalisate"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Usar predefinitiones"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Restaurar apparentias predefinite"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Revenir al predefinitiones"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Salveguardar"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Salveguardar apparentia"
@@ -1258,11 +1342,17 @@ msgstr "Usa iste formulario pro modificar le gruppo."
msgid "description is too long (max %d chars)."
msgstr "description es troppo longe (max %d chars)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Alias invalide: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Non poteva actualisar gruppo."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Non poteva crear aliases."
@@ -1270,31 +1360,42 @@ msgstr "Non poteva crear aliases."
msgid "Options saved."
msgstr "Optiones salveguardate."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Configuration de e-mail"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Configurar como reciper e-mail de %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresse"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Adresse de e-mail"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Adresse de e-mail actualmente confirmate."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Remover"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1302,107 +1403,137 @@ msgstr ""
"Attende confirmation de iste adresse. Verifica tu cassa de entrata (e de "
"spam!) pro un message con ulterior instructiones."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancellar"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Adresse de e-mail"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Le adresse de e-mail, como \"nomine@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Adder"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "E-mail entrante"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Invia e-mail a iste adresse pro publicar nove notas."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Face un nove adresse de e-mail per le qual publicar; cancella le vetule."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nove"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferentias"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferentias de e-mail"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Inviar me notificationes de nove subscriptiones per e-mail."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Inviar me e-mail quando alcuno adde mi nota al favorites."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Inviar me e-mail quando alcuno me invia un message private."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Inviar me e-mail quando alcuno me invia un \"responsa @\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Permitte que amicos me pulsa e me invia e-mail."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Io vole publicar notas per e-mail."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publicar un MicroID pro mi adresse de e-mail."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Preferentias confirmate."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Preferentias de e-mail salveguardate."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Nulle adresse de e-mail."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Non pote normalisar iste adresse de e-mail"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Adresse de e-mail invalide."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Isto es ja tu adresse de e-mail."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Iste adresse de e-mail pertine ja a un altere usator."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Non poteva inserer le codice de confirmation."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1411,43 +1542,53 @@ msgstr ""
"addeva. Verifica tu cassa de entrata (e de spam!) pro le codice e le "
"instructiones pro usar lo."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Nulle confirmation pendente a cancellar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Iste adresse de messageria instantanee es erronee."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Iste adresse de e-mail es erronee."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmation cancellate."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Confirmation de e-mail cancellate."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Isto non es tu adresse de e-mail."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Le adresse ha essite removite."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Le adresse de e-mail ha essite removite."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Nulle adresse de e-mail entrante."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Non poteva actualisar le datos del usator."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Adresse de e-mail entrante removite."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nove adresse de e-mail entrante addite."
@@ -1565,9 +1706,9 @@ msgstr "Non poteva converter le indicio de requesta in un indicio de accesso."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Le servicio remote usa un version incognite del protocollo OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Error in actualisar le profilo remote"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Error durante le actualisation del profilo remote."
#: actions/getfile.php:79
msgid "No such file."
@@ -1578,33 +1719,30 @@ msgid "Cannot read file."
msgstr "Non pote leger file."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Indicio invalide."
+msgstr "Rolo invalide."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Iste rolo es reservate e non pote esser apponite."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "Tu non pote mitter usatores in le cassa de sablo in iste sito."
+msgstr "Tu non pote conceder rolos a usatores in iste sito."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "Usator es ja silentiate."
+msgstr "Le usator ha ja iste rolo."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Nulle profilo specificate."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Non existe un profilo con iste ID."
@@ -1625,11 +1763,11 @@ msgstr "Le usator es ja blocate del gruppo."
msgid "User is not a member of group."
msgstr "Le usator non es membro del gruppo."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Blocar usator del gruppo"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1640,15 +1778,17 @@ msgstr ""
"essera removite del gruppo, non potera publicar messages, e non potera "
"subscriber se al gruppo in le futuro."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Non blocar iste usator de iste gruppo"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Blocar iste usator de iste gruppo"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Error del base de datos al blocar le usator del gruppo."
@@ -1693,10 +1833,6 @@ msgstr ""
"Tu pote incargar un imagine pro le logotypo de tu gruppo. Le dimension "
"maximal del file es %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Usator sin profilo correspondente"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Selige un area quadrate del imagine que devenira le logotypo."
@@ -1727,34 +1863,38 @@ msgstr "Un lista de usatores in iste gruppo."
msgid "Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blocar"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Facer le usator administrator del gruppo"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Facer administrator"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Facer iste usator administrator"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Chronologia de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Actualisationes de membros de %1$s in %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Gruppos"
@@ -1779,7 +1919,7 @@ msgstr ""
"vide un gruppo que te place? Tenta [cercar un](%%%%action.groupsearch%%%%) o "
"[crear le tue!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Crear un nove gruppo"
@@ -1831,11 +1971,15 @@ msgstr "Le usator non es blocate del gruppo."
msgid "Error removing the block."
msgstr "Error de remover le blocada."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Configuration de messageria instantanee"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1844,15 +1988,24 @@ msgstr ""
"Tu pote inviar e reciper notas per [messages instantanee](%%doc.im%%) de "
"Jabber/GTalk. Configura tu adresse e parametros hic infra."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Messageria instantanee non disponibile."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Adresse de messageria instantanee"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Adresse Jabber/GTalk actualmente confirmate."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1861,11 +2014,9 @@ msgstr ""
"Attende confirmation de iste adresse. Verifica tu conto Jabber/GTalk pro un "
"message con ulterior instructiones. (Ha tu addite %s a tu lista de amicos?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Adresse de messageria instantanee"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1875,45 +2026,66 @@ msgstr ""
"de adder %s a tu lista de amicos in tu cliente de messageria instantanee o "
"in GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferentias de messageria instantanee"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Inviar me notas per Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Publicar un nota quando mi stato de Jabber/GTalk cambia."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Inviar me responsas per Jabber/GTalk de personas al quales io non es "
"subscribite."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publicar un MicroID pro mi adresse Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferentias confirmate."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Nulle ID de Jabber."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Non pote normalisar iste ID de Jabber"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "ID de Jabber non valide"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Isto es ja tu ID de Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Le ID de Jabber pertine ja a un altere usator."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1922,10 +2094,32 @@ msgstr ""
"Un codice de confirmation ha essite inviate al adresse de messageria "
"instantanee specificate. Tu debe approbar que %s invia messages a te."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Iste adresse de messageria instantanee es erronee."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Non poteva deler confirmation de messageria instantanee."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Confirmation de messageria instantanee cancellate."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Isto non es tu ID de Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Le adresse de messageria instantanee ha essite removite."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1948,8 +2142,8 @@ msgstr "Le invitationes ha essite disactivate."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "Tu debe aperir un session pro invitar altere usatores a usar %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Tu debe aperir un session pro invitar altere usatores a usar %s."
#: actions/invite.php:72
#, php-format
@@ -1968,7 +2162,9 @@ msgstr "Invitar nove usatores"
msgid "You are already subscribed to these users:"
msgstr "Tu es a subscribite a iste usatores:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2016,17 +2212,18 @@ msgstr "Si tu vole, adde un message personal al invitation."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Inviar"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s te ha invitate a accompaniar le/la in %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2088,11 +2285,12 @@ msgid "You must be logged in to join a group."
msgstr "Tu debe aperir un session pro facer te membro de un gruppo."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Nulle pseudonymo."
+msgstr "Nulle pseudonymo o ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s es ora membro del gruppo %2$s"
@@ -2101,51 +2299,53 @@ msgstr "%1$s es ora membro del gruppo %2$s"
msgid "You must be logged in to leave a group."
msgstr "Tu debe aperir un session pro quitar un gruppo."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Tu non es membro de iste gruppo."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s quitava le gruppo %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
-msgstr "Tu es ja identificate."
+msgstr "Tu es jam authenticate."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nomine de usator o contrasigno incorrecte."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Error de acceder al conto de usator. Tu probabilemente non es autorisate."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Aperir session"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
-msgstr "Identificar te a iste sito"
+msgstr "Authenticar te a iste sito"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Memorar me"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Aperir session automaticamente in le futuro; non pro computatores usate in "
"commun!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Contrasigno perdite o oblidate?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2153,14 +2353,16 @@ msgstr ""
"Pro motivos de securitate, per favor re-entra tu nomine de usator e "
"contrasigno ante de cambiar tu configurationes."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Aperi un session con tu nomine de usator e contrasigno."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Aperi un session con tu nomine de usator e contrasigno. Non ha ancora un "
-"nomine de usator? [Crea](%%action.register%%) un nove conto."
+"Non ha ancora un nomine de usator? [Crea](%%action.register%%) un nove conto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2182,8 +2384,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Non pote facer %1$s administrator del gruppo %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Nulle stato actual"
+msgid "No current status."
+msgstr "Nulle stato actual."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2217,12 +2419,12 @@ msgstr "Usa iste formulario pro crear un nove gruppo."
msgid "New message"
msgstr "Nove message"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Tu non pote inviar un message a iste usator."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Nulle contento!"
@@ -2230,7 +2432,7 @@ msgstr "Nulle contento!"
msgid "No recipient specified."
msgstr "Nulle destinatario specificate."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2246,7 +2448,7 @@ msgstr "Message inviate"
msgid "Direct message to %s sent."
msgstr "Message directe a %s inviate."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Error de Ajax"
@@ -2254,7 +2456,7 @@ msgstr "Error de Ajax"
msgid "New notice"
msgstr "Nove nota"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Nota publicate"
@@ -2307,7 +2509,7 @@ msgstr "Actualisationes correspondente al termino de recerca \"%1$s\" in %2$s!"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Iste usator non accepta pulsatas o non ha ancora confirmate o fornite su "
"adresse de e-mail."
@@ -2350,11 +2552,11 @@ msgid "You are not a user of that application."
msgstr "Tu non es usator de iste application."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Impossibile revocar le accesso del application: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Impossibile revocar le accesso del application: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Tu non ha autorisate alcun application a usar tu conto."
@@ -2364,25 +2566,30 @@ msgstr ""
"Le programmatores pote modificar le parametros de registration pro lor "
"applicationes "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Le nota ha nulle profilo"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Le nota ha nulle profilo."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Le stato de %1$s in %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "typo de contento "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Le typo de contento %s non es supportate."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Solmente "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Solmente le URLs %s es permittite super HTTP simple."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Formato de datos non supportate."
@@ -2486,7 +2693,7 @@ msgid "6 or more characters"
msgstr "6 o plus characteres"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmar"
@@ -2498,11 +2705,11 @@ msgstr "Identic al contrasigno hic supra"
msgid "Change"
msgstr "Cambiar"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Le contrasigno debe haber al minus 6 characteres."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Le contrasignos non corresponde."
@@ -2514,7 +2721,7 @@ msgstr "Ancian contrasigno incorrecte"
msgid "Error saving user; invalid."
msgstr "Error de salveguardar le usator; invalide."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Non pote salveguardar le nove contrasigno."
@@ -2523,7 +2730,7 @@ msgid "Password saved."
msgstr "Contrasigno salveguardate."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Camminos"
@@ -2533,23 +2740,23 @@ msgstr "Configuration de cammino e servitor pro iste sito StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Directorio de thema non legibile: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Directorio de thema non legibile: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Directorio de avatar non scriptibile: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Directorio de avatar non scriptibile: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Directorio de fundo non scriptibile: %s"
+msgid "Background directory not writable: %s."
+msgstr "Directorio de fundo non scriptibile: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Directorio de localitates non scriptibile: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Directorio de localitates non scriptibile: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2688,19 +2895,19 @@ msgstr ""
msgid "People search"
msgstr "Recerca de personas"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Etiquetta de personas invalide: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Etiquetta de personas invalide: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Usatores auto-etiquettate con %1$s - pagina %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Le contento del nota es invalide"
+msgid "Invalid notice content."
+msgstr "Le contento del nota es invalide."
#: actions/postnotice.php:101
#, php-format
@@ -2728,42 +2935,43 @@ msgstr "Information de profilo"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 minusculas o numeros, sin punctuation o spatios"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nomine complete"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Pagina personal"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL de tu pagina personal, blog o profilo in un altere sito"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Describe te e tu interesses in %d characteres"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Describe te e tu interesses"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Bio"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Loco"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Ubi tu es, como \"Citate, Stato (o Region), Pais\""
@@ -2773,7 +2981,7 @@ msgstr "Divulgar mi loco actual quando io publica notas"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Etiquettas"
@@ -2806,7 +3014,7 @@ msgid ""
msgstr ""
"Subscriber me automaticamente a qui se subscribe a me (utile pro non-humanos)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Bio es troppo longe (max %d chars)."
@@ -2847,8 +3055,8 @@ msgstr "Preferentias confirmate."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Ultra le limite de pagina (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Ultra le limite de pagina (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2953,7 +3161,7 @@ msgstr "Etiquettario"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
-msgstr "Tu es ja identificate!"
+msgstr "Tu es jam authenticate!"
#: actions/recoverpassword.php:62
msgid "No such recovery code."
@@ -3015,7 +3223,7 @@ msgstr "Reinitialisar contrasigno"
msgid "Recover password"
msgstr "Recuperar contrasigno"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Recuperation de contrasigno requestate"
@@ -3035,19 +3243,19 @@ msgstr "Reinitialisar"
msgid "Enter a nickname or email address."
msgstr "Entra un pseudonymo o adresse de e-mail."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Nulle usator existe con iste adresse de e-mail o nomine de usator."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Nulle adresse de e-mail registrate pro iste usator."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Error al salveguardar le confirmation del adresse."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3055,110 +3263,128 @@ msgstr ""
"Instructiones pro recuperar tu contrasigno ha essite inviate al adresse de e-"
"mail registrate in tu conto."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Reinitialisation inexpectate del contrasigno."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Le contrasigno debe haber 6 characteres o plus."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Contrasigno e confirmation non corresponde."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Error durante le configuration del usator."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nove contrasigno salveguardate con successo. Tu session es ora aperte."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Pardono, solmente le personas invitate pote registrar se."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Pardono, le codice de invitation es invalide."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registration succedite"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Crear conto"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registration non permittite."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Tu non pote crear un conto si tu non accepta le licentia."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Le adresse de e-mail existe ja."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Nomine de usator o contrasigno invalide."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Con iste formulario tu pote crear un nove conto. Postea, tu pote publicar "
"notas e mitter te in contacto con amicos e collegas. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1-64 minusculas o numeros, sin punctuation o spatios. Requirite."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 o plus characteres. Requirite."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Identic al contrasigno hic supra. Requirite."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Usate solmente pro actualisationes, notificationes e recuperation de "
"contrasigno"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nomine plus longe, preferibilemente tu nomine \"real\""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mi texto e files es disponibile sub le licentia "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"io comprende que le contento e datos de %1$s es private e confidential."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Le derecto de autor pro mi texto e files es in possession de %1$s."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Le derecto de autor pro mi texto e files resta in mi possession."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Tote le derectos reservate."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" excepte iste datos private: contrasigno, adresse de e-mail, adresse de "
-"messageria instantanee, numero de telephono."
+"Mi texto e files es disponibile sub %s excepte iste datos private: "
+"contrasigno, adresse de e-mail, adresse de messageria instantanee, numero de "
+"telephono."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3190,7 +3416,7 @@ msgstr ""
"\n"
"Gratias pro inscriber te, e nos spera que iste servicio te place."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3235,7 +3461,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL de tu profilo in un altere servicio de microblogging compatibile"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Subscriber"
@@ -3259,7 +3485,7 @@ msgstr "Non poteva obtener un indicio de requesta."
#: actions/repeat.php:57
msgid "Only logged-in users can repeat notices."
-msgstr "Solmente usatores identificate pote repeter notas."
+msgstr "Solmente usatores authenticate pote repeter notas."
#: actions/repeat.php:64 actions/repeat.php:71
msgid "No notice specified."
@@ -3273,7 +3499,7 @@ msgstr "Tu non pote repeter tu proprie nota."
msgid "You already repeated that notice."
msgstr "Tu ha ja repetite iste nota."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repetite"
@@ -3311,10 +3537,10 @@ msgstr "Syndication de responsas pro %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Isto es le chronologia de responsas a %1$s, ma %2$s non ha ancora recipite "
-"alcun nota a su attention."
+"un nota a su attention."
#: actions/replies.php:204
#, php-format
@@ -3328,8 +3554,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Tu pote tentar [pulsar %1$s](../%2$s) o [publicar alique a su attention](%%%%"
"action.newnotice%%%%?status_textarea=%3$s)."
@@ -3340,16 +3566,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Responsas a %1$s in %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "Tu non pote silentiar usatores in iste sito."
+msgstr "Tu non pote revocar rolos de usatores in iste sito."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Usator sin profilo correspondente"
+msgstr "Le usator non ha iste rolo."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3363,7 +3587,7 @@ msgstr "Usator es ja in cassa de sablo."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessiones"
@@ -3400,26 +3624,30 @@ msgstr "Tu debe aperir un session pro vider un application."
msgid "Application profile"
msgstr "Profilo del application"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Icone"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nomine"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisation"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Description"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statisticas"
@@ -3508,22 +3736,22 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
-"%s non ha ancora addite alcun nota a su favorites. Publica alique "
-"interessante que ille favoritisarea :)"
+"%s non ha ancora addite un nota favorite. Publica alique interessante que "
+"ille adderea a su favorites :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
-"%s non ha ancora addite alcun nota a su favorites. Proque non [registrar un "
-"conto](%%%%action.register%%%%) e postea publicar alique interessante que "
-"ille favoritisarea :)"
+"%s non ha ancora addite un nota favorite. Proque non [crear un conto](%%%%"
+"action.register%%%%) e postea publicar alique interessante que ille adderea "
+"a su favorites :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3539,67 +3767,67 @@ msgstr "Gruppo %s"
msgid "%1$s group, page %2$d"
msgstr "Gruppo %1$s, pagina %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Profilo del gruppo"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Nota"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliases"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Actiones del gruppo"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Syndication de notas pro le gruppo %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Syndication de notas pro le gruppo %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Syndication de notas pro le gruppo %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Amico de un amico pro le gruppo %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membros"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Nulle)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Tote le membros"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Create"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3614,7 +3842,7 @@ msgstr ""
"lor vita e interesses. [Crea un conto](%%%%action.register%%%%) pro devenir "
"parte de iste gruppo e multe alteres! ([Lege plus](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3627,7 +3855,7 @@ msgstr ""
"[StatusNet](http://status.net/). Su membros condivide breve messages super "
"lor vita e interesses. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administratores"
@@ -3705,11 +3933,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Tu pote tentar pulsar %1$s o [publicar un nota a su attention](%%%%action."
-"newnotice%%%%?status_textarea=%2$s)."
+"Tu pote tentar dar un pulsata a %1$s o [publicar un nota a su attention](%%%%"
+"action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3750,9 +3978,8 @@ msgid "User is already silenced."
msgstr "Usator es ja silentiate."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Configurationes de base pro iste sito de StatusNet."
+msgstr "Configurationes de base pro iste sito de StatusNet"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
@@ -3768,12 +3995,12 @@ msgid "Unknown language \"%s\"."
msgstr "Lingua \"%s\" incognite."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Le limite minimal del texto es 140 characteres."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Le limite minimal del texto es 0 (illimitate)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr "Le limite de duplicatos debe esser 1 o plus secundas."
+msgid "Dupe limit must be one or more seconds."
+msgstr "Le limite de duplicatos debe esser un o plus secundas."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3820,13 +4047,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Fuso horari predefinite pro le sito; normalmente UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Lingua predefinite del sito"
+msgstr "Lingua predefinite"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Le lingua del sito quando le detection automatic ex le configuration del "
+"navigator non es disponibile"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3838,7 +4066,7 @@ msgstr "Limite de texto"
#: actions/siteadminpanel.php:274
msgid "Maximum number of characters for notices."
-msgstr "Numero maximal de characteres pro notas."
+msgstr "Numero maxime de characteres pro notas."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
@@ -3851,76 +4079,99 @@ msgstr ""
"publicar le mesme cosa de novo."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
msgstr "Aviso del sito"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nove message"
+msgstr "Modificar message a tote le sito"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Impossibile salveguardar le configurationes del apparentia."
+msgstr "Impossibile salveguardar le aviso del sito."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Le longitude maxime del aviso a tote le sito es 255 characteres."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Aviso del sito"
+msgstr "Texto del aviso del sito"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
+"Le texto del aviso a tote le sito (max. 255 characteres; HTML permittite)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Aviso del sito"
+msgstr "Salveguardar aviso del sito"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Parametros de SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Tu pote reciper messages SMS per e-mail ab %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS non es disponibile."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Adresse SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Numero de telephono actual e confirmate con servicio SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Iste numero de telephono attende confirmation."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Codice de confirmation"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Entra le codice que tu ha recipite in tu telephono."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Numero de telephono pro SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Numero de telephono, sin punctuation o spatios, con indicativo"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferentias de SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3928,23 +4179,33 @@ msgstr ""
"Invia me notas per SMS; io comprende que io pote incurrer exorbitante costos "
"de mi operator."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Preferentias de SMS confirmate."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Nulle numero de telephono."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Nulle operator seligite."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Isto es ja tu numero de telephono."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Iste numero de telephono pertine ja a un altere usator."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3952,23 +4213,40 @@ msgstr ""
"Un codice de confirmation ha essite inviate al numero de telephono que tu ha "
"addite. Vide in tu telephono le codice e le instructiones super como usar lo."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Iste codice de confirmation es incorrecte."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Confirmation de SMS cancellate."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Isto non es tu numero de telephono."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Le numero de telephono pro SMS ha essite removite."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operator de telephonia mobile"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Selige un operator"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3978,20 +4256,20 @@ msgstr ""
"que accepta SMS via e-mail ma non es listate hic, invia e-mail pro informar "
"nos a %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Nulle codice entrate"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Instantaneos"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Modificar le configuration del sito"
+msgstr "Gerer configuration de instantaneos"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -4006,7 +4284,7 @@ msgid "Invalid snapshot report URL."
msgstr "Le URL pro reportar instantaneos es invalide."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Aleatorimente durante un accesso web"
#: actions/snapshotadminpanel.php:201
@@ -4038,32 +4316,29 @@ msgid "Snapshots will be sent to this URL"
msgstr "Le instantaneos essera inviate a iste URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Salveguardar configurationes del sito"
+msgstr "Salveguardar configuration de instantaneos"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Tu non es subscribite a iste profilo."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Non poteva salveguardar le subscription."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "Iste action accepta solmente le requestas de typo POST."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "File non existe."
+msgstr "Profilo non existe."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "Tu non es subscribite a iste profilo."
+msgstr "Tu non pote subscriber te a un profilo remote OMB 0.1 con iste action."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4150,11 +4425,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s non seque alcuno."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4187,12 +4462,12 @@ msgstr "Nulle parametro de ID."
msgid "Tag %s"
msgstr "Etiquetta %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Profilo del usator"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Photo"
@@ -4228,10 +4503,6 @@ msgstr ""
msgid "No such tag."
msgstr "Etiquetta non existe."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Methodo API in construction."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Tu non ha blocate iste usator."
@@ -4245,7 +4516,7 @@ msgid "User is not silenced."
msgstr "Le usator non es silentiate."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Nulle ID de profilo in requesta."
#: actions/unsubscribe.php:98
@@ -4262,7 +4533,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Usator"
@@ -4284,7 +4554,8 @@ msgstr "Texto de benvenita invalide. Longitude maximal es 255 characteres."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Subscription predefinite invalide: '%1$s' non es usator."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profilo"
@@ -4342,7 +4613,7 @@ msgstr ""
"Per favor verifica iste detalios pro assecurar te que tu vole subscriber te "
"al notas de iste usator. Si tu non ha requestate isto, clicca \"Rejectar\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licentia"
@@ -4353,7 +4624,7 @@ msgstr "Acceptar"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr "Subscriber me a iste usator"
+msgstr "Subscriber a iste usator"
#: actions/userauthorization.php:219
msgid "Reject"
@@ -4446,38 +4717,44 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Bon appetito!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Gruppos %1$s, pagina %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Cercar altere gruppos"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s non es membro de alcun gruppo."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Tenta [cercar gruppos](%%action.groupsearch%%) e facer te membro de illos."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Actualisationes de %1$s in %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4486,11 +4763,11 @@ msgstr ""
"Iste sito es realisate per %1$s version %2$s, copyright 2008-2010 StatusNet, "
"Inc. e contributores."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Contributores"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4502,7 +4779,7 @@ msgstr ""
"Free Software Foundation, o version 3 de iste licentia, o (a vostre "
"election) omne version plus recente. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4514,7 +4791,7 @@ msgstr ""
"USABILITATE PRO UN PARTICULAR SCOPO. Vide le GNU Affero General Public "
"License pro ulterior detalios. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4523,92 +4800,140 @@ msgstr ""
"Un copia del GNU Affero General Public License deberea esser disponibile "
"insimul con iste programma. Si non, vide %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Plug-ins"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Version"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autor(es)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Impossibile processar le URL '%s'"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin pensa que alique es impossibile."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Nulle file pote esser plus grande que %d bytes e le file que tu inviava ha %"
-"d bytes. Tenta incargar un version minus grande."
+"Nulle file pote esser plus grande que %1$d bytes e le file que tu inviava ha "
+"%2$d bytes. Tenta incargar un version minus grande."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Un file de iste dimension excederea tu quota de usator de %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Un file de iste dimension excederea tu quota mensual de %d bytes."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nomine de file invalide."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Le inscription al gruppo ha fallite."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Non es membro del gruppo."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Le cancellation del membrato del gruppo ha fallite."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "Non poteva actualisar gruppo."
+msgstr "Non poteva actualisar gruppo local."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Non poteva crear indicio de identification pro %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Nulle nomine de base de datos o DSN trovate."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Il te es prohibite inviar messages directe."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Non poteva inserer message."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Non poteva actualisar message con nove URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Nulle profilo (%1$d) trovate pro le nota (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr "Error in base de datos durante insertion del marca (hashtag): %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problema salveguardar nota. Troppo longe."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problema salveguardar nota. Usator incognite."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Troppo de notas troppo rapidemente; face un pausa e publica de novo post "
"alcun minutas."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4616,307 +4941,367 @@ msgstr ""
"Troppo de messages duplicate troppo rapidemente; face un pausa e publica de "
"novo post alcun minutas."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Il te es prohibite publicar notas in iste sito."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problema salveguardar nota."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Mal typo fornite a saveKnownGroups"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problema salveguardar le cassa de entrata del gruppo."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr "Non pote revocar le rolo \"%1$s\" del usator #%2$d; non existe."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Non pote revocar le rolo \"%1$s\" del usator #%2$d; error in le base de "
+"datos."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Profilo mancante."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Impossibile salveguardar le etiquetta."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Tu ha essite blocate del subscription."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Ja subscribite!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Le usator te ha blocate."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Non subscribite!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Non poteva deler auto-subscription."
-#: classes/Subscription.php:190
-#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Non poteva deler subscription."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Non poteva deler le indicio OMB del subscription."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Non poteva deler subscription."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Benvenite a %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Non poteva crear gruppo."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Non poteva configurar le membrato del gruppo."
+msgstr "Non poteva definir le URL del gruppo."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Non poteva configurar le membrato del gruppo."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Non poteva salveguardar le subscription."
+msgstr "Non poteva salveguardar le informationes del gruppo local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Cambiar le optiones de tu profilo"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Incargar un avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Cambiar tu contrasigno"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Modificar le tractamento de e-mail"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Designar tu profilo"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Altere"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Altere optiones"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Altere"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Pagina sin titulo"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navigation primari del sito"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Profilo personal e chronologia de amicos"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Cambiar tu e-mail, avatar, contrasigno, profilo"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "Connecter con servicios"
+msgstr "Connecter a servicios"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Connecter"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Modificar le configuration del sito"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
-msgstr "Administrator"
+msgstr "Admin"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Invitar amicos e collegas a accompaniar te in %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Invitar"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Terminar le session del sito"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Clauder session"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Crear un conto"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Crear conto"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
-msgstr "Identificar te a iste sito"
+msgstr "Authenticar te a iste sito"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Aperir session"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Adjuta me!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Adjuta"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Cercar personas o texto"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Cercar"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Aviso del sito"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Vistas local"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Aviso de pagina"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navigation secundari del sito"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Adjuta"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "A proposito"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "CdS"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Confidentialitate"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Fonte"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contacto"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Insignia"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licentia del software StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** es un servicio de microblog offerite per [%%site.broughtby%"
-"%](%%site.broughtbyurl%%). "
+"%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** es un servicio de microblog. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** es un servicio de microblog."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4927,68 +5312,84 @@ msgstr ""
"net/), version %s, disponibile sub le [GNU Affero General Public License]"
"(http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licentia del contento del sito"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Le contento e datos de %1$s es private e confidential."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr "Contento e datos sub copyright de %1$s. Tote le derectos reservate."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Contento e datos sub copyright del contributores. Tote le derectos reservate."
-#: lib/action.php:847
-msgid "All "
-msgstr "Totes "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licentia."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Tote le contento e datos de %1$s es disponibile sub le licentia %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Pagination"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Post"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Ante"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"Expectava le elemento-radice de un syndication, ma recipeva un documento XML "
+"integre."
-#: lib/activity.php:481
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "Non pote ancora tractar contento remote."
+
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "Non pote ancora tractar contento XML incastrate."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "Non pote ancora tractar contento Base64 incastrate."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Tu non pote facer modificationes in iste sito."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Le modification de iste pannello non es permittite."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() non implementate."
@@ -4998,161 +5399,193 @@ msgstr "showForm() non implementate."
msgid "saveSettings() not implemented."
msgstr "saveSettings() non implementate."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Impossibile deler configuration de apparentia."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuration basic del sito"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Sito"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuration del apparentia"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Apparentia"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Configuration del usator"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Usator"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Configuration del accesso"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configuration del camminos"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Configuration del sessiones"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Aviso del sito"
+msgstr "Modificar aviso del sito"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Configuration del camminos"
+msgstr "Configuration del instantaneos"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"Le ressource de API require accesso pro lectura e scriptura, ma tu ha "
"solmente accesso pro lectura."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"Tentativa de authentication al API fallite, pseudonymo = %1$s, proxy = %2$s, "
-"IP = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Modificar application"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Icone pro iste application"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Describe tu application in %d characteres"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Describe tu application"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL de origine"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL del pagina initial de iste application"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL de origine"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organisation responsabile de iste application"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL del pagina initial del organisation"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL verso le qual rediriger post authentication"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Navigator"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Scriptorio"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Typo de application, navigator o scriptorio"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Lectura solmente"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Lectura e scriptura"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Accesso predefinite pro iste application: lectura solmente, o lectura e "
"scriptura"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancellar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lectura-scriptura"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "lectura solmente"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Accesso \"%2$s\" approbate le %1$s."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Revocar"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Annexos"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Providitor"
@@ -5164,45 +5597,64 @@ msgstr "Notas ubi iste annexo appare"
msgid "Tags for this attachment"
msgstr "Etiquettas pro iste annexo"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Cambio del contrasigno fallite"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Cambio del contrasigno non permittite"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultatos del commando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Commando complete"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Commando fallite"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Pardono, iste commando non es ancora implementate."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Non existe un nota con iste ID"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Usator non ha ultime nota"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Non poteva trovar un usator con pseudonymo %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Non poteva trovar un usator local con pseudonymo %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Pardono, iste commando non es ancora implementate."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Non ha multe senso pulsar te mesme!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Pulsata inviate a %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5213,198 +5665,203 @@ msgstr ""
"Subscriptores: %2$s\n"
"Notas: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Non existe un nota con iste ID"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Usator non ha ultime nota"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Nota marcate como favorite."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Tu es ja membro de iste gruppo"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Non poteva facer le usator %s membro del gruppo %s"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s se faceva membro del gruppo %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Non poteva remover le usator %s del gruppo %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Non poteva inscriber le usator %1$s in le gruppo %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s quitava le gruppo %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Non poteva remover le usator %1$s del gruppo %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nomine complete: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Loco: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Pagina personal: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "A proposito: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s es un profilo remote; tu pote solmente inviar messages directe a usatores "
+"super le mesme servitor."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Message troppo longe - maximo es %d characteres, tu inviava %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Message troppo longe - maximo es %1$d characteres, tu inviava %2$d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Message directe a %s inviate"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Error durante le invio del message directe."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Non pote repeter tu proprie nota"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Iste nota ha ja essite repetite"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Nota de %s repetite"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Error durante le repetition del nota."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Nota troppo longe - maximo es %d characteres, tu inviava %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Responsa a %s inviate"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Errur durante le salveguarda del nota."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Specifica le nomine del usator al qual subscriber te"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Usator non existe"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Impossibile subscriber se a profilos OMB per medio de un commando."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Subscribite a %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Specifica le nomine del usator al qual cancellar le subscription"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Subscription a %s cancellate"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Commando non ancora implementate."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notification disactivate."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Non pote disactivar notification."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notification activate."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Non pote activar notification."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Le commando de apertura de session es disactivate"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Iste ligamine pote esser usate solmente un vice, e es valide durante "
"solmente 2 minutas: %s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
-msgstr "Subscription a %s cancellate"
+msgstr "Subscription de %s cancellate"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Tu non es subscribite a alcuno."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Tu es subscribite a iste persona:"
msgstr[1] "Tu es subscribite a iste personas:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Necuno es subscribite a te."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Iste persona es subscribite a te:"
msgstr[1] "Iste personas es subscribite a te:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Tu non es membro de alcun gruppo."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Tu es membro de iste gruppo:"
msgstr[1] "Tu es membro de iste gruppos:"
-#: lib/command.php:769
-#, fuzzy
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5454,9 +5911,10 @@ msgstr ""
"subscriptions - listar le personas que tu seque\n"
"subscribers - listar le personas qui te seque\n"
"leave <pseudonymo> - cancellar subscription al usator\n"
-"d <pseudonymo> <texto> - diriger message al usator\n"
-"get <pseudonymo> - obtener ultime nota del usator\n"
+"d <pseudonymo> <texto> - diriger un message al usator\n"
+"get <pseudonymo> - obtener le ultime nota del usator\n"
"whois <pseudonymo> - obtener info de profilo del usator\n"
+"lose <pseudonymo> - fortiar le usator de cessar de sequer te\n"
"fav <pseudonymo> - adder ultime nota del usator como favorite\n"
"fav #<id_de_nota> - adder nota con le ID date como favorite\n"
"repeat #<id_de_nota> - repeter le nota con le ID date\n"
@@ -5483,19 +5941,19 @@ msgstr ""
"tracks - non ancora implementate.\n"
"tracking - non ancora implementate.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Nulle file de configuration trovate. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Io cercava files de configuration in le sequente locos: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Considera executar le installator pro reparar isto."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Ir al installator."
@@ -5597,7 +6055,7 @@ msgstr "Ir"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Conceder le rolo \"%s\" a iste usator"
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
@@ -5669,53 +6127,54 @@ msgstr "Gruppos con le plus messages"
msgid "Tags in %s group's notices"
msgstr "Etiquettas in le notas del gruppo %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Iste pagina non es disponibile in un formato que tu accepta"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato de file de imagine non supportate."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Iste file es troppo grande. Le dimension maximal es %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Incargamento partial."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Error de systema durante le incargamento del file."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Le file non es un imagine o es defectuose."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato de file de imagine non supportate."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "File perdite."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Typo de file incognite"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "KB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Fonte de cassa de entrata \"%s\" incognite"
@@ -5736,11 +6195,13 @@ msgstr "Aperir session con nomine de usator e contrasigno"
msgid "Sign up for a new account"
msgstr "Crear un nove conto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmation del adresse de e-mail"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5769,12 +6230,24 @@ msgstr ""
"Gratias pro tu attention,\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s seque ora tu notas in %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Si tu crede que iste conto es usate abusivemente, tu pote blocar lo de tu "
+"lista de subscriptores e reportar lo como spam al administratores del sito a "
+"%s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5799,17 +6272,20 @@ msgstr ""
"----\n"
"Cambia tu adresse de e-mail o optiones de notification a %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Bio: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nove adresse de e-mail pro publicar in %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5830,21 +6306,31 @@ msgstr ""
"Cordialmente,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Stato de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmation SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: confirma que tu possede iste numero de telephono con iste codice:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s te ha pulsate"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5871,12 +6357,14 @@ msgstr ""
"Con salutes cordial,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nove message private de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5909,12 +6397,14 @@ msgstr ""
"Con salutes cordial,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) ha addite tu nota como favorite"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5952,12 +6442,25 @@ msgstr ""
"Cordialmente,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Le conversation complete pote esser legite hic:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) ha inviate un nota a tu attention"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5970,18 +6473,41 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) inviava ante un momento un nota a tu attention (un 'responsa "
-"@') in %2$s.\n"
+"%1$s (@%9$s) ha inviate un nota a tu attention (un '@-responsa') in %2$s.\n"
"\n"
"Le nota es hic:\n"
"\n"
"%3$s\n"
"\n"
-"Le texto:\n"
+"Illo dice:\n"
"\n"
"%4$s\n"
"\n"
+"%5$sTu pote responder hic:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Le lista de tote le @-responsas pro te es hic:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Cordialmente,\n"
+"%2$s\n"
+"\n"
+"P.S. Tu pote disactivar iste notificationes electronic hic: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5996,7 +6522,7 @@ msgstr ""
"altere usatores in conversation. Altere personas pote inviar te messages que "
"solmente tu pote leger."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "de"
@@ -6055,24 +6581,24 @@ msgstr "Falleva de scriber le file in disco."
msgid "File upload stopped by extension."
msgstr "Incargamento de file stoppate per un extension."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "File excede quota del usator."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "File non poteva esser displaciate in le directorio de destination."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Non poteva determinar le typo MIME del file."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Tenta usar un altere formato %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s non es un typo de file supportate in iste servitor."
@@ -6090,7 +6616,6 @@ msgid "Available characters"
msgstr "Characteres disponibile"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Inviar"
@@ -6128,48 +6653,52 @@ msgstr ""
"Pardono, le obtention de tu geolocalisation prende plus tempore que "
"previste. Per favor reproba plus tarde."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "W"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "a"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "in contexto"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repetite per"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Responder a iste nota"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Responder"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Nota repetite"
@@ -6193,6 +6722,10 @@ msgstr "Error durante le insertion del nove profilo"
msgid "Error inserting avatar"
msgstr "Error durante le insertion del avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Error in actualisar le profilo remote"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Error durante le insertion del profilo remote"
@@ -6238,11 +6771,11 @@ msgstr "Tu messages inviate"
msgid "Tags in %s's notices"
msgstr "Etiquettas in le notas de %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Incognite"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subscriptiones"
@@ -6250,31 +6783,32 @@ msgstr "Subscriptiones"
msgid "All subscriptions"
msgstr "Tote le subscriptiones"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subscriptores"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Tote le subscriptores"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID del usator"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membro depost"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Media de cata die"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Tote le gruppos"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Nulle parametro return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Methodo non implementate."
@@ -6298,20 +6832,28 @@ msgstr "In evidentia"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Nulle parametro return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Repeter iste nota?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Si"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repeter iste nota"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Blocar iste usator de iste gruppo"
+msgstr "Revocar le rolo \"%s\" de iste usator"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Nulle signule usator definite pro le modo de singule usator."
@@ -6409,6 +6951,55 @@ msgstr "Nube de etiquetta de personas como etiquettate"
msgid "None"
msgstr "Nulle"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Iste servitor non pote manear le incargamento de apparentias sin supporto de "
+"ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Le file del apparentia manca o le incargamento ha fallite."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Salveguarda del apparentia fallite."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Apparentia invalide: mal structura de directorios."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Le apparentia incargate es troppo voluminose; debe occupar minus de %d bytes "
+"in forma non comprimite."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Archivo de apparentia invalide: manca le file css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Le apparentia contine un nomine de file o dossier invalide. Limita te a "
+"litteras ASCII, digitos, sublineamento, e signo minus."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+"Le apparentia contine un file del typo '.%s', le qual non es permittite."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Error durante le apertura del archivo del apparentia."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Qui scribe le plus"
@@ -6437,92 +7028,108 @@ msgstr "Cancellar subscription a iste usator"
msgid "Unsubscribe"
msgstr "Cancellar subscription"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Le usator %s (%d) non ha un profilo."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Modificar avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Actiones de usator"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Deletion del usator in curso…"
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Modificar configuration de profilo"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Modificar"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Inviar un message directe a iste usator"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Message"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderar"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Profilo del usator"
+msgstr "Rolo de usator"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administratores"
+msgstr "Administrator"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Moderar"
+msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "alcun secundas retro"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "circa un minuta retro"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "circa %d minutas retro"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "circa un hora retro"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "circa %d horas retro"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "circa un die retro"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "circa %d dies retro"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "circa un mense retro"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "circa %d menses retro"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "circa un anno retro"
@@ -6536,7 +7143,7 @@ msgstr "%s non es un color valide!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s non es un color valide! Usa 3 o 6 characteres hexadecimal."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Message troppo longe - maximo es %1$d characteres, tu inviava %2$d."
diff --git a/locale/is/LC_MESSAGES/statusnet.po b/locale/is/LC_MESSAGES/statusnet.po
index 3c8f33565..701d0f1d4 100644
--- a/locale/is/LC_MESSAGES/statusnet.po
+++ b/locale/is/LC_MESSAGES/statusnet.po
@@ -8,12 +8,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:12+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:37+0000\n"
"Language-Team: Icelandic\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: is\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +23,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Samþykkja"
@@ -79,86 +79,91 @@ msgstr ""
msgid "Save access settings"
msgstr "Stillingar fyrir mynd"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Vista"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Ekkert þannig merki."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Enginn svoleiðis notandi."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s og vinirnir, síða %d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s og vinirnir"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr ""
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -166,78 +171,80 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr ""
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Færslur frá %1$s og vinum á %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Aðferð í forritsskilum fannst ekki!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Þessi aðferð krefst POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Gat ekki uppfært notanda."
@@ -247,7 +254,7 @@ msgstr "Gat ekki uppfært notanda."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Notandi hefur enga persónulega síðu."
@@ -258,9 +265,9 @@ msgid "Could not save profile."
msgstr "Gat ekki vistað persónulega síðu."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,48 +325,49 @@ msgstr "Bein skilaboð til %s"
msgid "All the direct messages sent to %s"
msgstr "Öll bein skilaboð til %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Enginn texti í skilaboðum!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Þetta er of langt. Hámarkslengd skilaboða er 140 tákn."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Móttakandi fannst ekki."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Gat ekki sent bein skilaboð til notenda sem eru ekki vinir þínir."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Engin staða fundin með þessu kenni."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Þetta babl er nú þegar í uppáhaldi!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Gat ekki búið til uppáhald."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "Þetta babl er ekki í uppáhaldi!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Gat ekki eytt uppáhaldi."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Get ekki fylgst með notanda: Notandinn finnst ekki."
#: actions/apifriendshipscreate.php:118
@@ -378,8 +386,9 @@ msgstr "Get ekki fylgst með notanda: Notandinn finnst ekki."
msgid "You cannot unfollow yourself."
msgstr "Gat ekki uppfært notanda."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Tvo notendakenni eða skjáarnöfn verða að vera uppgefin."
#: actions/apifriendshipsshow.php:134
@@ -390,118 +399,131 @@ msgstr ""
msgid "Could not find target user."
msgstr ""
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Stuttnefni geta bara verið lágstafir og tölustafir en engin bil."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Stuttnefni nú þegar í notkun. Prófaðu eitthvað annað."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ekki tækt stuttnefni."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Heimasíða er ekki gild vefslóð."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Fullt nafn er of langt (í mesta lagi 255 stafir)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "Lýsing er of löng (í mesta lagi 140 tákn)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Staðsetning er of löng (í mesta lagi 255 stafir)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr ""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr "Ógilt merki: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr ""
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "Aðferð í forritsskilum fannst ekki!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "Þú ert nú þegar meðlimur í þessum hópi"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Gat ekki bætt notandanum %s í hópinn %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "Þú ert ekki meðlimur í þessum hópi."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "Hópar %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Hópar sem %s er meðlimur í"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Hópar %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "Hópsaðgerðir"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Misheppnuð skipun"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -512,17 +534,17 @@ msgid "Invalid token."
msgstr "Ótæk stærð."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -556,12 +578,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Bjóst ekki við innsendingu eyðublaðs."
@@ -581,20 +606,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Aðgangur"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Stuttnefni"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Lykilorð"
@@ -611,11 +638,11 @@ msgstr "Allt"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Þessi aðferð krefst POST eða DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Þú getur ekki eytt stöðu annars notanda."
@@ -634,60 +661,64 @@ msgstr "Get ekki kveikt á tilkynningum."
msgid "Already repeated that notice."
msgstr "Eyða þessu babli"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr ""
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Engin staða með þessu kenni fannst."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Þetta er of langt. Hámarkslengd babls er 140 tákn."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Fannst ekki"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Fannst ekki."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Skráarsnið myndar ekki stutt."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / Uppáhaldsbabl frá %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s færslur gerðar að uppáhaldsbabli af %s / %s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr ""
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s færslur sem svara færslum frá %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Almenningsrás %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s færslur frá öllum!"
@@ -702,19 +733,19 @@ msgstr "Svör við %s"
msgid "Repeats of %s"
msgstr "Svör við %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Babl merkt með %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr ""
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Fannst ekki."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Aðferð í forritsskilum er í þróun."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -735,8 +766,9 @@ msgstr "Engin stærð."
msgid "Invalid size."
msgstr "Ótæk stærð."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Mynd"
@@ -746,9 +778,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "Notandi með enga persónulega síðu sem passar við"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -767,7 +800,7 @@ msgid "Preview"
msgstr "Forsýn"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Eyða"
@@ -779,24 +812,29 @@ msgstr "Hlaða upp"
msgid "Crop"
msgstr "Skera af"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Engin persónuleg síða tilgreind"
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
"Veldu ferningslaga svæði á upphaflegu myndinni sem einkennismyndina þína"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Týndum skráargögnunum okkar"
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Mynd hefur verið uppfærð."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Mistókst að uppfæra mynd"
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr ""
@@ -805,39 +843,56 @@ msgstr ""
msgid "You already blocked that user."
msgstr "Þú hefur nú þegar lokað á þennan notanda."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Loka á notanda"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Nei"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Opna á þennan notanda"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Já"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Loka á þennan notanda"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Mistókst að vista upplýsingar um notendalokun"
@@ -850,8 +905,8 @@ msgstr "Mistókst að vista upplýsingar um notendalokun"
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Enginn þannig hópur."
@@ -881,9 +936,10 @@ msgstr "Opna"
msgid "Unblock this user"
msgstr "Opna á þennan notanda"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "Ljósmynd"
#: actions/confirmaddress.php:75
@@ -898,34 +954,44 @@ msgstr "Staðfestingarlykill fannst ekki."
msgid "That confirmation code is not for you!"
msgstr "Þessi staðfestingarlykill er ekki fyrir þig!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Óþekkt gerð tölvupóstfangs %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Þetta tölvupóstfang hefur nú þegar verið staðfest."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Gat ekki uppfært notanda."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Gat ekki eytt tölvupóstsstaðfestingu."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Staðfesta tölvupóstfang"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr ""
@@ -936,7 +1002,7 @@ msgid "Conversation"
msgstr ""
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Babl"
@@ -958,7 +1024,7 @@ msgstr "Þú ert ekki meðlimur í þessum hópi."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Það komu upp vandamál varðandi setutókann þinn."
@@ -974,23 +1040,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Gat ekki uppfært hóp."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Eyða þessu babli"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ekki innskráð(ur)."
@@ -1013,11 +1081,13 @@ msgstr "Eyða babli"
msgid "Are you sure you want to delete this notice?"
msgstr "Ertu viss um að þú viljir eyða þessu babli?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr ""
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Eyða þessu babli"
@@ -1042,132 +1112,153 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Eyða þessu babli"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Ótæk stærð."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Þessi síða er ekki aðgengileg í "
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Breyta"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Bjóða"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Breyta"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Babl vefsíðunnar"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
#, fuzzy
msgid "Theme for the site."
msgstr "Skrá þig út af síðunni"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Babl vefsíðunnar"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Þetta er of langt. Hámarkslengd babls er 140 tákn."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr ""
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr ""
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr ""
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texti"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr ""
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Vista"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1284,11 +1375,17 @@ msgstr "Notaðu þetta eyðublað til að breyta hópnum."
msgid "description is too long (max %d chars)."
msgstr "Lýsing er of löng (í mesta lagi 140 tákn)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr ""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Gat ekki uppfært hóp."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr ""
@@ -1296,32 +1393,45 @@ msgstr ""
msgid "Options saved."
msgstr "Valmöguleikar vistaðir."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Tölvupóstsstillingar"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Stilla það hvernig þú færð tölvupóst frá %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Tölvupóstfang"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Tölvupóstföng"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Núverandi staðfesta tölvupóstfangið."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Fjarlægja"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1329,107 +1439,141 @@ msgstr ""
"Býð eftir staðfestingu frá þessu netfangi. Athugaðu innhólfið þitt (og "
"ruslpóstinn þinn!). Þar ættu að vera skilaboð með ítarlegri leiðbeiningum."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Hætta við"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Tölvupóstföng"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Tölvupóstfang eins og \"notandi@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Bæta við"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Móttökutölvupóstur"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Sendu tölvupóst á þetta póstfang til þess að senda inn nýtt babl."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Búa til nýtt tölvupóstfang til að senda til. Skrifar yfir það gamla."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Nýtt"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Stillingar"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Sendu mér tilkynningu varðandi nýjar áskriftir í gegnum tölvupóst."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Senda mér tölvupóst þegar einhver setur babl í mér í uppáhald hjá sér."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Senda mér tölvupóst þegar einhver sendir mér persónuleg skilaboð."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Leyfa vinum að ýta við mér og senda mér tölvupóst."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Ég vil babla í gegnum tölvupóst."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Birta MicroID fyrir tölvupóstfangið mitt."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Stillingar vistaðar."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ekkert tölvupóstfang."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Get ekki staðlað þetta tölvupóstfang"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ekki tækt tölvupóstfang."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Þetta er nú þegar tölvupóstfangið þitt."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Þetta tölvupóstfang tilheyrir öðrum notanda."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Gat ekki sett inn staðfestingarlykil."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1438,43 +1582,56 @@ msgstr ""
"Athugaðu innhólfið þitt (og ruslpóstinn þinn!). Þar ætti "
"staðfestingarlykillinn að vera og leiðbeingar um hvernig eigi að nota hann. "
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Engin staðfesting í bið sem þarf að hætta við."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Þetta er rangt snarskilaboðafang."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Hætt við staðfestingu."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Þetta er ekki tölvupóstfangið þitt."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Tölvupóstfangið hefur verið fjarlægt."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ekkert móttökutölvupóstfang."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Gat ekki uppfært skráarfærslu notanda."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Móttökutölvupóstfang fjarlægt."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nýju móttökutölvupóstfangi bætt við."
@@ -1594,8 +1751,9 @@ msgstr "Gat ekki breytt beiðnistókum í aðgangstóka."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Óþekkt útgáfa OMB samskiptamátans."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Villa kom upp í uppfærslu persónulegrar fjarsíðu"
#: actions/getfile.php:79
@@ -1629,13 +1787,13 @@ msgstr "Notandi hefur enga persónulega síðu."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Engin persónuleg síða tilgreind"
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Engin persónulega síða með þessu einkenni"
@@ -1656,11 +1814,11 @@ msgstr ""
msgid "User is not a member of group."
msgstr ""
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr ""
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1668,15 +1826,17 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr ""
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr ""
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1718,11 +1878,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Notandi með enga persónulega síðu sem passar við"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1753,34 +1908,38 @@ msgstr "Listi yfir notendur í þessum hóp."
msgid "Admin"
msgstr "Stjórnandi"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Loka"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Rás %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Færslur frá %1$s á %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Hópar"
@@ -1800,7 +1959,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Búa til nýjan hóp"
@@ -1846,12 +2005,16 @@ msgstr ""
msgid "Error removing the block."
msgstr "Vill kom upp við að aflétta notendalokun."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Snarskilaboðastillingar"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1861,16 +2024,26 @@ msgstr ""
"[snarskilaboðaþjónustuna](%%doc.im%%). Settu upp netfangið þitt hér fyrir "
"neðan og stilltu notkunina."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Þessi síða er ekki aðgengileg í "
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "Snarskilaboðafang"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Núverandi staðfesta Jabber/GTalk snarskilaboðafangið."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1880,12 +2053,9 @@ msgstr ""
"þinn. Þar ættu að vera skilaboð með ítarlegri leiðbeiningum. (Hefurðu bætt %"
"s við í vinalistann þinn?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "Snarskilaboðafang"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1895,44 +2065,66 @@ msgstr ""
"viss um að bæta %s við í vinalistann þinn í snarskilaboðaforritinu þínu eða "
"á GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Stillingar"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Sendur mér babl í gegnum Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Senda inn babl þegar Jabber/GTalk staðan breytist."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Sendu mér svör í gegnum Jabber/GTalk frá fólki sem ég er ekki áskrifandi að."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Birta MicroID fyrir Jabber/GTalk netfangið mitt."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Stillingar vistaðar."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ekkert Jabber-kenni"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Get ekki staðlað þetta Jabber kenni"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ekki tækt Jabber-kenni"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Þetta er nú þegar Jabber-kennið þitt."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber-kennið tilheyrir öðrum notanda."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1941,10 +2133,35 @@ msgstr ""
"Staðfestingarlykill var sendur á snarskilaboðafangið sem þú varst að bæta "
"við. Þú verður að leyfa %s að senda snarskilaboð til þín."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Þetta er rangt snarskilaboðafang."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Gat ekki eytt tölvupóstsstaðfestingu."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Hætt við staðfestingu."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Þetta er ekki Jabber-kennið þitt."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Tölvupóstfangið hefur verið fjarlægt."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1965,8 +2182,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "Þú verður að vera innskráð(ur) til að geta boðið öðrum að nota %s"
#: actions/invite.php:72
@@ -1986,7 +2203,9 @@ msgstr "Bjóða nýjum notendum að vera með"
msgid "You are already subscribed to these users:"
msgstr "Þú ert nú þegar í áskrift að þessum notendum:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2039,12 +2258,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Senda"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s hefur boðið þér að slást í hópinn með þeim á %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2110,7 +2331,9 @@ msgstr "Þú verður að hafa skráð þig inn til að bæta þér í hóp."
msgid "No nickname or ID."
msgstr "Ekkert stuttnefni."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s bætti sér í hópinn %s"
@@ -2119,51 +2342,53 @@ msgstr "%s bætti sér í hópinn %s"
msgid "You must be logged in to leave a group."
msgstr "Þú verður aða hafa skráð þig inn til að ganga úr hóp."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Þú ert ekki meðlimur í þessum hópi."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s gekk úr hópnum %s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Þú hefur nú þegar skráð þig inn."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Rangt notendanafn eða lykilorð."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Engin heimild."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Innskráning"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Skrá þig inn á síðuna"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Muna eftir mér"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Sjálfvirk innskráning í framtíðinni. Ekki nota þetta á tölvu sem aðrir deila "
"með þér!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Tapað eða gleymt lykilorð?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2171,11 +2396,15 @@ msgstr ""
"Af öryggisástæðum, vinsamlegast sláðu aftur inn notendanafnið þitt og "
"lykilorð áður en þú breytir stillingunum þínum."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Skráðu þig inn með notendanafni og lykilorði"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Skráðu þig inn með notendanafninu þínu og lykilorði. Ertu ekki með "
"notendanafn? [Nýskráðu þig](%%action.register%%) eða prófaðu [OpenID](%%"
@@ -2201,7 +2430,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s"
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "Engin núverandi staða"
#: actions/newapplication.php:52
@@ -2240,12 +2470,12 @@ msgstr "Notaðu þetta eyðublað til að búa til nýjan hóp."
msgid "New message"
msgstr "Ný skilaboð"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Þú getur ekki sent þessum notanda skilaboð."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ekkert innihald!"
@@ -2253,7 +2483,7 @@ msgstr "Ekkert innihald!"
msgid "No recipient specified."
msgstr "Enginn móttökuaðili tilgreindur."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2269,7 +2499,7 @@ msgstr ""
msgid "Direct message to %s sent."
msgstr "Bein skilaboð send til %s"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax villa"
@@ -2277,7 +2507,7 @@ msgstr "Ajax villa"
msgid "New notice"
msgstr "Nýtt babl"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Babl sent inn"
@@ -2324,8 +2554,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Allar færslur sem passa við \"%s\""
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Þessi notandi leyfir ekki að ýta við sér eða hefur ekki staðfest eða skráð "
"tölvupóstinn sinn."
@@ -2371,11 +2602,11 @@ msgid "You are not a user of that application."
msgstr "Þú ert ekki meðlimur í þessum hópi."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2383,25 +2614,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Babl hefur enga persónulega síðu"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Staða %1$s á %2$s"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
msgstr ""
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Enginn stuðningur við gagnasnið."
@@ -2512,7 +2749,7 @@ msgid "6 or more characters"
msgstr "6 eða fleiri tákn"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Staðfesta"
@@ -2524,11 +2761,11 @@ msgstr "Sama og lykilorðið hér fyrir ofan"
msgid "Change"
msgstr "Breyta"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Lykilorð verður að vera að minnsta kosti 6 tákn."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Lykilorðin passa ekki saman."
@@ -2540,7 +2777,7 @@ msgstr "Rangt eldra lykilorð"
msgid "Error saving user; invalid."
msgstr "Villa kom upp í vistun notanda: ótækt."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Get ekki vistað nýja lykilorðið."
@@ -2549,7 +2786,7 @@ msgid "Password saved."
msgstr "Lykilorð vistað."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2559,23 +2796,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Þessi síða er ekki aðgengileg í "
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Þessi síða er ekki aðgengileg í "
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Þessi síða er ekki aðgengileg í "
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Þessi síða er ekki aðgengileg í "
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2725,18 +2962,19 @@ msgstr ""
msgid "People search"
msgstr "Leit að fólki"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "Ekki gilt persónumerki: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Notendur sjálfmerktir með %s - síða %d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Ótækt bablinnihald"
#: actions/postnotice.php:101
@@ -2763,45 +3001,46 @@ msgstr "Upplýsingar á persónulegri síðu"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 lágstafir eða tölustafir, engin greinarmerki eða bil"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Fullt nafn"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Heimasíða"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
"Veffang heimasíðunnar þinnar, bloggsins þíns eða persónulegrar síðu á öðru "
"vefsvæði"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Lýstu þér og áhugamálum þínum í 140 táknum"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "Lýstu þér og þínum "
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Lýsing"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Staðsetning"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Staðsetning þín, eins og \"borg, sýsla, land\""
@@ -2811,7 +3050,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Merki"
@@ -2845,7 +3084,7 @@ msgstr ""
"Gerast sjálfkrafa áskrifandi að hverjum þeim sem gerist áskrifandi að þér "
"(best fyrir ómannlega notendur)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Lýsingin er of löng (í mesta lagi 140 tákn)."
@@ -2887,7 +3126,7 @@ msgstr "Stillingar vistaðar."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3042,7 +3281,7 @@ msgstr "Endurstilla lykilorð"
msgid "Recover password"
msgstr "Endurheimta lykilorð"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Beiðni um að endurheimta lykilorð hefur verið send inn"
@@ -3062,19 +3301,19 @@ msgstr "Endurstilla"
msgid "Enter a nickname or email address."
msgstr "Sláðu inn stuttnefni eða tölvupóstfang."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Enginn notandi með þetta tölvupóstfang eða notendanafn"
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ekkert tölvupóstfang á skrá fyrir þennan notanda."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Villa kom upp í vistun netfangsstaðfestingar."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3082,106 +3321,122 @@ msgstr ""
"Leiðbeiningar um það hvernig þú getur endurheimt lykilorðið þitt hafa verið "
"sendar á tölvupóstfangið sem er tengt notendaaðganginum þínum."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Bjóst ekki við endurstillingu lykilorðs."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Lykilorð verður að vera 6 tákn eða fleiri."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Lykilorð og staðfesting passa ekki saman."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Villa kom upp í stillingu notanda."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Tókst að vista nýtt lykilorð. Þú ert núna innskráð(ur)"
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Afsakið en aðeins fólki sem er boðið getur nýskráð sig."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr ""
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Nýskráning tókst"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Nýskrá"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Nýskráning ekki leyfð."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Þú getur ekki nýskráð þig nema þú samþykkir leyfið."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Tölvupóstfang er nú þegar skráð."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ótækt notendanafn eða lykilorð."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 lágstafir eða tölustafir, engin greinarmerki eða bil. Nauðsynlegt."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 eða fleiri tákn. Nauðsynlegt"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Sama og lykilorðið hér fyrir ofan. Nauðsynlegt."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Tölvupóstur"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Aðeins notað fyrir uppfærslur, tilkynningar og endurheimtingu lykilorða."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Lengra nafn, ákjósalegast að það sé \"rétta\" nafnið þitt"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Textinn og skrárnar mínar eru aðgengilegar undir "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3214,7 +3469,7 @@ msgstr ""
"\n"
"Takk fyrir að skrá þig og við vonum að þú njótir þjónustunnar."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3259,7 +3514,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Veffang persónulegrar síðu á samvirkandi örbloggsþjónustu"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Gerast áskrifandi"
@@ -3304,7 +3559,7 @@ msgstr "Þú getur ekki nýskráð þig nema þú samþykkir leyfið."
msgid "You already repeated that notice."
msgstr "Þú hefur nú þegar lokað á þennan notanda."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "à sviðsljósinu"
@@ -3343,7 +3598,7 @@ msgstr "Bablveita fyrir hópinn %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3356,8 +3611,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3375,7 +3630,7 @@ msgstr "Þú getur ekki sent þessum notanda skilaboð."
msgid "User doesn't have this role."
msgstr "Notandi með enga persónulega síðu sem passar við"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Tölfræði"
@@ -3391,7 +3646,7 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3431,28 +3686,32 @@ msgstr "Þú verður aða hafa skráð þig inn til að ganga úr hóp."
msgid "Application profile"
msgstr "Babl hefur enga persónulega síðu"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Stuttnefni"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Uppröðun"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Lýsing"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Tölfræði"
@@ -3537,16 +3796,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3563,67 +3822,67 @@ msgstr "%s hópurinn"
msgid "%1$s group, page %2$d"
msgstr "Hópmeðlimir %s, síða %d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Hópssíðan"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "Vefslóð"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Athugasemd"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Hópsaðgerðir"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "%s hópurinn"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Meðlimir"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Ekkert)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Allir meðlimir"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr ""
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3633,7 +3892,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3642,7 +3901,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3718,8 +3977,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3772,11 +4031,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3871,7 +4130,7 @@ msgid "Unable to save site notice."
msgstr "Vandamál komu upp við að vista babl."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3888,47 +4147,77 @@ msgstr ""
msgid "Save site notice"
msgstr "Babl vefsíðunnar"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "SMS stillingar"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Þú getur fengið SMS í gegnum tölvupóst frá %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Þessi síða er ekki aðgengileg í "
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "Snarskilaboðafang"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Núverandi staðfesta SMS símanúmerið."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Býð eftir staðfestingu varðandi þetta símanúmer."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Staðfestingarlykill"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Sláðu inn lykilinn sem þú fékkst í símann þinn."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Staðfesta"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "SMS símanúmer"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Símanúmer, með svæðisnúmeri ef við á, án greinarmerkja eða bila"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Stillingar"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3936,45 +4225,75 @@ msgstr ""
"Sendu mér babl í gegnum SMS. Ég veit að það er möguleiki að "
"farsímafyrirtækið rukki fyrir móttöku á SMSunum."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Stillingar vistaðar."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ekkert símanúmer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Ekkert farsímafélag valið."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Þetta er nú þegar símanúmerið þitt."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Þetta símanúmer tilheyri nú þegar öðrum notanda."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Þetta er rangur staðfestingarlykill."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Hætt við staðfestingu."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Þetta er ekki símanúmerið þitt."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS símanúmer"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Farsímafyrirtæki"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Veldu farsímafyrirtæki"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3984,13 +4303,14 @@ msgstr ""
"gegnum tölvupóst sem er ekki í þessum lista, sendu okkur tölvupóst í %s og "
"láttu okkur vita."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Enginn lykill sleginn inn"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4012,7 +4332,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4052,8 +4372,8 @@ msgstr "Stillingar fyrir mynd"
msgid "You are not subscribed to that profile."
msgstr "Þú ert ekki áskrifandi."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Gat ekki vistað áskrift."
@@ -4146,11 +4466,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr ""
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber snarskilaboðaþjónusta"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4184,12 +4504,12 @@ msgstr "Ekkert einkenni gefið upp."
msgid "Tag %s"
msgstr "Merki %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Persónuleg síða notanda"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Ljósmynd"
@@ -4226,10 +4546,6 @@ msgstr ""
msgid "No such tag."
msgstr "Ekkert þannig merki."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Aðferð í forritsskilum er í þróun."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4246,7 +4562,8 @@ msgid "User is not silenced."
msgstr "Notandi hefur enga persónulega síðu."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "Ekkert einkenni persónulegrar síðu í beiðni."
#: actions/unsubscribe.php:98
@@ -4283,7 +4600,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Persónuleg síða"
@@ -4350,7 +4668,7 @@ msgstr ""
"gerast áskrifandi að babli þessa notanda. Ef þú baðst ekki um að gerast "
"áskrifandi að babli, smelltu þá á \"Hætta við\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4453,48 +4771,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Hópmeðlimir %s, síða %d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr ""
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Færslur frá %1$s á %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Tölfræði"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4502,7 +4826,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4510,236 +4834,348 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Persónulegt"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Ótæk stærð."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Hópssíðan"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Gat ekki uppfært hóp."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Hópssíðan"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Gat ekki uppfært hóp."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Gat ekki búið til uppáhald."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Villa kom upp við að senda bein skilaboð"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Gat ekki skeytt skilaboðum inn í."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Gat ekki uppfært skilaboð með nýju veffangi."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Gagnagrunnsvilla við innsetningu myllumerkis: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr ""
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Gat ekki vistað babl. Óþekktur notandi."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Of mikið babl í einu; slakaðu aðeins á og haltu svo áfram eftir nokkrar "
"mínútur."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Það hefur verið lagt bann við babli frá þér á þessari síðu."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Vandamál komu upp við að vista babl."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Vandamál komu upp við að vista babl."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Notandi hefur enga persónulega síðu."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Vandamál komu upp við að vista babl."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "Þessi notandi hefur bannað þér að gerast áskrifandi"
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Notandinn hefur lokað á þig."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Ekki í áskrift!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Gat ekki eytt áskrift."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Gat ekki eytt áskrift."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Gat ekki eytt áskrift."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Gat ekki búið til hóp."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Gat ekki skráð hópmeðlimi."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Gat ekki skráð hópmeðlimi."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Gat ekki vistað áskrift."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Breyta persónulegu stillingunum þínum"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Hlaða upp einkennismynd"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Breyta lykilorðinu þínu"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Breyta tölvupóstumsjón"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Annað"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Aðrir valkostir"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Annað"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Ónafngreind síða"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Stikl aðalsíðu"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Persónuleg síða og vinarás"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Persónulegt"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
@@ -4748,102 +5184,107 @@ msgstr ""
"persónulegu síðunni þinni"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Gat ekki framsent til vefþjóns: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Tengjast"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Stikl aðalsíðu"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "Stjórnandi"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Bjóða vinum og vandamönnum að slást í hópinn á %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Bjóða"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Skrá þig út af síðunni"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Útskráning"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Búa til aðgang"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Nýskrá"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Skrá þig inn á síðuna"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Innskráning"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hjálp!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Hjálp"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Leita að fólki eða texta"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4851,73 +5292,87 @@ msgstr "Leita"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Babl vefsíðunnar"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Staðbundin sýn"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Babl síðunnar"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Stikl undirsíðu"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hjálp"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Um"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Spurt og svarað"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Friðhelgi"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Frumþula"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Tengiliður"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Hugbúnaðarleyfi StatusNet"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** er örbloggsþjónusta í boði [%%site.broughtby%%](%%site."
"broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** er örbloggsþjónusta."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4928,70 +5383,84 @@ msgstr ""
"sem er gefinn út undir [GNU Affero almenningsleyfinu](http://www.fsf.org/"
"licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "Hugbúnaðarleyfi StatusNet"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Allt "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "leyfi."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Uppröðun"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Eftir"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Ãður"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "Þú getur ekki sent þessum notanda skilaboð."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "Nýskráning ekki leyfð."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5003,166 +5472,204 @@ msgstr "Skipun hefur ekki verið fullbúin"
msgid "saveSettings() not implemented."
msgstr "Skipun hefur ekki verið fullbúin"
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Staðfesting tölvupóstfangs"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Bjóða"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "SMS staðfesting"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Persónulegt"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "SMS staðfesting"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Notandi"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS staðfesting"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS staðfesting"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "SMS staðfesting"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Babl vefsíðunnar"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS staðfesting"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Lýstu hópnum eða umfjöllunarefninu með 140 táknum"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Lýstu hópnum eða umfjöllunarefninu með 140 táknum"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Frumþula"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "Vefslóð vefsíðu hópsins eða umfjöllunarefnisins"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Frumþula"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "Vefslóð vefsíðu hópsins eða umfjöllunarefnisins"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Hætta við"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Fjarlægja"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr ""
@@ -5174,47 +5681,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Lykilorðabreyting"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Lykilorðabreyting"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Niðurstöður skipunar"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Fullkláruð skipun"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Misheppnuð skipun"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Fyrirgefðu en þessi skipun hefur ekki enn verið útbúin."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Enginn persónuleg síða með þessu einkenni."
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Notandi hefur ekkert nýtt babl"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Gat ekki uppfært notanda með staðfestu tölvupóstfangi."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Gat ekki uppfært notanda með staðfestu tölvupóstfangi."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Fyrirgefðu en þessi skipun hefur ekki enn verið útbúin."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Ãtt við notanda"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5222,203 +5749,207 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Enginn persónuleg síða með þessu einkenni."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Notandi hefur ekkert nýtt babl"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Babl gert að uppáhaldi."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Þú ert nú þegar meðlimur í þessum hópi"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, fuzzy, php-format
+msgid "Could not join user %1$s to group %2$s"
msgstr "Gat ekki bætt notandanum %s í hópinn %s"
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s bætti sér í hópinn %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Gat ekki fjarlægt notandann %s úr hópnum %s"
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s gekk úr hópnum %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Fullt nafn: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Staðsetning: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Heimasíða: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Um: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "Skilaboð eru of löng - 140 tákn eru í mesta lagi leyfð en þú sendir %d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Bein skilaboð send til %s"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Villa kom upp við að senda bein skilaboð"
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Get ekki kveikt á tilkynningum."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Eyða þessu babli"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Babl sent inn"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Vandamál komu upp við að vista babl."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Skilaboð eru of löng - 140 tákn eru í mesta lagi leyfð en þú sendir %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "Svara þessu babli"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Vandamál komu upp við að vista babl."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Tilgreindu nafn notandans sem þú vilt gerast áskrifandi að"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Enginn svoleiðis notandi."
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Þú ert ekki áskrifandi."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Nú ert þú áskrifandi að %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Tilgreindu nafn notandans sem þú vilt hætta sem áskrifandi að"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Nú ert þú ekki lengur áskrifandi að %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Skipun hefur ekki verið fullbúin"
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Tilkynningar af."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Get ekki slökkt á tilkynningum."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Tilkynningar á."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Get ekki kveikt á tilkynningum."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Nú ert þú ekki lengur áskrifandi að %s"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Þú ert ekki áskrifandi."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Þú ert nú þegar í áskrift að þessum notendum:"
msgstr[1] "Þú ert nú þegar í áskrift að þessum notendum:"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Gat ekki leyft öðrum að gerast áskrifandi að þér."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Gat ekki leyft öðrum að gerast áskrifandi að þér."
msgstr[1] "Gat ekki leyft öðrum að gerast áskrifandi að þér."
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Þú ert ekki meðlimur í þessum hópi."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Þú ert ekki meðlimur í þessum hópi."
msgstr[1] "Þú ert ekki meðlimur í þessum hópi."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5460,20 +5991,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Enginn staðfestingarlykill."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "Skrá þig inn á síðuna"
@@ -5648,54 +6179,55 @@ msgstr "Hóparnir með mesta bablið"
msgid "Tags in %s group's notices"
msgstr "Merki í babli %s hópsins"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
"Þessi síða er ekki aðgengileg í margmiðlunargerðinni sem þú tekur á móti"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Skráarsnið myndar ekki stutt."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Þetta er of langt. Hámarkslengd babls er 140 tákn."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Upphal að hluta til."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Kerfisvilla kom upp við upphal skráar."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Annaðhvort ekki mynd eða þá að skráin er gölluð."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Skráarsnið myndar ekki stutt."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Týndum skránni okkar"
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Óþekkt skráargerð"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5716,11 +6248,13 @@ msgstr "Skráðu þig inn með notendanafni og lykilorði"
msgid "Sign up for a new account"
msgstr "Búðu til nýjan aðgang"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Staðfesting tölvupóstfangs"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5737,12 +6271,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s er að hlusta á bablið þitt á %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5757,19 +6300,22 @@ msgid ""
"Change your email address or notification options at %8$s\n"
msgstr ""
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"Lýsing: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nýtt tölvupóstfang til að senda á %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5790,21 +6336,31 @@ msgstr ""
"Með kærri kveðju,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Staða %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS staðfesting"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Býð eftir staðfestingu varðandi þetta símanúmer."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s ýtti við þér"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5820,12 +6376,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ný persónuleg skilaboð frá %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5844,12 +6402,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s heldur upp á babl frá þér"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5870,12 +6430,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5888,6 +6458,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5900,7 +6482,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr "frá"
@@ -5956,25 +6538,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Gat ekki eytt uppáhaldi."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6030,50 +6612,54 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "Nei"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr ""
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "à sviðsljósinu"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Svara þessu babli"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Svara"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Babl sent inn"
@@ -6098,6 +6684,10 @@ msgstr "Villa kom upp við að setja inn nýja persónulega síðu"
msgid "Error inserting avatar"
msgstr "Villa kom upp við að setja inn mynd"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Villa kom upp í uppfærslu persónulegrar fjarsíðu"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Villa kom upp við að setja inn persónulega fjarsíðu"
@@ -6144,12 +6734,12 @@ msgstr "Skilaboð sem þú hefur sent"
msgid "Tags in %s's notices"
msgstr "Merki í babli %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "Óþekkt aðgerð"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Ãskriftir"
@@ -6157,32 +6747,32 @@ msgstr "Ãskriftir"
msgid "All subscriptions"
msgstr "Allar áskriftir"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Ãskrifendur"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Allir áskrifendur"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Meðlimur síðan"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Allir hópar"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Ekkert einkenni gefið upp."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6206,12 +6796,21 @@ msgstr "à sviðsljósinu"
msgid "Popular"
msgstr "Vinsælt"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Ekkert einkenni gefið upp."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Svara þessu babli"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Já"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Svara þessu babli"
@@ -6221,7 +6820,7 @@ msgstr "Svara þessu babli"
msgid "Revoke the \"%s\" role from this user"
msgstr ""
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6323,6 +6922,50 @@ msgstr ""
msgid "None"
msgstr "Ekkert"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Mistókst að uppfæra mynd"
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Villa kom upp í uppfærslu persónulegrar fjarsíðu"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Aðalbablararnir"
@@ -6353,90 +6996,109 @@ msgstr "Hætta sem áskrifandi að þessum notanda"
msgid "Unsubscribe"
msgstr "Fara úr áskrift"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Notandi hefur enga persónulega síðu."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr ""
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Notandaaðgerðir"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr ""
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Senda bein skilaboð til þessa notanda"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Skilaboð"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Persónuleg síða notanda"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "fyrir nokkrum sekúndum"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "fyrir um einni mínútu síðan"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "fyrir um %d mínútum síðan"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "fyrir um einum klukkutíma síðan"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "fyrir um %d klukkutímum síðan"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "fyrir um einum degi síðan"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "fyrir um %d dögum síðan"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "fyrir um einum mánuði síðan"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "fyrir um %d mánuðum síðan"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "fyrir um einu ári síðan"
@@ -6450,7 +7112,7 @@ msgstr ""
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Skilaboð eru of löng - 140 tákn eru í mesta lagi leyfð en þú sendir %d"
diff --git a/locale/it/LC_MESSAGES/statusnet.po b/locale/it/LC_MESSAGES/statusnet.po
index 1bd3f26ad..5bb079af7 100644
--- a/locale/it/LC_MESSAGES/statusnet.po
+++ b/locale/it/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Italian
#
+# Author@translatewiki.net: HalphaZ
# Author@translatewiki.net: Milocasagrande
# Author@translatewiki.net: Nemo bis
# --
@@ -9,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:15+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:38+0000\n"
"Language-Team: Italian\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: it\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +23,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Accesso"
@@ -74,78 +75,83 @@ msgstr "Chiuso"
msgid "Save access settings"
msgstr "Salva impostazioni di accesso"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Salva"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "Pagina inesistente."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Utente inesistente."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s e amici, pagina %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s e amici"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed degli amici di %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed degli amici di %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed degli amici di %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -153,7 +159,7 @@ msgstr ""
"Questa è l'attività di %s e i suoi amici, ma nessuno ha ancora scritto "
"qualche cosa."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,84 +169,86 @@ msgstr ""
"scrivi un messaggio."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Puoi provare a [richiamare %1$s](../%2$s) dal suo profilo o [scrivere "
"qualche cosa alla sua attenzione](%%%%action.newnotice%%%%?status_textarea=%3"
"$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Perché non [crei un account](%%%%action.register%%%%) e richiami %s o scrivi "
"un messaggio alla sua attenzione."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Tu e i tuoi amici"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Messaggi da %1$s e amici su %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Metodo delle API non trovato."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Questo metodo richiede POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"È necessario specificare un parametro chiamato \"device\" con un valore tra: "
-"\"sms\", \"im\" o \"none\""
+"\"sms\", \"im\" o \"none\"."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Impossibile aggiornare l'utente."
@@ -249,7 +257,7 @@ msgstr "Impossibile aggiornare l'utente."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "L'utente non ha un profilo."
@@ -259,9 +267,9 @@ msgid "Could not save profile."
msgstr "Impossibile salvare il profilo."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -319,46 +327,47 @@ msgstr "Messaggi diretti a %s"
msgid "All the direct messages sent to %s"
msgstr "Tutti i messaggi diretti inviati a %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Nessun testo nel messaggio!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Troppo lungo. La dimensione massima di un messaggio è di %d caratteri."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Destinatario non trovato."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Non puoi inviare messaggi diretti a utenti che non sono tuoi amici."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Nessuno messaggio trovato con quel ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Questo messaggio è già un preferito."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Impossibile creare un preferito."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Questo messaggio non è un preferito."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Impossibile eliminare un preferito."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Impossibile seguire l'utente: utente non trovato."
#: actions/apifriendshipscreate.php:118
@@ -374,8 +383,9 @@ msgstr "Impossibile non seguire l'utente: utente non trovato."
msgid "You cannot unfollow yourself."
msgstr "Non puoi non seguirti."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Devono essere forniti due ID utente o nominativi."
#: actions/apifriendshipsshow.php:134
@@ -386,117 +396,130 @@ msgstr "Impossibile determinare l'utente sorgente."
msgid "Could not find target user."
msgstr "Impossibile trovare l'utente destinazione."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Il soprannome deve essere composto solo da lettere minuscole e numeri, senza "
"spazi."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Soprannome già in uso. Prova con un altro."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Non è un soprannome valido."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "L'indirizzo della pagina web non è valido."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Nome troppo lungo (max 255 caratteri)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "La descrizione è troppo lunga (max %d caratteri)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Ubicazione troppo lunga (max 255 caratteri)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Troppi alias! Massimo %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Alias non valido: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Alias non valido: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "L'alias \"%s\" è già in uso. Prova con un altro."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "L'alias non può essere lo stesso del soprannome."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Gruppo non trovato!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Gruppo non trovato."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Fai già parte di quel gruppo."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "L'amministratore ti ha bloccato l'accesso a quel gruppo."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Impossibile iscrivere l'utente %1$s al gruppo %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Non fai parte di questo gruppo."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Impossibile rimuovere l'utente %1$s dal gruppo %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Gruppi di %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Gruppi del sito %1$s a cui %2$s è iscritto."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Gruppi di %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "Gruppi su %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Carica file"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Nessun parametro oauth_token fornito."
@@ -506,17 +529,17 @@ msgid "Invalid token."
msgstr "Token non valido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -550,12 +573,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Il token di richiesta %s è stato rifiutato o revocato."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Invio del modulo inaspettato."
@@ -578,20 +604,22 @@ msgstr ""
"<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:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Account"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Soprannome"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Password"
@@ -607,11 +635,11 @@ msgstr "Consenti"
msgid "Allow or deny access to your account information."
msgstr "Consenti o nega l'accesso alle informazioni del tuo account."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Questo metodo richiede POST o DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Non puoi eliminare il messaggio di un altro utente."
@@ -628,60 +656,64 @@ msgstr "Non puoi ripetere un tuo messaggio."
msgid "Already repeated that notice."
msgstr "Hai già ripetuto quel messaggio."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Messaggio eliminato."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Nessuno stato trovato con quel ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Troppo lungo. Lunghezza massima %d caratteri."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Non trovato"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Non trovato."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"La dimensione massima di un messaggio è di %d caratteri, compreso l'URL."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formato non supportato."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Preferiti da %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s aggiornamenti preferiti da %2$s / %3$s"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Messaggi che citano %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s messaggi in risposta a quelli da %2$s / %3$s"
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Attività pubblica di %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "Aggiornamenti di %s da tutti!"
@@ -696,19 +728,19 @@ msgstr "Ripetuto a %s"
msgid "Repeats of %s"
msgstr "Ripetizioni di %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Messaggi etichettati con %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Messaggi etichettati con %1$s su %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Non trovato."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Metodo delle API in lavorazione."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -729,8 +761,9 @@ msgstr "Nessuna dimensione."
msgid "Invalid size."
msgstr "Dimensione non valida."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Immagine"
@@ -741,10 +774,10 @@ msgstr ""
"Puoi caricare la tua immagine personale. La dimensione massima del file è %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Utente senza profilo corrispondente"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Utente senza profilo corrispondente."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -762,7 +795,7 @@ msgid "Preview"
msgstr "Anteprima"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Elimina"
@@ -774,23 +807,27 @@ msgstr "Carica"
msgid "Crop"
msgstr "Ritaglia"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Nessun file caricato."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Scegli un'area quadrata per la tua immagine personale"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Perso il nostro file di dati."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Immagine aggiornata."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Aggiornamento dell'immagine non riuscito."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Immagine eliminata."
@@ -798,11 +835,11 @@ msgstr "Immagine eliminata."
msgid "You already blocked that user."
msgstr "Hai già bloccato quell'utente."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Blocca utente"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -812,27 +849,42 @@ msgstr ""
"tuoi messaggi, non potrà più abbonarsi e non riceverai notifica delle @-"
"risposte che ti invierà."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Non bloccare questo utente"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Sì"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Blocca questo utente"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Salvataggio delle informazioni per il blocco non riuscito."
@@ -845,8 +897,8 @@ msgstr "Salvataggio delle informazioni per il blocco non riuscito."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Nessuna gruppo."
@@ -876,9 +928,11 @@ msgstr "Sblocca"
msgid "Unblock this user"
msgstr "Sblocca questo utente"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Invia a "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Invia a %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -892,33 +946,43 @@ msgstr "Codice di conferma non trovato."
msgid "That confirmation code is not for you!"
msgstr "Quel codice di conferma non è per te!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Tipo di indirizzo %s non riconosciuto"
+msgid "Unrecognized address type %s."
+msgstr "Tipo di indirizzo %s non riconosciuto."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Quell'indirizzo è già stato confermato."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Impossibile aggiornare l'utente."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Impossibile eliminare l'email di conferma."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Conferma indirizzo"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "L'indirizzo \"%s\" è stato confermato per il tuo account."
@@ -928,7 +992,7 @@ msgid "Conversation"
msgstr "Conversazione"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Messaggi"
@@ -947,7 +1011,7 @@ msgstr "Questa applicazione non è di tua proprietà."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Si è verificato un problema con il tuo token di sessione."
@@ -964,21 +1028,23 @@ msgstr ""
"Vuoi eliminare questa applicazione? Questa azione eliminerà tutti i dati "
"riguardo all'applicazione dal database, comprese tutte le connessioni utente."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Non eliminare l'applicazione"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Elimina l'applicazione"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Accesso non effettuato."
@@ -1003,11 +1069,13 @@ msgstr "Elimina messaggio"
msgid "Are you sure you want to delete this notice?"
msgstr "Vuoi eliminare questo messaggio?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Non eliminare il messaggio"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Elimina questo messaggio"
@@ -1031,58 +1099,69 @@ msgstr ""
"Vuoi eliminare questo utente? Questa azione eliminerà tutti i dati "
"dell'utente dal database, senza una copia di sicurezza."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Elimina questo utente"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Aspetto"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Impostazioni dell'aspetto per questo sito di StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL del logo non valido."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema non disponibile: %s"
+msgid "Theme not available: %s."
+msgstr "Tema non disponibile: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Modifica logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo del sito"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Modifica tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Tema del sito"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema per questo sito."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Tema personalizzato"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Puoi caricare un tema per StatusNet personalizzato come un file ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Modifica l'immagine di sfondo"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Sfondo"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1091,67 +1170,76 @@ msgstr ""
"Puoi caricare un'immagine di sfondo per il sito. La dimensione massima del "
"file è di %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "On"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Off"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Abilita o disabilita l'immagine di sfondo."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Affianca l'immagine di sfondo"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Modifica colori"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Contenuto"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra laterale"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Testo"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Collegamenti"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avanzate"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalizzato"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Usa predefiniti"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Ripristina i valori predefiniti"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Reimposta i valori predefiniti"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Salva"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Salva aspetto"
@@ -1256,11 +1344,17 @@ msgstr "Usa questo modulo per modificare il gruppo."
msgid "description is too long (max %d chars)."
msgstr "La descrizione è troppo lunga (max %d caratteri)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Alias non valido: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Impossibile aggiornare il gruppo."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Impossibile creare gli alias."
@@ -1268,31 +1362,42 @@ msgstr "Impossibile creare gli alias."
msgid "Options saved."
msgstr "Opzioni salvate."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Impostazioni email"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Gestisci la ricezione delle email da %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Indirizzo"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Indirizzo email"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Indirizzo email attualmente confermato."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Rimuovi"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1301,109 +1406,139 @@ msgstr ""
"posta (e anche la posta indesiderata!) per un messaggio con ulteriori "
"istruzioni."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Annulla"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Indirizzi email"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Indirizzo email, del tipo \"nomeutente@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Aggiungi"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Email di ricezione"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Invia le email a questo indirizzo per scrivere nuovi messaggi."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Crea un nuovo indirizzo email a cui inviare i messaggi e rimuovi quello "
"vecchio."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nuovo"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferenze"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferenze dell'email"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Inviami avvisi di nuovi abbonamenti via email"
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Inviami un'email quando qualcuno aggiunge un mio messaggio ai preferiti"
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Inviami un'email quando qualcuno mi invia un messaggio privato"
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Inviami un'email quando qualcuno mi invia una \"@-risposta\""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Consenti ai miei amici di richiamarmi e inviami un'email"
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Voglio inviare i messaggi via email"
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Pubblica un MicroID per il mio indirizzo email"
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Preferenze salvate."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Preferenze dell'email salvate."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Nessun indirizzo email."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Impossibile normalizzare quell'indirizzo email"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Non è un indirizzo email valido."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Quello è già il tuo indirizzo email."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Quell'indirizzo email appartiene già a un altro utente."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Impossibile inserire il codice di conferma."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1412,43 +1547,53 @@ msgstr ""
"Controlla la tua casella di posta (e anche la posta indesiderata!) per il "
"codice e le istruzioni su come usarlo."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Nessuna conferma da annullare."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Quello è l'indirizzo di messaggistica sbagliato."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Quello è l'indirizzo email sbagliato."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Conferma annullata."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Conferma dell'email annullata."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Quello non è il tuo indirizzo email."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "L'indirizzo è stato rimosso."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "L'indirizzo email è stato rimosso."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Nessun indirizzo email di ricezione."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Impossibile aggiornare il record dell'utente."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Indirizzo email di ricezione rimosso."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Nuovo indirizzo email di ricezione aggiunto."
@@ -1567,9 +1712,9 @@ msgstr "Impossibile convertire il token di richiesta in uno di accesso."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Il servizio remoto usa una versione del protocollo OMB sconosciuta."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Errore nell'aggiornare il profilo remoto"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Errore nell'aggiornare il profilo remoto."
#: actions/getfile.php:79
msgid "No such file."
@@ -1597,13 +1742,13 @@ msgstr "L'utente ricopre già questo ruolo."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Nessun profilo specificato."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Nessun profilo con quel ID."
@@ -1624,11 +1769,11 @@ msgstr "L'utente è già bloccato dal gruppo."
msgid "User is not a member of group."
msgstr "L'utente non fa parte del gruppo."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Blocca l'utente dal gruppo"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1639,15 +1784,17 @@ msgstr ""
"dal gruppo, non potrà più inviare messaggi e non potrà più iscriversi al "
"gruppo."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Non bloccare l'utente da questo gruppo"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Blocca l'utente da questo gruppo"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Errore del database nel bloccare l'utente dal gruppo."
@@ -1692,10 +1839,6 @@ msgstr ""
"Puoi caricare un'immagine per il logo del tuo gruppo. La dimensione massima "
"del file è di %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Utente senza profilo corrispondente."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Scegli un'area quadrata dell'immagine per il logo."
@@ -1726,34 +1869,38 @@ msgstr "Un elenco degli utenti in questo gruppo."
msgid "Admin"
msgstr "Amministra"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blocca"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Rende l'utente amministratore del gruppo"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Rendi amm."
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Rende questo utente un amministratore"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Attività di %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Messaggi dai membri di %1$s su %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Gruppi"
@@ -1778,7 +1925,7 @@ msgstr ""
"nomegruppo\". Non trovi un gruppo che ti piace? Prova a [cercarne uno](%%%%"
"action.groupsearch%%%%) o [crea il tuo!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Crea un nuovo gruppo"
@@ -1830,11 +1977,15 @@ msgstr "L'utente non è bloccato dal gruppo."
msgid "Error removing the block."
msgstr "Errore nel rimuovere il blocco."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Impostazioni messaggistica istantanea"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1844,15 +1995,24 @@ msgstr ""
"istantanea](%%doc.im%%) Jabber/GTalk. Configura il tuo indirizzo e le "
"impostazioni qui di seguito."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Messaggistica istantanea non disponibile."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Indirizzo di messaggistica istantanea"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Indirizzo Jabber/GTalk attualmente confermato."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1862,11 +2022,9 @@ msgstr ""
"GTalk per un messaggio con ulteriori istruzioni. Hai aggiunto %s al tuo "
"elenco contatti?"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Indirizzo di messaggistica istantanea"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1876,43 +2034,64 @@ msgstr ""
"cosa, assicurati di aggiungere %s all'elenco dei contatti nel tuo programma "
"di messaggistica o su GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferenze messaggistica"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Inviami i messaggi via Jabber/GTalk"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Pubblica un messaggio quando il mio stato Jabber/GTalk cambia"
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr "Inviami le risposte delle persone a cui sono abbonato via Jabber/GTalk"
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Pubblica un MicroID per il mio indirizzo Jabber/GTalk"
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferenze salvate."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Nessun ID di Jabber."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Impossibile normalizzare quell'ID Jabber"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Non è un ID Jabber valido"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Quello è già il tuo ID di Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "ID Jabber già assegnato a un altro utente."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1921,10 +2100,32 @@ msgstr ""
"Un codice di conferma è stato inviato all'indirizzo di messaggistica "
"istantanea che hai aggiunto. Devi approvare %s affinché ti invii messaggi."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Quello è l'indirizzo di messaggistica sbagliato."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Impossibile eliminare la conferma della messaggistica."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Conferma della messaggistica annullata."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Quello non è il tuo ID di Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "L'indirizzo di messaggistica è stato rimosso."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1947,8 +2148,8 @@ msgstr "Gli inviti sono stati disabilitati."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "Devi eseguire l'accesso per invitare altri utenti a usare %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Devi eseguire l'accesso per invitare altri utenti a usare %s."
#: actions/invite.php:72
#, php-format
@@ -1967,7 +2168,9 @@ msgstr "Invita nuovi utenti"
msgid "You are already subscribed to these users:"
msgstr "Hai già un abbonamento a questi utenti:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2018,12 +2221,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Invia"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "Hai ricevuto un invito per seguire %1$s su %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2088,7 +2293,9 @@ msgstr "Devi eseguire l'accesso per iscriverti a un gruppo."
msgid "No nickname or ID."
msgstr "Nessun soprannome o ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s fa ora parte del gruppo %2$s"
@@ -2097,48 +2304,50 @@ msgstr "%1$s fa ora parte del gruppo %2$s"
msgid "You must be logged in to leave a group."
msgstr "Devi eseguire l'accesso per lasciare un gruppo."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Non fai parte di quel gruppo."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ha lasciato il gruppo %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Accesso già effettuato."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nome utente o password non corretto."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Errore nell'impostare l'utente. Forse non hai l'autorizzazione."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Accedi"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Accedi al sito"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Ricordami"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Accedi automaticamente in futuro; non per computer condivisi!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Password persa o dimenticata?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2146,14 +2355,16 @@ msgstr ""
"Per motivi di sicurezza, è necessario che tu inserisca il tuo nome utente e "
"la tua password prima di modificare le impostazioni."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Accedi con nome utente e password."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Accedi col tuo nome utente e password. Non hai ancora un nome utente? [Crea]"
-"(%%action.register%%) un nuovo account."
+"Non hai ancora un nome utente? [Crea](%%action.register%%) un nuovo account."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2176,8 +2387,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Impossibile rendere %1$s un amministratore del gruppo %2$s"
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Nessun messaggio corrente"
+msgid "No current status."
+msgstr "Nessun messaggio corrente."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2211,12 +2422,12 @@ msgstr "Usa questo modulo per creare un nuovo gruppo."
msgid "New message"
msgstr "Nuovo messaggio"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Non puoi inviare un messaggio a questo utente."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Nessun contenuto!"
@@ -2224,7 +2435,7 @@ msgstr "Nessun contenuto!"
msgid "No recipient specified."
msgstr "Nessun destinatario specificato."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Non inviarti un messaggio, piuttosto ripetilo a voce dolcemente."
@@ -2238,7 +2449,7 @@ msgstr "Messaggio inviato"
msgid "Direct message to %s sent."
msgstr "Messaggio diretto a %s inviato."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Errore di Ajax"
@@ -2246,7 +2457,7 @@ msgstr "Errore di Ajax"
msgid "New notice"
msgstr "Nuovo messaggio"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Messaggio inviato"
@@ -2297,8 +2508,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Messaggi che corrispondono al termine \"%1$s\" su %2$s!"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Questo utente non consente i richiami oppure non ha confermato o impostato "
"ancora il suo indirizzo email."
@@ -2341,11 +2553,11 @@ msgid "You are not a user of that application."
msgstr "Non sei un utente di quella applicazione."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Impossibile revocare l'accesso per l'applicazione: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Impossibile revocare l'accesso per l'applicazione: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Non hai autorizzato alcuna applicazione all'uso del tuo account."
@@ -2355,25 +2567,30 @@ msgstr ""
"Gli sviluppatori possono modificare le impostazioni di registrazione per le "
"loro applicazioni "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Il messaggio non ha un profilo"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Il messaggio non ha un profilo."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Stato di %1$s su %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "tipo di contenuto "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Tipo di contenuto %s non supportato."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Solo "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Solo URL %s attraverso HTTP semplice."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Non è un formato di dati supportato."
@@ -2403,7 +2620,7 @@ msgstr "Accorcia gli URL con"
#: actions/othersettings.php:117
msgid "Automatic shortening service to use."
-msgstr "Servizio di autoriduzione da usare."
+msgstr "Servizio di autoriduzione da usare"
#: actions/othersettings.php:122
msgid "View profile designs"
@@ -2411,7 +2628,7 @@ msgstr "Visualizza aspetto"
#: actions/othersettings.php:123
msgid "Show or hide profile designs."
-msgstr "Mostra o nasconde gli aspetti del profilo."
+msgstr "Mostra o nasconde gli aspetti del profilo"
#: actions/othersettings.php:153
msgid "URL shortening service is too long (max 50 chars)."
@@ -2478,7 +2695,7 @@ msgid "6 or more characters"
msgstr "6 o più caratteri"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Conferma"
@@ -2490,11 +2707,11 @@ msgstr "Stessa password di sopra"
msgid "Change"
msgstr "Modifica"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "La password deve essere di 6 o più caratteri."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Le password non corrispondono."
@@ -2506,7 +2723,7 @@ msgstr "Vecchia password non corretta"
msgid "Error saving user; invalid."
msgstr "Errore nel salvare l'utente; non valido."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Impossibile salvare la nuova password."
@@ -2515,7 +2732,7 @@ msgid "Password saved."
msgstr "Password salvata."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Percorsi"
@@ -2525,23 +2742,23 @@ msgstr "Percorso e impostazioni server per questo sito StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Directory del tema non leggibile: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Directory del tema non leggibile: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Directory delle immagini degli utenti non scrivibile: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Directory delle immagini degli utenti non scrivibile: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Directory degli sfondi non scrivibile: %s"
+msgid "Background directory not writable: %s."
+msgstr "Directory degli sfondi non scrivibile: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Directory delle localizzazioni non leggibile: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Directory delle localizzazioni non leggibile: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2680,19 +2897,19 @@ msgstr ""
msgid "People search"
msgstr "Cerca persone"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Non è un'etichetta valida di persona: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Non è un'etichetta valida di persona: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Utenti auto-etichettati con %1$s - pagina %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Contenuto del messaggio non valido"
+msgid "Invalid notice content."
+msgstr "Contenuto del messaggio non valido."
#: actions/postnotice.php:101
#, php-format
@@ -2721,42 +2938,43 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"1-64 lettere minuscole o numeri, senza spazi o simboli di punteggiatura"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nome"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Pagina web"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL della tua pagina web, blog o profilo su un altro sito"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Descriviti assieme ai tuoi interessi in %d caratteri"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Descrivi te e i tuoi interessi"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografia"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Ubicazione"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Dove ti trovi, tipo \"città, regione, stato\""
@@ -2766,7 +2984,7 @@ msgstr "Condividi la mia posizione attuale quando invio messaggi"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Etichette"
@@ -2799,7 +3017,7 @@ msgstr ""
"Abbonami automaticamente a chi si abbona ai miei messaggi (utile per i non-"
"umani)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "La biografia è troppo lunga (max %d caratteri)."
@@ -2840,8 +3058,8 @@ msgstr "Impostazioni salvate."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Oltre il limite della pagina (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Oltre il limite della pagina (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3006,7 +3224,7 @@ msgstr "Reimposta la password"
msgid "Recover password"
msgstr "Recupera la password"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Richiesta password di ripristino"
@@ -3026,19 +3244,19 @@ msgstr "Reimposta"
msgid "Enter a nickname or email address."
msgstr "Inserisci un soprannome o un indirizzo email."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Nessun utente con quell'email o nome utente."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Nessun indirizzo email registrato per quell'utente."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Errore nel salvare la conferma dell'indirizzo."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3046,110 +3264,128 @@ msgstr ""
"Le istruzioni per recuperare la tua password sono state inviate "
"all'indirizzo email registrato nel tuo account."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Ripristino della password inaspettato."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "La password deve essere lunga almeno 6 caratteri."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "La password e la conferma non corrispondono."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Errore nell'impostare l'utente."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nuova password salvata con successo. Hai effettuato l'accesso."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Solo le persone invitate possono registrarsi."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Codice di invito non valido."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registrazione riuscita"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrati"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registrazione non consentita."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Non puoi registrarti se non accetti la licenza."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Indirizzo email già esistente."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Nome utente o password non valido."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Attraverso questo modulo puoi creare un nuovo account con cui potrai "
"successivamente inviare messaggi e metterti in contatto con i tuoi amici e "
"colleghi. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 lettere minuscole o numeri, niente punteggiatura o spazi; richiesto"
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 o più caratteri; richiesta"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Stessa password di sopra; richiesta"
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Email"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Usata solo per aggiornamenti, annunci e recupero password"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nome completo, preferibilmente il tuo \"vero\" nome"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "I miei testi e file sono disponibili nei termini della licenza "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Comprendo che i contenuti e i dati di %1$s sono privati e confidenziali."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "I miei testi e i miei file sono copyright di %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "I miei testi e file restano sotto il mio diretto copyright."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Tutti i diritti riservati."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" a eccezione di questi dati personali: password, indirizzo email, indirizzo "
-"messaggistica istantanea e numero di telefono."
+"I miei testi e file sono disponibili nei termini di %s a eccezione di questi "
+"dati personali: password, indirizzo email, indirizzo messaggistica "
+"istantanea e numero di telefono."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3183,7 +3419,7 @@ msgstr ""
"Grazie per la tua iscrizione e speriamo tu possa divertiti usando questo "
"servizio."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3228,7 +3464,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL del tuo profilo su un altro servizio di microblog compatibile"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Abbonati"
@@ -3266,7 +3502,7 @@ msgstr "Non puoi ripetere i tuoi stessi messaggi."
msgid "You already repeated that notice."
msgstr "Hai già ripetuto quel messaggio."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Ripetuti"
@@ -3301,10 +3537,10 @@ msgid "Replies feed for %s (Atom)"
msgstr "Feed delle risposte di %s (Atom)"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Questa è l'attività delle risposte a %1$s, ma %2$s non ha ricevuto ancora "
"alcun messaggio."
@@ -3319,10 +3555,10 @@ msgstr ""
"[entrare in qualche gruppo](%%action.groups%%)."
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Puoi provare a [richiamare %1$s](../%2$s) o [scrivere qualche cosa alla sua "
"attenzione](%%%%action.newnotice%%%%?status_textarea=%s)."
@@ -3340,7 +3576,7 @@ msgstr "Non puoi revocare i ruoli degli utenti su questo sito."
msgid "User doesn't have this role."
msgstr "L'utente non ricopre questo ruolo."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3354,7 +3590,7 @@ msgstr "L'utente è già nella \"sandbox\"."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessioni"
@@ -3391,26 +3627,30 @@ msgstr "Devi eseguire l'accesso per visualizzare un'applicazione."
msgid "Application profile"
msgstr "Profilo applicazione"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Icona"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nome"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organizzazione"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Descrizione"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistiche"
@@ -3496,20 +3736,20 @@ msgstr ""
"forma di cuore per salvare i messaggi e rileggerli in un altro momento."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s non ha aggiunto alcun messaggio tra i suoi preferiti. Scrivi qualche cosa "
"di interessante in modo che lo inserisca tra i suoi preferiti. :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s non ha aggiunto alcun messaggio tra i suoi preferiti. Perché non [crei un "
"account](%%%%action.register%%%%) e quindi scrivi qualche cosa di "
@@ -3529,67 +3769,67 @@ msgstr "Gruppo %s"
msgid "%1$s group, page %2$d"
msgstr "Gruppi di %1$s, pagina %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Profilo del gruppo"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Nota"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Alias"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Azioni dei gruppi"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Feed dei messaggi per il gruppo %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Feed dei messaggi per il gruppo %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Feed dei messaggi per il gruppo %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF per il gruppo %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membri"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(nessuno)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Tutti i membri"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Creato"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3605,7 +3845,7 @@ msgstr ""
"stesso](%%%%action.register%%%%) per far parte di questo gruppo e di molti "
"altri! ([Maggiori informazioni](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3617,7 +3857,7 @@ msgstr ""
"(http://it.wikipedia.org/wiki/Microblogging) basato sul software libero "
"[StatusNet](http://status.net/)."
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Amministratori"
@@ -3692,10 +3932,10 @@ msgstr ""
"potrebbe essere un buon momento per iniziare! :)"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Puoi provare a richiamare %1$s o [scrivere qualche cosa che attiri la sua "
"attenzione](%%%%action.newnotice%%%%?status_textarea=%2$s)."
@@ -3756,11 +3996,11 @@ msgid "Unknown language \"%s\"."
msgstr "Lingua \"%s\" sconosciuta."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Il limite minimo del testo è di 140 caratteri."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Il limite minimo del testo è di 0 caratteri (illimitato)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "Il limite per i duplicati deve essere di 1 o più secondi."
#: actions/siteadminpanel.php:221
@@ -3852,8 +4092,8 @@ msgid "Unable to save site notice."
msgstr "Impossibile salvare il messaggio del sito."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "La dimensione massima del messaggio del sito è di 255 caratteri"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "La dimensione massima del messaggio del sito è di 255 caratteri."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3867,44 +4107,71 @@ msgstr "Testo messaggio del sito (massimo 255 caratteri, HTML consentito)"
msgid "Save site notice"
msgstr "Salva messaggio"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Impostazioni SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Puoi ricevere messaggi SMS attraverso l'email da %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Il servizio SMS non è disponibile."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Indirizzo SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Numero di telefono attualmente confermato per gli SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "In attesa della conferma per questo numero di telefono."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Codice di conferma"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Inserisci il codice che hai ricevuto sul tuo telefono."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Conferma"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Numero di telefono per SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Numero di telefono, senza punteggiatura o spazi, con il prefisso"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferenze dell'SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3912,23 +4179,33 @@ msgstr ""
"Inviami avvisi via SMS: comprendo che potrei incorrere in esorbitanti "
"bollette da parte del mio operatore"
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Preferenze dell'SMS salvate."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Nessun numero di telefono."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Nessun operatore selezionato."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Quello è già il tuo numero di telefono."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Quel numero di telefono appartiene già a un altro utente."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3937,23 +4214,40 @@ msgstr ""
"aggiunto. Controlla il tuo telefono per il codice e le istruzioni su come "
"usarlo."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Quello è il numero di conferma errato."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Conferma dell'SMS annullata."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Quello non è il tuo numero di telefono."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Il numero di telefono per SMS è stato rimosso."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operatore telefonico"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Seleziona un operatore"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3962,13 +4256,14 @@ msgstr ""
"Operatore di telefonia mobile. Se conosci un operatore che accetta gli SMS "
"via email, ma non è elencato qui, scrivici a %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Nessun codice inserito"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Snapshot"
@@ -3989,7 +4284,7 @@ msgid "Invalid snapshot report URL."
msgstr "URL di segnalazione snapshot non valido."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "A caso quando avviene un web hit"
#: actions/snapshotadminpanel.php:201
@@ -4028,8 +4323,8 @@ msgstr "Salva impostazioni snapshot"
msgid "You are not subscribed to that profile."
msgstr "Non hai una abbonamento a quel profilo."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Impossibile salvare l'abbonamento."
@@ -4130,11 +4425,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s non sta seguendo nessuno."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4167,12 +4462,12 @@ msgstr "Nessun argomento ID."
msgid "Tag %s"
msgstr "Etichetta %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Profilo utente"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Fotografia"
@@ -4209,10 +4504,6 @@ msgstr ""
msgid "No such tag."
msgstr "Nessuna etichetta."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Metodo delle API in lavorazione."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Non hai bloccato quell'utente."
@@ -4226,7 +4517,7 @@ msgid "User is not silenced."
msgstr "L'utente non è zittito."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Nessun ID di profilo nella richiesta."
#: actions/unsubscribe.php:98
@@ -4265,7 +4556,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Abbonamento predefinito non valido: \"%1$s\" non è un utente."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profilo"
@@ -4323,7 +4615,7 @@ msgstr ""
"Controlla i dettagli seguenti per essere sicuro di volerti abbonare ai "
"messaggi di questo utente. Se non hai richiesto ciò, fai clic su \"Rifiuta\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licenza"
@@ -4427,37 +4719,43 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Gustati il tuo hotdog!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Gruppi di %1$s, pagina %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Cerca altri gruppi"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s non fa parte di alcun gruppo."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "Prova a [cercare dei gruppi](%%action.groupsearch%%) e iscriviti."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Messaggi da %1$s su %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4466,11 +4764,11 @@ msgstr ""
"Questo sito esegue il software %1$s versione %2$s, Copyright 2008-2010 "
"StatusNet, Inc. e collaboratori."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Collaboratori"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4482,7 +4780,7 @@ msgstr ""
"Software Foundation, versione 3 o (a scelta) una qualsiasi versione "
"successiva. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4494,7 +4792,7 @@ msgstr ""
"o di UTILIZZABILITÀ PER UN PARTICOLARE SCOPO. Per maggiori informazioni "
"consultare la GNU Affero General Public License. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4503,93 +4801,143 @@ msgstr ""
"Una copia della GNU Affero General Plublic License dovrebbe essere "
"disponibile assieme a questo programma. Se così non fosse, consultare %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Plugin"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Versione"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autori"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"Nessun file può superare %d byte e il file inviato era di %d byte. Prova a "
"caricarne una versione più piccola."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"Un file di questa dimensione supererebbe la tua quota utente di %d byte."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
"Un file di questa dimensione supererebbe la tua quota mensile di %d byte."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Dimensione non valida."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Ingresso nel gruppo non riuscito."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Non si fa parte del gruppo."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Uscita dal gruppo non riuscita."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Impossibile aggiornare il gruppo locale."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Impossibile creare il token di accesso per %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Ti è proibito inviare messaggi diretti."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Impossibile inserire il messaggio."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Impossibile aggiornare il messaggio con il nuovo URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Errore del DB nell'inserire un hashtag: %s"
+msgid "Database error inserting hashtag: %s"
+msgstr "Errore del database nell'inserire un hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problema nel salvare il messaggio. Troppo lungo."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problema nel salvare il messaggio. Utente sconosciuto."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Troppi messaggi troppo velocemente; fai una pausa e scrivi di nuovo tra "
"qualche minuto."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4597,287 +4945,370 @@ msgstr ""
"Troppi messaggi duplicati troppo velocemente; fai una pausa e scrivi di "
"nuovo tra qualche minuto."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Ti è proibito inviare messaggi su questo sito."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problema nel salvare il messaggio."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problema nel salvare la casella della posta del gruppo."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "L'utente non ha un profilo."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Impossibile salvare il messaggio del sito."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Non ti è possibile abbonarti."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Hai già l'abbonamento!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "L'utente non ti consente di seguirlo."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Non hai l'abbonamento!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "Impossibile eliminare l'auto-abbonamento."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+#, fuzzy
+msgid "Could not delete subscription OMB token."
msgstr "Impossibile eliminare il token di abbonamento OMB."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Impossibile eliminare l'abbonamento."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Benvenuti su %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Impossibile creare il gruppo."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Impossibile impostare l'URI del gruppo."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Impossibile impostare la membership al gruppo."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Impossibile salvare le informazioni del gruppo locale."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Modifica le impostazioni del tuo profilo"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Carica un'immagine"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Modifica la tua password"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Modifica la gestione dell'email"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Progetta il tuo profilo"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Altro"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Altre opzioni"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Altro"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Pagina senza nome"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Esplorazione sito primaria"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Profilo personale e attività degli amici"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personale"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Modifica la tua email, immagine, password o il tuo profilo"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Connettiti con altri servizi"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Connetti"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Modifica la configurazione del sito"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Amministra"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Invita amici e colleghi a seguirti su %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Invita"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Termina la tua sessione sul sito"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Esci"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Crea un account"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrati"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Accedi al sito"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Accedi"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Aiutami!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Aiuto"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Cerca persone o del testo"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Cerca"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Messaggio del sito"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Viste locali"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Pagina messaggio"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Esplorazione secondaria del sito"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Aiuto"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Informazioni"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "TOS"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacy"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Sorgenti"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contatti"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Badge"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licenza del software StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** è un servizio di microblog offerto da [%%site.broughtby%%]"
-"(%%site.broughtbyurl%%). "
+"(%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** è un servizio di microblog. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** è un servizio di microblog."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4888,70 +5319,86 @@ msgstr ""
"s, disponibile nei termini della licenza [GNU Affero General Public License]"
"(http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licenza del contenuto del sito"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "I contenuti e i dati di %1$s sono privati e confidenziali."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"I contenuti e i dati sono copyright di %1$s. Tutti i diritti riservati."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"I contenuti e i dati sono forniti dai collaboratori. Tutti i diritti "
"riservati."
-#: lib/action.php:847
-msgid "All "
-msgstr "Tutti "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licenza."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Tutti i contenuti e i dati di %1$s sono disponibili nei termini della "
+"licenza %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginazione"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Successivi"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Precedenti"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Atteso un elemento root del feed, ma ricevuto un documento XML intero."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Impossibile gestire contenuti remoti."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Impossibile gestire contenuti XML incorporati."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Impossibile gestire contenuti Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Non puoi apportare modifiche al sito."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Le modifiche al pannello non sono consentite."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() non implementata."
@@ -4961,156 +5408,192 @@ msgstr "showForm() non implementata."
msgid "saveSettings() not implemented."
msgstr "saveSettings() non implementata."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Impossibile eliminare le impostazioni dell'aspetto."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configurazione di base"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Sito"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configurazione aspetto"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Aspetto"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Configurazione utente"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Utente"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Configurazione di accesso"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configurazione percorsi"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Configurazione sessioni"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Modifica messaggio del sito"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "Configurazione snapshot"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"Le risorse API richiedono accesso lettura-scrittura, ma si dispone del solo "
"accesso in lettura."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"Tentativo di autorizzazione API non riuscito, soprannome = %1$s, proxy = %2"
-"$s, IP = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Modifica applicazione"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Icona per questa applicazione"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Descrivi l'applicazione in %d caratteri"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Descrivi l'applicazione"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL sorgente"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL della pagina web di questa applicazione"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL sorgente"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organizzazione responsabile per questa applicazione"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL della pagina web dell'organizzazione"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL verso cui redirigere dopo l'autenticazione"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Browser"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Desktop"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Tipo di applicazione, browser o desktop"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Sola lettura"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Lettura-scrittura"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Accesso predefinito per questa applicazione, sola lettura o lettura-scrittura"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Annulla"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "Lettura-scrittura"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "Sola lettura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Approvata %1$s - Accesso \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Revoca"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Allegati"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autore"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Provider"
@@ -5122,45 +5605,64 @@ msgstr "Messaggi in cui appare questo allegato"
msgid "Tags for this attachment"
msgstr "Etichette per questo allegato"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Modifica della password non riuscita"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "La modifica della password non è permessa"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Risultati comando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Comando completato"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Comando non riuscito"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Questo comando non è ancora implementato."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Un messaggio con quel ID non esiste"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "L'utente non ha un ultimo messaggio."
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Impossibile trovare un utente col soprannome %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Impossibile trovare un utente locale col soprannome %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Questo comando non è ancora implementato."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Non ha molto senso se cerchi di richiamarti!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Richiamo inviato a %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5171,197 +5673,203 @@ msgstr ""
"Abbonati: %2$s\n"
"Messaggi: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Un messaggio con quel ID non esiste"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "L'utente non ha un ultimo messaggio."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Messaggio indicato come preferito."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Fai già parte di quel gruppo"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Impossibile iscrivere l'utente %1$s al gruppo %2$s."
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s fa ora parte del gruppo %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Impossibile rimuovere l'utente %1$s dal gruppo %2$s"
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%1$s ha lasciato il gruppo %2$s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nome completo: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Posizione: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Pagina web: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Informazioni: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Messaggio troppo lungo: massimo %d caratteri, inviati %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s è un profilo remoto. È possibile inviare messaggi privati solo agli "
+"utenti sullo stesso server."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Messaggio troppo lungo: massimo %1$d caratteri, inviati %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Messaggio diretto a %s inviato."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Errore nell'inviare il messaggio diretto."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Impossibile ripetere un proprio messaggio"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Hai già ripetuto quel messaggio"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Messaggio da %s ripetuto"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Errore nel ripetere il messaggio."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Messaggio troppo lungo: massimo %d caratteri, inviati %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Risposta a %s inviata"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Errore nel salvare il messaggio."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Specifica il nome dell'utente a cui abbonarti."
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Utente inesistente."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Impossibile abbonarsi ai profili OMB attraverso un comando."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Abbonati a %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Specifica il nome dell'utente da cui annullare l'abbonamento."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Abbonamento a %s annullato"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Comando non ancora implementato."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notifiche disattivate."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Impossibile disattivare le notifiche."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notifiche attivate."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Impossibile attivare le notifiche."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Il comando di accesso è disabilitato"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Questo collegamento è utilizzabile una sola volta ed è valido solo per 2 "
"minuti: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "%s ha annullato l'abbonamento"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Il tuo abbonamento è stato annullato."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Persona di cui hai già un abbonamento:"
msgstr[1] "Persone di cui hai già un abbonamento:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Nessuno è abbonato ai tuoi messaggi."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Questa persona è abbonata ai tuoi messaggi:"
msgstr[1] "Queste persone sono abbonate ai tuoi messaggi:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Non fai parte di alcun gruppo."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Non fai parte di questo gruppo:"
msgstr[1] "Non fai parte di questi gruppi:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5443,21 +5951,21 @@ msgstr ""
"tracks - non ancora implementato\n"
"tracking - non ancora implementato\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Non è stato trovato alcun file di configurazione. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "I file di configurazione sono stati cercati in questi posti: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
"Potrebbe essere necessario lanciare il programma d'installazione per "
"correggere il problema."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Vai al programma d'installazione."
@@ -5591,7 +6099,7 @@ msgstr "Gruppo"
#: lib/groupnav.php:101
msgid "Blocked"
-msgstr "Bloccati"
+msgstr "Bloccato"
#: lib/groupnav.php:102
#, php-format
@@ -5630,53 +6138,54 @@ msgstr "I gruppi con più messaggi"
msgid "Tags in %s group's notices"
msgstr "Etichette nei messaggi del gruppo %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Questa pagina non è disponibile in un tipo di supporto che tu accetti"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato file immagine non supportato."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Quel file è troppo grande. La dimensione massima è %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Caricamento parziale."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Errore di sistema nel caricare il file."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Non è un'immagine o il file è danneggiato."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato file immagine non supportato."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Perso il nostro file."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tipo di file sconosciuto"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Sorgente casella in arrivo %d sconosciuta."
@@ -5697,11 +6206,13 @@ msgstr "Accedi con nome utente e password"
msgid "Sign up for a new account"
msgstr "Iscriviti per un nuovo account"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Conferma indirizzo email"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5731,12 +6242,24 @@ msgstr ""
"Grazie per il tuo tempo, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s sta ora seguendo i tuoi messaggi su %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Se credi che questo account non sia usato correttamente, puoi bloccarlo "
+"dall'elenco dei tuoi abbonati e segnalarlo come spam all'amministratore del "
+"sito presso %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5761,17 +6284,20 @@ msgstr ""
"----\n"
"Modifica il tuo indirizzo email o le opzioni di notifica presso %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Biografia: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nuovo indirizzo email per inviare messaggi a %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5792,21 +6318,32 @@ msgstr ""
"Cordiali saluti,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "stato di %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Conferma SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s: conferma che questo numero di telefono sia tuo utilizzando questo codice:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s ti ha richiamato"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5833,12 +6370,14 @@ msgstr ""
"Cordiali saluti,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nuovo messaggio privato da %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5871,12 +6410,14 @@ msgstr ""
"Cordiali saluti,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) ha aggiunto il tuo messaggio tra i suoi preferiti"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5914,12 +6455,25 @@ msgstr ""
"Cordiali saluti,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"L'intera conversazione può essere letta qui:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) ti ha inviato un messaggio"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5932,17 +6486,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) ti ha appena inviato un messaggio (una \"@-riposta\") su %2$s.\n"
+"%1$s (@%9$s) ti ha appena inviato un messaggio (una \"@-risposta\") su %2"
+"$s.\n"
"\n"
-"Il messaggio si trova qui:\n"
+"Il messaggio è qui:\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
"E dice:\n"
"\n"
-"\t%4$s\n"
+"%4$s\n"
+"\n"
+"%5$sPuoi rispondere qui:\n"
+"\n"
+"%6$s\n"
+"\n"
+"L'elenco di tutte le tue @-risposte si trova qui:\n"
"\n"
+"%7$s\n"
+"\n"
+"Cordiali saluti,\n"
+"%2$s\n"
+"\n"
+"P.S: puoi disabilitare le notifiche via email qui: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5957,7 +6536,7 @@ msgstr ""
"iniziare una conversazione con altri utenti. Altre persone possono mandare "
"messaggi riservati solamente a te."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "via"
@@ -6015,24 +6594,24 @@ msgstr "Scrittura del file su disco non riuscita."
msgid "File upload stopped by extension."
msgstr "Caricamento del file bloccato dall'estensione."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Il file supera la quota dell'utente."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Impossibile spostare il file nella directory di destinazione."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Impossibile determinare il tipo MIME del file."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr "Prova a usare un altro formato per %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s non è un tipo di file supportato su server."
@@ -6087,48 +6666,52 @@ msgstr ""
"Il recupero della tua posizione geografica sta impiegando più tempo del "
"previsto. Riprova più tardi."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "O"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "presso"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "in una discussione"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Ripetuto da"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Rispondi a questo messaggio"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Rispondi"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Messaggio ripetuto"
@@ -6152,6 +6735,10 @@ msgstr "Errore nell'inserire il nuovo profilo"
msgid "Error inserting avatar"
msgstr "Errore nell'inserire l'immagine"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Errore nell'aggiornare il profilo remoto"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Errore nell'inserire il profilo remoto"
@@ -6197,11 +6784,11 @@ msgstr "I tuoi messaggi inviati"
msgid "Tags in %s's notices"
msgstr "Etichette nei messaggi di %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Sconosciuto"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abbonamenti"
@@ -6209,31 +6796,32 @@ msgstr "Abbonamenti"
msgid "All subscriptions"
msgstr "Tutti gli abbonamenti"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abbonati"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Tutti gli abbonati"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID utente"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membro dal"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Media giornaliera"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Tutti i gruppi"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Nessun argomento return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Metodo non implementato"
@@ -6257,11 +6845,19 @@ msgstr "In evidenza"
msgid "Popular"
msgstr "Famosi"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Nessun argomento return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Ripetere questo messaggio?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Sì"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Ripeti questo messaggio"
@@ -6270,7 +6866,7 @@ msgstr "Ripeti questo messaggio"
msgid "Revoke the \"%s\" role from this user"
msgstr "Revoca il ruolo \"%s\" a questo utente"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Nessun utente singolo definito per la modalità single-user."
@@ -6368,6 +6964,52 @@ msgstr "Insieme delle etichette delle persone come etichettate"
msgid "None"
msgstr "Nessuno"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Questo server non è in grado di gestire caricamenti senza il supporto ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Manca il file del tema o il caricamento non è riuscito."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Salvataggio del tema non riuscito."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Tema non valido: struttura directory non corretta."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Il tema caricato è troppo grande, deve essere meno di %d byte non compresso."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "File di tema non valido: manca il file css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Il tema contiene file non o nomi di cartelle non validi. Utilizzare "
+"solamente caratteri ASCII, numeri, il trattino basso e il segno meno."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Il tema contiene file di tipo \".%s\" che non sono supportati."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Errore nell'aprire il file del tema."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Chi scrive più messaggi"
@@ -6396,89 +7038,108 @@ msgstr "Annulla l'abbonamento da questo utente"
msgid "Unsubscribe"
msgstr "Disabbonati"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "L'utente %s (%d) non ha un profilo."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Modifica immagine"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Azioni utente"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Eliminazione utente..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Modifica impostazioni del profilo"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Modifica"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Invia un messaggio diretto a questo utente"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Messaggio"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Modera"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Ruolo dell'utente"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Amministratore"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Moderatore"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "pochi secondi fa"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "circa un minuto fa"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "circa %d minuti fa"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "circa un'ora fa"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "circa %d ore fa"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "circa un giorno fa"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "circa %d giorni fa"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "circa un mese fa"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "circa %d mesi fa"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "circa un anno fa"
@@ -6492,7 +7153,7 @@ msgstr "%s non è un colore valido."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s non è un colore valido. Usa 3 o 6 caratteri esadecimali."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Messaggio troppo lungo: massimo %1$d caratteri, inviati %2$d."
diff --git a/locale/ja/LC_MESSAGES/statusnet.po b/locale/ja/LC_MESSAGES/statusnet.po
index 847f24c59..fab6b3d78 100644
--- a/locale/ja/LC_MESSAGES/statusnet.po
+++ b/locale/ja/LC_MESSAGES/statusnet.po
@@ -1,6 +1,6 @@
# Translation of StatusNet to Japanese
#
-# Author@translatewiki.net: Aotake
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: Fryed-peach
# Author@translatewiki.net: Sonoda
# Author@translatewiki.net: Whym
@@ -11,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:18+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:41+0000\n"
"Language-Team: Japanese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ja\n"
"X-Message-Group: out-statusnet\n"
@@ -24,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "アクセス"
@@ -75,85 +75,91 @@ msgstr "é–‰ã˜ã‚‰ã‚ŒãŸ"
msgid "Save access settings"
msgstr "アクセス設定ã®ä¿å­˜"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "ä¿å­˜"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+#, fuzzy
+msgid "No such page."
msgstr "ãã®ã‚ˆã†ãªãƒšãƒ¼ã‚¸ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s ã¨å‹äººã€ãƒšãƒ¼ã‚¸ %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s ã¨å‹äºº"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "%s ã®å‹äººã®ãƒ•ã‚£ãƒ¼ãƒ‰ (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "%s ã®å‹äººã®ãƒ•ã‚£ãƒ¼ãƒ‰ (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "%s ã®å‹äººã®ãƒ•ã‚£ãƒ¼ãƒ‰ (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "ã“れ㯠%s ã¨å‹äººã®ã‚¿ã‚¤ãƒ ãƒ©ã‚¤ãƒ³ã§ã™ã€‚ã¾ã èª°ã‚‚投稿ã—ã¦ã„ã¾ã›ã‚“。"
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,83 +169,86 @@ msgstr ""
"ã—ã¦ã¿ãŸã‚Šã€ä½•ã‹æŠ•ç¨¿ã—ã¦ã¿ã¾ã—ょã†ã€‚"
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"プロフィールã‹ã‚‰ [%1$s ã•ã‚“ã«åˆå›³](../%2$s) ã—ãŸã‚Šã€[知らã›ãŸã„ã“ã¨ã«ã¤ã„ã¦æŠ•"
"稿](%%%%action.newnotice%%%%?status_textarea=%3$s) ã—ãŸã‚Šã§ãã¾ã™ã€‚"
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"[アカウントを登録](%%%%action.register%%%%) ã—㦠%s ã•ã‚“ã«åˆå›³ã—ãŸã‚Šã€ãŠçŸ¥ã‚‰"
"ã›ã‚’é€ã£ã¦ã¿ã¾ã›ã‚“ã‹ã€‚"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "ã‚ãªãŸã¨å‹äºº"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "%2$s ã« %1$s ã¨å‹äººã‹ã‚‰ã®æ›´æ–°ãŒã‚ã‚Šã¾ã™ï¼"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API メソッドãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¯ POST ãŒå¿…è¦ã§ã™ã€‚"
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
+#, fuzzy
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"「deviceã€ã¨ã„ã†åå‰ã®å¼•æ•°ã‚’ã€æ¬¡ã®ä¸­ã‹ã‚‰å€¤ã‚’é¸ã‚“ã§ã€æŒ‡å®šã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™: "
"sms, im, none"
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "ユーザを更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
@@ -248,7 +257,7 @@ msgstr "ユーザを更新ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "ユーザã¯ãƒ—ロフィールをもã£ã¦ã„ã¾ã›ã‚“。"
@@ -258,9 +267,9 @@ msgid "Could not save profile."
msgstr "プロフィールをä¿å­˜ã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,46 +327,47 @@ msgstr "%s ã¸ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸"
msgid "All the direct messages sent to %s"
msgstr "%s ã¸é€ã£ãŸå…¨ã¦ã®ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "メッセージã®æœ¬æ–‡ãŒã‚ã‚Šã¾ã›ã‚“ï¼"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "é•·ã™ãŽã¾ã™ã€‚メッセージã¯æœ€å¤§ %d å­—ã¾ã§ã§ã™ã€‚"
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "å—ã‘å–り手ã®ãƒ¦ãƒ¼ã‚¶ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "å‹äººã§ãªã„ユーザã«ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "ãã®ï¼©ï¼¤ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "ã“ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã™ã§ã«ãŠæ°—ã«å…¥ã‚Šã§ã™ã€‚"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’作æˆã§ãã¾ã›ã‚“。"
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "ãã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ãŠæ°—ã«å…¥ã‚Šã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "ãŠæ°—ã«å…¥ã‚Šã‚’å–り消ã™ã“ã¨ãŒã§ãã¾ã›ã‚“。"
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "ユーザをフォローã§ãã¾ã›ã‚“ã§ã—ãŸ: ユーザãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
#: actions/apifriendshipscreate.php:118
@@ -374,8 +384,9 @@ msgstr "ユーザã®ãƒ•ã‚©ãƒ­ãƒ¼ã‚’åœæ­¢ã§ãã¾ã›ã‚“ã§ã—ãŸ: ユーザãŒè
msgid "You cannot unfollow yourself."
msgstr "自分自身をフォローåœæ­¢ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "ãµãŸã¤ã®ï¼©ï¼¤ã‹ã‚¹ã‚¯ãƒªãƒ¼ãƒ³ãƒãƒ¼ãƒ ãŒå¿…è¦ã§ã™ã€‚"
#: actions/apifriendshipsshow.php:134
@@ -386,117 +397,131 @@ msgstr "ソースユーザーを決定ã§ãã¾ã›ã‚“。"
msgid "Could not find target user."
msgstr "ターゲットユーザーを見ã¤ã‘られã¾ã›ã‚“。"
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"ニックãƒãƒ¼ãƒ ã«ã¯ã€å°æ–‡å­—アルファベットã¨æ•°å­—ã®ã¿ä½¿ç”¨ã§ãã¾ã™ã€‚スペースã¯ä½¿ç”¨"
"ã§ãã¾ã›ã‚“。"
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "ãã®ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ä»–ã®ã‚‚ã®ã‚’試ã—ã¦ã¿ã¦ä¸‹ã•ã„。"
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "有効ãªãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "ホームページã®URLãŒä¸é©åˆ‡ã§ã™ã€‚"
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "フルãƒãƒ¼ãƒ ãŒé•·ã™ãŽã¾ã™ã€‚(255å­—ã¾ã§ï¼‰"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "記述ãŒé•·ã™ãŽã¾ã™ã€‚(最長140字)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "場所ãŒé•·ã™ãŽã¾ã™ã€‚(255å­—ã¾ã§ï¼‰"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "別åãŒå¤šã™ãŽã¾ã™! 最大 %d。"
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
-#, php-format
-msgid "Invalid alias: \"%s\""
+#: actions/apigroupcreate.php:267
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\"."
msgstr "ä¸æ­£ãªåˆ¥å: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "別å \"%s\" ã¯æ—¢ã«ä½¿ç”¨ã•ã‚Œã¦ã„ã¾ã™ã€‚ä»–ã®ã‚‚ã®ã‚’試ã—ã¦ã¿ã¦ä¸‹ã•ã„。"
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "別åã¯ãƒ‹ãƒƒã‚¯ãƒãƒ¼ãƒ ã¨åŒã˜ã§ã¯ã„ã‘ã¾ã›ã‚“。"
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+#, fuzzy
+msgid "Group not found."
msgstr "グループãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "ã™ã§ã«ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã™ã€‚"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "管ç†è€…ã«ã‚ˆã£ã¦ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ロックã•ã‚Œã¦ã„ã¾ã™ã€‚"
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "ユーザ %1$s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %2$s ã«å‚加ã§ãã¾ã›ã‚“。"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "ユーザ %1$s をグループ %2$s ã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“。"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s ã®ã‚°ãƒ«ãƒ¼ãƒ—"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "グループ %s ã¯ãƒ¡ãƒ³ãƒãƒ¼"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s グループ"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "%s 上ã®ã‚°ãƒ«ãƒ¼ãƒ—"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ファイルアップロード"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "oauth_token パラメータã¯æä¾›ã•ã‚Œã¾ã›ã‚“ã§ã—ãŸã€‚"
@@ -506,17 +531,17 @@ msgid "Invalid token."
msgstr "ä¸æ­£ãªãƒˆãƒ¼ã‚¯ãƒ³ã€‚"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -549,12 +574,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "リクエストトークン%sã¯ã€æ‹’å¦ã•ã‚Œã¦ã€å–り消ã•ã‚Œã¾ã—ãŸã€‚"
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "予期ã›ã¬ãƒ•ã‚©ãƒ¼ãƒ é€ä¿¡ã§ã™ã€‚"
@@ -574,20 +602,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "アカウント"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "ニックãƒãƒ¼ãƒ "
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "パスワード"
@@ -603,11 +633,11 @@ msgstr "許å¯"
msgid "Allow or deny access to your account information."
msgstr "アカウント情報ã¸ã®ã‚¢ã‚¯ã‚»ã‚¹ã‚’許å¯ã™ã‚‹ã‹ã€ã¾ãŸã¯æ‹’絶ã—ã¦ãã ã•ã„。"
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "ã“ã®ãƒ¡ã‚½ãƒƒãƒ‰ã«ã¯ POST ã‹ DELETE ãŒå¿…è¦ã§ã™ã€‚"
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã‚’消ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
@@ -624,59 +654,63 @@ msgstr "ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã›ã¾ã›ã‚“。"
msgid "Already repeated that notice."
msgstr "ã™ã§ã«ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "ステータスを削除ã—ã¾ã—ãŸã€‚"
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "ãã®ï¼©ï¼¤ã§ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "é•·ã™ãŽã¾ã™ã€‚ã¤ã¶ã‚„ãã¯æœ€å¤§ 140 å­—ã¾ã§ã§ã™ã€‚"
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "ã¿ã¤ã‹ã‚Šã¾ã›ã‚“"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“。"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "ã¤ã¶ã‚„ã㯠URL ã‚’å«ã‚ã¦æœ€å¤§ %d å­—ã¾ã§ã§ã™ã€‚"
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "サãƒãƒ¼ãƒˆå¤–ã®å½¢å¼ã§ã™ã€‚"
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / %2$s ã‹ã‚‰ã®ãŠæ°—ã«å…¥ã‚Š"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s 㯠%2$s ã§ãŠæ°—ã«å…¥ã‚Šã‚’æ›´æ–°ã—ã¾ã—㟠/ %2$s。"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / %2$s ã«ã¤ã„ã¦æ›´æ–°"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%2$s ã‹ã‚‰ã‚¢ãƒƒãƒ—デートã«ç­”ãˆã‚‹ %1$s アップデート"
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s ã®ãƒ‘ブリックタイムライン"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "皆ã‹ã‚‰ã® %s アップデート!"
@@ -691,19 +725,19 @@ msgstr "%s ã¸ã®è¿”ä¿¡"
msgid "Repeats of %s"
msgstr "%s ã®è¿”ä¿¡"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "%s ã¨ã‚¿ã‚°ä»˜ã‘ã•ã‚ŒãŸã¤ã¶ã‚„ã"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "%2$s ã« %1$s ã«ã‚ˆã‚‹æ›´æ–°ãŒã‚ã‚Šã¾ã™ï¼"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "見ã¤ã‹ã‚Šã¾ã›ã‚“。"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API メソッドãŒå·¥äº‹ä¸­ã§ã™ã€‚"
#: actions/attachment.php:73
msgid "No such attachment."
@@ -724,8 +758,9 @@ msgstr "サイズãŒã‚ã‚Šã¾ã›ã‚“。"
msgid "Invalid size."
msgstr "ä¸æ­£ãªã‚µã‚¤ã‚ºã€‚"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "ã‚¢ãƒã‚¿ãƒ¼"
@@ -735,9 +770,9 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "自分ã®ã‚¢ãƒã‚¿ãƒ¼ã‚’アップロードã§ãã¾ã™ã€‚最大サイズã¯%sã§ã™ã€‚"
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr "åˆã£ã¦ã„るプロフィールã®ãªã„ユーザ"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -756,7 +791,7 @@ msgid "Preview"
msgstr "プレビュー"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "削除"
@@ -768,23 +803,28 @@ msgstr "アップロード"
msgid "Crop"
msgstr "切りå–ã‚Š"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "プロファイル記述ãŒã‚ã‚Šã¾ã›ã‚“。"
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "ã‚ãªãŸã®ã‚¢ãƒã‚¿ãƒ¼ã¨ãªã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’正方形ã§æŒ‡å®š"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "ファイルデータを紛失ã—ã¾ã—ãŸã€‚"
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒæ›´æ–°ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "ã‚¢ãƒã‚¿ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚"
@@ -792,11 +832,11 @@ msgstr "ã‚¢ãƒã‚¿ãƒ¼ãŒå‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚"
msgid "You already blocked that user."
msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ã¯ã™ã§ã«ãƒ–ロック済ã¿ã§ã™ã€‚"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "ユーザをブロック"
-#: actions/block.php:130
+#: actions/block.php:138
#, fuzzy
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
@@ -807,27 +847,44 @@ msgstr ""
"ãŸã‹ã‚‰ãƒ•ã‚©ãƒ­ãƒ¼ã‚’外ã•ã‚Œã‚‹ã§ã—ょã†ã€å°†æ¥ã€ã‚ãªãŸã«ãƒ•ã‚©ãƒ­ãƒ¼ã§ããªã„ã§ã€ã‚ãªãŸã¯"
"ã©ã‚“㪠@-返信 ã«ã¤ã„ã¦ã‚‚ãれらã‹ã‚‰é€šçŸ¥ã•ã‚Œãªã„ã§ã—ょã†ã€‚"
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "No"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブロックã™ã‚‹"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Yes"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブロックã™ã‚‹"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "ブロック情報ã®ä¿å­˜ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
@@ -840,8 +897,8 @@ msgstr "ブロック情報ã®ä¿å­˜ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "ãã®ã‚ˆã†ãªã‚°ãƒ«ãƒ¼ãƒ—ã¯ã‚ã‚Šã¾ã›ã‚“。"
@@ -871,8 +928,10 @@ msgstr "アンブロック"
msgid "Unblock this user"
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’アンブロックã™ã‚‹"
-#: actions/bookmarklet.php:50
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "投稿"
#: actions/confirmaddress.php:75
@@ -887,33 +946,43 @@ msgstr "確èªã‚³ãƒ¼ãƒ‰ãŒè¦‹ã¤ã‹ã‚Šã¾ã›ã‚“。"
msgid "That confirmation code is not for you!"
msgstr "ãã®ç¢ºèªã‚³ãƒ¼ãƒ‰ã¯ã‚ãªãŸã®ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“ï¼"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "ä¸æ˜Žãªã‚¢ãƒ‰ãƒ¬ã‚¹ã‚¿ã‚¤ãƒ— %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "ãã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«æ‰¿èªã•ã‚Œã¦ã„ã¾ã™ã€‚"
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "ユーザを更新ã§ãã¾ã›ã‚“"
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "メール承èªã‚’削除ã§ãã¾ã›ã‚“"
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "アドレスã®ç¢ºèª"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "アドレス \"%s\" ã¯ã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã¨ã—ã¦æ‰¿èªã•ã‚Œã¦ã„ã¾ã™ã€‚"
@@ -923,7 +992,7 @@ msgid "Conversation"
msgstr "会話"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "ã¤ã¶ã‚„ã"
@@ -942,7 +1011,7 @@ msgstr "ã“ã®ã‚¢ãƒ—リケーションã®ã‚ªãƒ¼ãƒŠãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "ã‚ãªãŸã®ã‚»ãƒƒã‚·ãƒ§ãƒ³ãƒˆãƒ¼ã‚¯ãƒ³ã«é–¢ã™ã‚‹å•é¡ŒãŒã‚ã‚Šã¾ã—ãŸã€‚"
@@ -960,21 +1029,23 @@ msgstr ""
"ã‚ãªãŸã¯æœ¬å½“ã«ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’削除ã—ãŸã„ã§ã™ã‹? ã“ã‚Œã¯ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ãªã—ã§ãƒ‡ãƒ¼ã‚¿"
"ベースã‹ã‚‰ãƒ¦ãƒ¼ã‚¶ã«é–¢ã™ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’クリアã—ã¾ã™ã€‚"
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "ã“ã®ã‚¢ãƒ—リケーションを削除ã—ãªã„ã§ãã ã•ã„"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "ã“ã®ã‚¢ãƒ—リケーションを削除"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "ログインã—ã¦ã„ã¾ã›ã‚“。"
@@ -999,11 +1070,13 @@ msgstr "ã¤ã¶ã‚„ã削除"
msgid "Are you sure you want to delete this notice?"
msgstr "本当ã«ã“ã®ã¤ã¶ã‚„ãを削除ã—ã¾ã™ã‹ï¼Ÿ"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "ã“ã®ã¤ã¶ã‚„ãを削除ã§ãã¾ã›ã‚“。"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "ã“ã®ã¤ã¶ã‚„ãを削除"
@@ -1027,58 +1100,70 @@ msgstr ""
"ã‚ãªãŸã¯æœ¬å½“ã«ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’削除ã—ãŸã„ã§ã™ã‹? ã“ã‚Œã¯ãƒãƒƒã‚¯ã‚¢ãƒƒãƒ—ãªã—ã§ãƒ‡ãƒ¼ã‚¿"
"ベースã‹ã‚‰ãƒ¦ãƒ¼ã‚¶ã«é–¢ã™ã‚‹ã™ã¹ã¦ã®ãƒ‡ãƒ¼ã‚¿ã‚’クリアã—ã¾ã™ã€‚"
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’削除"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "デザイン"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "ã“ã® StatusNet サイトã®ãƒ‡ã‚¶ã‚¤ãƒ³è¨­å®šã€‚"
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "ä¸æ­£ãªãƒ­ã‚´ URL"
-#: actions/designadminpanel.php:279
-#, php-format
-msgid "Theme not available: %s"
+#: actions/designadminpanel.php:322
+#, fuzzy, php-format
+msgid "Theme not available: %s."
msgstr "テーマãŒåˆ©ç”¨ã§ãã¾ã›ã‚“: %s"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "ロゴã®å¤‰æ›´"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "サイトロゴ"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "テーマ変更"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "サイトテーマ"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "サイトã®ãƒ†ãƒ¼ãƒž"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "サイトテーマ"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã®å¤‰æ›´"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1087,67 +1172,76 @@ msgstr ""
"ã“ã®ã‚µã‚¤ãƒˆç”¨ã«ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’アップロードã§ãã¾ã™ã€‚最大ファイルサ"
"イズ㯠%1$s。"
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "オン"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "オフ"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸ã®ã‚ªãƒ³ã¾ãŸã¯ã‚ªãƒ•ã€‚"
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "タイルãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ã‚¤ãƒ¡ãƒ¼ã‚¸"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "色ã®å¤‰æ›´"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "内容"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "サイドãƒãƒ¼"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "テキスト"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "リンク"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "デフォルトを使用"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "デフォルトデザインã«æˆ»ã™ã€‚"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "デフォルトã¸ãƒªã‚»ãƒƒãƒˆã™ã‚‹"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "ä¿å­˜"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "デザインã®ä¿å­˜"
@@ -1252,11 +1346,17 @@ msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’使ã£ã¦ã‚°ãƒ«ãƒ¼ãƒ—を編集ã—ã¾ã™ã€‚"
msgid "description is too long (max %d chars)."
msgstr "記述ãŒé•·ã™ãŽã¾ã™ã€‚(最長 %d 字)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "ä¸æ­£ãªåˆ¥å: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "グループを更新ã§ãã¾ã›ã‚“。"
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "別åを作æˆã§ãã¾ã›ã‚“。"
@@ -1264,31 +1364,43 @@ msgstr "別åを作æˆã§ãã¾ã›ã‚“。"
msgid "Options saved."
msgstr "オプションãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "メール設定"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "%%site.name%% ã‹ã‚‰ã®ãƒ¡ãƒ¼ãƒ«ã‚’管ç†ã€‚"
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ä½æ‰€"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "メールアドレス"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "ç¾åœ¨ç¢ºèªã•ã‚Œã¦ã„るメールアドレス。"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "削除"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1296,109 +1408,144 @@ msgstr ""
"ã“ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ‰¿èªå¾…ã¡ã§ã™ã€‚å—信ボックス(ã¨ã‚¹ãƒ‘ムボックス)ã«è¿½åŠ ã®æŒ‡ç¤ºãŒæ›¸"
"ã‹ã‚ŒãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒå±Šã„ã¦ã„ãªã„ã‹ç¢ºèªã—ã¦ãã ã•ã„。"
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "中止"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "メールアドレス"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "メールアドレスã€\"UserName@example.org\" ã®ã‚ˆã†ãª"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "追加"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "å…¥ã£ã¦ãるメール"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "æ–°ã—ã„ã¤ã¶ã‚„ã投稿ã«ã“ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¸ãƒ¡ãƒ¼ãƒ«ã™ã‚‹"
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "投稿ã®ãŸã‚ã®æ–°ã—ã„Eメールアドレスを作りã¾ã™; å¤ã„方をå–り消ã—ã¾ã™ã€‚"
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "New"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "設定"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "メールã§æ–°è¦ãƒ•ã‚©ãƒ­ãƒ¼ã®é€šçŸ¥ã‚’ç§ã«é€ã£ã¦ãã ã•ã„。"
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"ã ã‚Œã‹ãŒãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ç§ã®ã¤ã¶ã‚„ãを加ãˆãŸã‚‰ã€ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•ã„。"
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
"ã ã‚Œã‹ãŒãƒ—ライベート・メッセージをç§ã«é€ã‚‹ã¨ãã«ã¯ã€ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•"
"ã„。"
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "ã ã‚Œã‹ãŒ\"@-返信\"ã‚’ç§ã‚’é€ã‚‹ã¨ãã«ã¯ã€ãƒ¡ãƒ¼ãƒ«ã‚’ç§ã«é€ã£ã¦ãã ã•ã„ã€"
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "å‹é”ãŒç§ã«åˆå›³ã¨ãƒ¡ãƒ¼ãƒ«ã‚’é€ã‚‹ã“ã¨ã‚’許å¯ã™ã‚‹ã€‚"
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "メールã§ã¤ã¶ã‚„ãを投稿ã—ãŸã„。"
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "ç§ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ãŸã‚ã«MicroIDを発行ã—ã¦ãã ã•ã„。"
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "設定ãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "デザイン設定ãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "メールアドレスãŒã‚ã‚Šã¾ã›ã‚“。"
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "ãã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’æ­£è¦åŒ–ã§ãã¾ã›ã‚“"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "有効ãªãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "ã“ã‚Œã¯ã™ã§ã«ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã™ã€‚"
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "ã“ã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ—¢ã«ä»–ã®äººãŒä½¿ã£ã¦ã„ã¾ã™ã€‚"
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "承èªã‚³ãƒ¼ãƒ‰ã‚’追加ã§ãã¾ã›ã‚“"
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1407,43 +1554,56 @@ msgstr ""
"ムボックス)ã«ã‚³ãƒ¼ãƒ‰ã¨ãれをã©ã†ä½¿ã†ã®ã‹ã¨ã„ã†æŒ‡ç¤ºãŒå±Šã„ã¦ã„ãªã„ã‹ç¢ºèªã—ã¦ã"
"ã ã•ã„。"
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "承èªå¾…ã¡ã®ã‚‚ã®ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "ãã® IM アドレスã¯ä¸æ­£ã§ã™ã€‚"
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "承èªä½œæ¥­ãŒä¸­æ­¢ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "ã“ã‚Œã¯ã‚ãªãŸã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "アドレスã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "å…¥ã£ã¦ãるメールアドレスã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "ユーザレコードを更新ã§ãã¾ã›ã‚“。"
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "å…¥ã£ã¦ãるメールアドレスã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚"
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "æ–°ã—ã„å…¥ã£ã¦ãるメールアドレスãŒè¿½åŠ ã•ã‚Œã¾ã—ãŸã€‚"
@@ -1563,8 +1723,9 @@ msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
"リモートサービスã¯ã€ä¸æ˜Žãªãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® OMB プロトコルを使用ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "リモートプロファイル更新エラー"
#: actions/getfile.php:79
@@ -1596,13 +1757,13 @@ msgstr "ユーザã¯æ—¢ã«é»™ã£ã¦ã„ã¾ã™ã€‚"
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "プロファイル記述ãŒã‚ã‚Šã¾ã›ã‚“。"
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "ãã®ï¼©ï¼¤ã®ãƒ—ロファイルãŒã‚ã‚Šã¾ã›ã‚“。"
@@ -1623,11 +1784,11 @@ msgstr "ユーザã¯ã™ã§ã«ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ロックã•ã‚Œã¦ã„ã¾ã™ã€‚
msgid "User is not a member of group."
msgstr "ユーザã¯ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "グループã‹ã‚‰ãƒ¦ãƒ¼ã‚¶ã‚’ブロック"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1637,15 +1798,17 @@ msgstr ""
"本当ã«ãƒ¦ãƒ¼ã‚¶ %1$s をグループ %2$s ã‹ã‚‰ãƒ–ロックã—ã¾ã™ã‹? 彼らã¯ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰å‰Š"
"除ã•ã‚Œã‚‹ã€æŠ•ç¨¿ã§ããªã„ã€ã‚°ãƒ«ãƒ¼ãƒ—をフォローã§ããªããªã‚Šã¾ã™ã€‚"
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブロックã—ãªã„"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブロック"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "グループã‹ã‚‰ã®ãƒ–ロックユーザã®ãƒ‡ãƒ¼ã‚¿ãƒ™ãƒ¼ã‚¹ã‚¨ãƒ©ãƒ¼"
@@ -1690,10 +1853,6 @@ msgstr ""
"ã‚ãªãŸã®ã‚°ãƒ«ãƒ¼ãƒ—用ã«ãƒ­ã‚´ã‚¤ãƒ¡ãƒ¼ã‚¸ã‚’アップロードã§ãã¾ã™ã€‚最大ファイルサイズ㯠"
"%s。"
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "åˆã£ã¦ã„るプロフィールã®ãªã„ユーザ"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "ロゴã¨ãªã‚‹ã‚¤ãƒ¡ãƒ¼ã‚¸ã®æ­£æ–¹å½¢ã‚’é¸æŠžã€‚"
@@ -1724,34 +1883,38 @@ msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¦ãƒ¼ã‚¶ã®ãƒªã‚¹ãƒˆã€‚"
msgid "Admin"
msgstr "管ç†è€…"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "ブロック"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "ユーザをグループã®ç®¡ç†è€…ã«ã™ã‚‹"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "管ç†è€…ã«ã™ã‚‹"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’管ç†è€…ã«ã™ã‚‹"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s ã®ã‚¿ã‚¤ãƒ ãƒ©ã‚¤ãƒ³"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "%2$s 上㮠%1$s ã®ãƒ¡ãƒ³ãƒãƒ¼ã‹ã‚‰æ›´æ–°ã™ã‚‹"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "グループ"
@@ -1776,7 +1939,7 @@ msgstr ""
"ã†ã‹[探ã—ã¦ã¿ã‚‹](%%%%action.groupsearch%%%%)ã‹ã€ã‚ãªãŸè‡ªèº«ã§[始ã‚ã¦ãã ã•ã„!]"
"(%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "æ–°ã—ã„グループを作æˆ"
@@ -1828,11 +1991,15 @@ msgstr "ユーザã¯ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ãƒ–ロックã•ã‚Œã¦ã„ã¾ã›ã‚“。"
msgid "Error removing the block."
msgstr "ブロックã®å‰Šé™¤ã‚¨ãƒ©ãƒ¼"
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM設定"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1841,15 +2008,24 @@ msgstr ""
"Jabber/GTalk [instant messages](%%doc.im%%) 経由ã§é€šçŸ¥ã®é€ä¿¡ã€å—ä¿¡ãŒå¯èƒ½ã§"
"ã™ã€‚下ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’設定ã—ã¦ä¸‹ã•ã„。"
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM ãŒåˆ©ç”¨ä¸å¯ã€‚"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IMアドレス"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "確èªã•ã‚ŒãŸæœ€æ–°ã®ã€€Jabber/GTakk アドレス"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1858,11 +2034,9 @@ msgstr ""
"ã“ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã¯æ‰¿èªå¾…ã¡ã§ã™ã€‚Jabber ã‹ Gtalk ã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã§è¿½åŠ ã®æŒ‡ç¤ºãŒæ›¸ã‹ã‚Œ"
"ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’確èªã—ã¦ãã ã•ã„。(%s ã‚’å‹äººãƒªã‚¹ãƒˆã«è¿½åŠ ã—ã¾ã—ãŸã‹ï¼Ÿ)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IMアドレス"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1871,45 +2045,67 @@ msgstr ""
"\"UserName@example.org\" ã¨ã„ã£ãŸ Jabber ã¾ãŸã¯ GTalk ã®ã‚¢ãƒ‰ãƒ¬ã‚¹ã€‚ã¾ãšã€%s ã‚’"
"IMクライアントやGTalkã«è¿½åŠ ã—ã¦ä¸‹ã•ã„。"
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "設定"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Jabber/GTalk ã§ç§ã«é€šçŸ¥ã‚’é€ã£ã¦ä¸‹ã•ã„。"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Jabber/GTalkã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ãŒå¤‰æ›´ã•ã‚ŒãŸæ™‚ã«é€šçŸ¥ã‚’é€ã‚‹ã€‚"
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Jabber/GTalkを通ã—ã¦å›žç­”ã‚’ã€ç§ãŒãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ãªã„人々ã‹ã‚‰ç§ã«é€ã£ã¦ãã ã•"
"ã„。"
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "ç§ã®Jabber/GTalkアドレスã®ãŸã‚ã«MicroIDを発行ã—ã¦ãã ã•ã„。"
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "設定ãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Jabbar ID ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "ãã® Jabbar ID ã‚’æ­£è¦åŒ–ã§ãã¾ã›ã‚“"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "有効㪠Jabber ID ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "ãã® Jabber ID ã¯æ—¢ã«ã‚ãªãŸã®ã‚‚ã®ã§ã™ã€‚"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID jã¯æ—¢ã«åˆ¥ã®ãƒ¦ãƒ¼ã‚¶ãŒä½¿ç”¨ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1918,10 +2114,35 @@ msgstr ""
"承èªã‚³ãƒ¼ãƒ‰ã‚’入力ã•ã‚ŒãŸ IM アドレスã«é€ä¿¡ã—ã¾ã—ãŸã€‚ã‚ãªãŸã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚Œã‚‹"
"よã†ã«ã™ã‚‹ã«ã¯%sを承èªã—ã¦ãã ã•ã„。"
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "ãã® IM アドレスã¯ä¸æ­£ã§ã™ã€‚"
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "メール承èªã‚’削除ã§ãã¾ã›ã‚“"
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "承èªä½œæ¥­ãŒä¸­æ­¢ã•ã‚Œã¾ã—ãŸã€‚"
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "ãã® Jabber ID ã¯ã‚ãªãŸã®ã‚‚ã®ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "アドレスã¯å‰Šé™¤ã•ã‚Œã¾ã—ãŸã€‚"
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1942,8 +2163,8 @@ msgid "Invites have been disabled."
msgstr "招待ã¯ç„¡åŠ¹ã«ã•ã‚Œã¾ã—ãŸã€‚"
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "ä»–ã®ãƒ¦ãƒ¼ã‚¶ãŒ%sを使用ã™ã‚‹ã‚ˆã†èª˜ã†ãŸã‚ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: actions/invite.php:72
@@ -1963,7 +2184,9 @@ msgstr "æ–°ã—ã„ユーザを招待"
msgid "You are already subscribed to these users:"
msgstr "ã™ã§ã«ã“れらã®ãƒ¦ãƒ¼ã‚¶ã‚’フォローã—ã¦ã„ã¾ã™:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2016,12 +2239,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "投稿"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s ãŒã‚ãªãŸã‚’ %2$s ã¸æ‹›å¾…ã—ã¾ã—ãŸ"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2087,7 +2312,9 @@ msgstr "グループã«å…¥ã‚‹ãŸã‚ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ãªã‘ã‚Œã°ãªã‚Šã¾ã›
msgid "No nickname or ID."
msgstr "ニックãƒãƒ¼ãƒ ãŒã‚ã‚Šã¾ã›ã‚“。"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %2$s ã«å‚加ã—ã¾ã—ãŸ"
@@ -2096,48 +2323,50 @@ msgstr "%1$s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %2$s ã«å‚加ã—ã¾ã—ãŸ"
msgid "You must be logged in to leave a group."
msgstr "グループã‹ã‚‰é›¢ã‚Œã‚‹ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "ã‚ãªãŸã¯ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %2$s ã«æ®‹ã‚Šã¾ã—ãŸã€‚"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "æ—¢ã«ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "ユーザåã¾ãŸã¯ãƒ‘スワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "ユーザ設定エラー。 ã‚ãªãŸã¯ãŸã¶ã‚“承èªã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "ログイン"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "サイトã¸ãƒ­ã‚°ã‚¤ãƒ³"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "ログイン状態をä¿æŒ"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "以é™ã¯è‡ªå‹•çš„ã«ãƒ­ã‚°ã‚¤ãƒ³ã™ã‚‹ã€‚共用コンピューターã§ã¯é¿ã‘ã¾ã—ょã†ï¼"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "パスワードを紛失ã€å¿˜ã‚ŒãŸï¼Ÿ"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2145,11 +2374,15 @@ msgstr ""
"セキュリティー上ã®ç†ç”±ã«ã‚ˆã‚Šã€è¨­å®šã‚’変更ã™ã‚‹å‰ã«ãƒ¦ãƒ¼ã‚¶åã¨ãƒ‘スワードを入力ã—"
"ã¦ä¸‹ã•ã„。"
-#: actions/login.php:270
-#, php-format
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "ユーザåã¨ãƒ‘スワードã§ãƒ­ã‚°ã‚¤ãƒ³"
+
+#: actions/login.php:295
+#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"ユーザåã¨ãƒ‘スワードã§ã€ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ãã ã•ã„。 ã¾ã ãƒ¦ãƒ¼ã‚¶åã‚’æŒã£ã¦ã„ã¾ã›ã‚“"
"ã‹? æ–°ã—ã„アカウントを [登録](%%action.register%%)。"
@@ -2174,7 +2407,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "%1$s をグループ %2$s ã®ç®¡ç†è€…ã«ã™ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“"
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "ç¾åœ¨ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹ã¯ã‚ã‚Šã¾ã›ã‚“"
#: actions/newapplication.php:52
@@ -2209,12 +2443,12 @@ msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’使ã£ã¦æ–°ã—ã„グループを作æˆã—ã¾ã™ã€‚
msgid "New message"
msgstr "æ–°ã—ã„メッセージ"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "ã“ã®ãƒ¦ãƒ¼ã‚¶ã«ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã“ã¨ã¯ã§ãã¾ã›ã‚“。"
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "コンテンツãŒã‚ã‚Šã¾ã›ã‚“ï¼"
@@ -2222,7 +2456,7 @@ msgstr "コンテンツãŒã‚ã‚Šã¾ã›ã‚“ï¼"
msgid "No recipient specified."
msgstr "å—å–人ãŒæ›¸ã‹ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2237,7 +2471,7 @@ msgstr "メッセージをé€ã‚Šã¾ã—ãŸ"
msgid "Direct message to %s sent."
msgstr "ダイレクトメッセージを %s ã«é€ã‚Šã¾ã—ãŸ"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax エラー"
@@ -2245,7 +2479,7 @@ msgstr "Ajax エラー"
msgid "New notice"
msgstr "æ–°ã—ã„ã¤ã¶ã‚„ã"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "ã¤ã¶ã‚„ãを投稿ã—ã¾ã—ãŸ"
@@ -2295,8 +2529,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "\"%2$s\" 上ã®æ¤œç´¢èªž \"$1$s\" ã«ä¸€è‡´ã™ã‚‹ã™ã¹ã¦ã®æ›´æ–°"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"ã“ã®ãƒ¦ãƒ¼ã‚¶ã¯ã€åˆå›³ã‚’許å¯ã—ã¦ã„ãªã„ã‹ã€ç¢ºèªã•ã‚Œã¦ã„ãŸçŠ¶æ…‹ã§ãªã„ã‹ã€ãƒ¡ãƒ¼ãƒ«è¨­å®š"
"ã‚’ã—ã¦ã„ã¾ã›ã‚“。"
@@ -2339,11 +2574,11 @@ msgid "You are not a user of that application."
msgstr "ã‚ãªãŸã¯ãã®ã‚¢ãƒ—リケーションã®ãƒ¦ãƒ¼ã‚¶ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, fuzzy, php-format
+msgid "Unable to revoke access for app: %s."
msgstr "アプリケーションã®ãŸã‚ã®å–消ã—アクセスãŒã§ãã¾ã›ã‚“: "
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
"ã‚ãªãŸã¯ã€ã©ã‚“ãªã‚¢ãƒ—リケーションもã‚ãªãŸã®ã‚¢ã‚«ã‚¦ãƒ³ãƒˆã‚’使用ã™ã‚‹ã®ã‚’èªå¯ã—ã¦ã„"
@@ -2353,25 +2588,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr "開発者ã¯å½¼ã‚‰ã®ã‚¢ãƒ—リケーションã®ãŸã‚ã«ç™»éŒ²è¨­å®šã‚’編集ã§ãã¾ã™ "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "ã¤ã¶ã‚„ãã«ã¯ãƒ—ロファイルã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
-msgstr "%2$s ã«ãŠã‘ã‚‹ %1$ ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹"
+msgstr "%2$s ã«ãŠã‘ã‚‹ %1$s ã®ã‚¹ãƒ†ãƒ¼ã‚¿ã‚¹"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "内容種別 "
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "ã ã‘ "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "サãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ãªã„データ形å¼ã€‚"
@@ -2476,7 +2717,7 @@ msgid "6 or more characters"
msgstr "6文字以上"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "パスワード確èª"
@@ -2488,11 +2729,11 @@ msgstr "上ã¨åŒã˜ãƒ‘スワード"
msgid "Change"
msgstr "変更"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "パスワードã¯6文字以上ã«ã™ã‚‹å¿…è¦ãŒã‚ã‚Šã¾ã™ã€‚"
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "パスワードãŒä¸€è‡´ã—ã¾ã›ã‚“。"
@@ -2504,7 +2745,7 @@ msgstr "å¤ã„パスワードãŒé–“é•ã£ã¦ã„ã¾ã™ã€‚"
msgid "Error saving user; invalid."
msgstr "ユーザä¿å­˜ã‚¨ãƒ©ãƒ¼; ä¸æ­£ãªãƒ¦ãƒ¼ã‚¶"
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "æ–°ã—ã„パスワードをä¿å­˜ã§ãã¾ã›ã‚“。"
@@ -2513,7 +2754,7 @@ msgid "Password saved."
msgstr "パスワードãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "パス"
@@ -2522,23 +2763,23 @@ msgid "Path and server settings for this StatusNet site."
msgstr "パス㨠StatusNet サイトã®ã‚µãƒ¼ãƒãƒ¼è¨­å®š"
#: actions/pathsadminpanel.php:157
-#, php-format
-msgid "Theme directory not readable: %s"
+#, fuzzy, php-format
+msgid "Theme directory not readable: %s."
msgstr "テーマディレクトリãŒèª­ã¿è¾¼ã‚ã¾ã›ã‚“: %s"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
msgstr "ã‚¢ãƒã‚¿ãƒ¼ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã§ãã¾ã›ã‚“: %s"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
msgstr "ãƒãƒƒã‚¯ã‚°ãƒ©ã‚¦ãƒ³ãƒ‰ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã«æ›¸ãè¾¼ã¿ã§ãã¾ã›ã‚“ : %s"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
msgstr "場所ディレクトリãŒèª­ã¿è¾¼ã‚ã¾ã›ã‚“: %s"
#: actions/pathsadminpanel.php:183
@@ -2678,18 +2919,19 @@ msgstr ""
msgid "People search"
msgstr "ピープルサーãƒ"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "æ­£ã—ã„ã‚¿ã‚°ã§ã¯ã‚ã‚Šã¾ã›ã‚“: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "ユーザ自身ãŒã¤ã‘ãŸã‚¿ã‚° %1$s - ページ %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "ä¸æ­£ãªã¤ã¶ã‚„ã内容"
#: actions/postnotice.php:101
@@ -2717,42 +2959,43 @@ msgstr "プロファイル情報"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64文字ã®ã€å°æ–‡å­—アルファベットã‹æ•°å­—ã§ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚„å¥èª­ç‚¹ã¯é™¤ã"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "フルãƒãƒ¼ãƒ "
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "ホームページ"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "ホームページã€ãƒ–ログã€ãƒ—ロファイルã€ãã®ä»–サイト㮠URL"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "%d字以内ã§è‡ªåˆ†è‡ªèº«ã¨è‡ªåˆ†ã®èˆˆå‘³ã«ã¤ã„ã¦æ›¸ã„ã¦ãã ã•ã„"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "自分自身ã¨è‡ªåˆ†ã®èˆˆå‘³ã«ã¤ã„ã¦æ›¸ã„ã¦ãã ã•ã„"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "自己紹介"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "場所"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "自分ã®ã„る場所。例:「都市, 都é“府県 (ã¾ãŸã¯åœ°åŸŸ), 国ã€"
@@ -2762,7 +3005,7 @@ msgstr "ã¤ã¶ã‚„ãを投稿ã™ã‚‹ã¨ãã«ã¯ç§ã®ç¾åœ¨ã®å ´æ‰€ã‚’共有ã—
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "ã‚¿ã‚°"
@@ -2794,7 +3037,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "自分をフォローã—ã¦ã„る者を自動的ã«ãƒ•ã‚©ãƒ­ãƒ¼ã™ã‚‹ (BOTã«æœ€é©)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "自己紹介ãŒé•·ã™ãŽã¾ã™ (最長140文字)。"
@@ -2834,8 +3077,8 @@ msgid "Settings saved."
msgstr "設定ãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
#: actions/public.php:83
-#, php-format
-msgid "Beyond the page limit (%s)"
+#, fuzzy, php-format
+msgid "Beyond the page limit (%s)."
msgstr "ページ制é™ã‚’超ãˆã¾ã—㟠(%s)"
#: actions/public.php:92
@@ -3005,7 +3248,7 @@ msgstr "パスワードをリセット"
msgid "Recover password"
msgstr "パスワードを回復"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "パスワード回復ãŒãƒªã‚¯ã‚¨ã‚¹ãƒˆã•ã‚Œã¾ã—ãŸ"
@@ -3025,125 +3268,142 @@ msgstr "リセット"
msgid "Enter a nickname or email address."
msgstr "ニックãƒãƒ¼ãƒ ã‹ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‚’入力ã—ã¦ãã ã•ã„。"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "ãã®ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹ãƒ¦ãƒ¼ã‚¶åã‚’ã‚‚ã£ã¦ã„るユーザãŒã‚ã‚Šã¾ã›ã‚“。"
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "ãã®ãƒ¦ãƒ¼ã‚¶ã«ã¯ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã®ç™»éŒ²ãŒã‚ã‚Šã¾ã›ã‚“。"
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "アドレス確èªä¿å­˜ã‚¨ãƒ©ãƒ¼"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr "登録ã•ã‚ŒãŸãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã«ãƒ‘スワードã®å›žå¾©æ–¹æ³•ã‚’ãŠé€ã‚Šã—ã¾ã—ãŸã€‚"
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "予期ã›ã¬ãƒ‘スワードã®ãƒªã‚»ãƒƒãƒˆã§ã™ã€‚"
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "パスワードã¯6字以上ã§ãªã‘ã‚Œã°ã„ã‘ã¾ã›ã‚“。"
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "パスワードã¨ç¢ºèªãŒä¸€è‡´ã—ã¾ã›ã‚“。"
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "ユーザ設定エラー"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "æ–°ã—ã„パスワードã®ä¿å­˜ã«æˆåŠŸã—ã¾ã—ãŸã€‚ログインã—ã¦ã„ã¾ã™ã€‚"
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "ã™ã¿ã¾ã›ã‚“ã€æ‹›å¾…ã•ã‚ŒãŸäººã€…ã ã‘ãŒç™»éŒ²ã§ãã¾ã™ã€‚"
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "ã™ã¿ã¾ã›ã‚“ã€ä¸æ­£ãªæ‹›å¾…コード。"
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "登録æˆåŠŸ"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "登録"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "登録ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "ライセンスã«åŒæ„é ‚ã‘ãªã„å ´åˆã¯ç™»éŒ²ã§ãã¾ã›ã‚“。"
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "メールアドレスãŒæ—¢ã«å­˜åœ¨ã—ã¾ã™ã€‚"
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "ä¸æ­£ãªãƒ¦ãƒ¼ã‚¶åã¾ãŸã¯ãƒ‘スワード。"
-#: actions/register.php:343
+#: actions/register.php:350
+#, fuzzy
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã§æ–°ã—ã„アカウントを作æˆã§ãã¾ã™ã€‚ 次ã«ã¤ã¶ã‚„ãを投稿ã—ã¦ã€å‹äººã‚„"
"åŒåƒšã«ãƒªãƒ³ã‚¯ã§ãã¾ã™ã€‚ "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64文字ã®ã€å°æ–‡å­—アルファベットã‹æ•°å­—ã§ã€ã‚¹ãƒšãƒ¼ã‚¹ã‚„å¥èª­ç‚¹ã¯é™¤ã。必須ã§ã™ã€‚"
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6文字以上。必須ã§ã™ã€‚"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "上ã®ãƒ‘スワードã¨åŒã˜ã§ã™ã€‚ 必須。"
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "メール"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "æ›´æ–°ã€ã‚¢ãƒŠã‚¦ãƒ³ã‚¹ã€ãƒ‘スワードリカãƒãƒªãƒ¼ã§ã®ã¿ä½¿ç”¨ã•ã‚Œã¾ã™ã€‚"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "é•·ã„åå‰"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "次ã®ä¸‹ã§ãƒ†ã‚­ã‚¹ãƒˆåŠã³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’利用å¯èƒ½ "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr "個人情報を除ã: パスワードã€ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã€IMアドレスã€é›»è©±ç•ªå·"
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3176,7 +3436,7 @@ msgstr ""
"å‚加ã—ã¦ãã ã•ã£ã¦ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚ç§ãŸã¡ã¯ã‚ãªãŸãŒã“ã®ã‚µãƒ¼ãƒ“スを楽ã—ã‚“"
"ã§ä½¿ã£ã¦ãれるã“ã¨ã‚’願ã£ã¦ã„ã¾ã™ã€‚"
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3221,7 +3481,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "プロファイルサービスã¾ãŸã¯ãƒžã‚¤ã‚¯ãƒ­ãƒ–ロギングサービスã®URL"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "フォロー"
@@ -3260,7 +3520,7 @@ msgstr "自分ã®ã¤ã¶ã‚„ãã¯ç¹°ã‚Šè¿”ã›ã¾ã›ã‚“。"
msgid "You already repeated that notice."
msgstr "ã™ã§ã«ãã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "ç¹°ã‚Šè¿”ã•ã‚ŒãŸ"
@@ -3295,10 +3555,10 @@ msgid "Replies feed for %s (Atom)"
msgstr "%s ã®è¿”信フィード (Atom)"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"ã“れ㯠%1$s ã¸ã®è¿”信を表示ã—ãŸã‚¿ã‚¤ãƒ ãƒ©ã‚¤ãƒ³ã§ã™ã€ã—ã‹ã— %2$s ã¯ã¾ã ã¤ã¶ã‚„ãã‚’"
"å—ã‘å–ã£ã¦ã„ã¾ã›ã‚“。"
@@ -3313,10 +3573,10 @@ msgstr ""
"ループã«åŠ ã‚ã‚‹](%%action.groups%%)ã“ã¨ãŒã§ãã¾ã™ã€‚"
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"ã‚ãªãŸã¯ [%1$s ã«åˆå›³](../%2$s) ã™ã‚‹ã‹ã€[ãã®äººå®›ã¦ã«ä½•ã‹ã‚’投稿](%%%%action."
"newnotice%%%%?status_textarea=%3$s)ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
@@ -3336,7 +3596,7 @@ msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã§ãƒ¦ãƒ¼ã‚¶ã‚’黙らã›ã‚‹ã“ã¨ãŒã§ãã¾
msgid "User doesn't have this role."
msgstr "åˆã£ã¦ã„るプロフィールã®ãªã„ユーザ"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3350,7 +3610,7 @@ msgstr "ユーザã¯ã™ã§ã«ã‚µãƒ³ãƒ‰ãƒœãƒƒã‚¯ã‚¹ã§ã™ã€‚"
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "セッション"
@@ -3387,26 +3647,30 @@ msgstr "!!アプリケーションを見るãŸã‚ã«ã¯ãƒ­ã‚°ã‚¤ãƒ³ã—ã¦ã„ãªã
msgid "Application profile"
msgstr "アプリケーションプロファイル"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "アイコン"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "åå‰"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "組織"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "概è¦"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "統計データ"
@@ -3494,20 +3758,20 @@ msgstr ""
"ã™ã‚‹ã‹ã€ã¾ãŸã¯ãれらã®ä¸Šã§ã‚¹ãƒãƒƒãƒˆãƒ©ã‚¤ãƒˆã‚’ã¯ã˜ã„ã¦ãã ã•ã„。"
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s ã¯ã¾ã å½¼ã®ãŠæ°—ã«å…¥ã‚Šã«å°‘ã—ã®ã¤ã¶ã‚„ãも加ãˆã¦ã„ã¾ã›ã‚“。 彼らãŒãŠæ°—ã«å…¥ã‚Šã«"
"加ãˆã‚‹ã“ã¨ãŠã‚‚ã—ã‚ã„ã‚‚ã®ã‚’投稿ã—ã¦ãã ã•ã„:)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s ã¯ã¾ã ãŠæ°—ã«å…¥ã‚Šã«å°‘ã—ã®ã¤ã¶ã‚„ãも加ãˆã¦ã„ã¾ã›ã‚“。 ãªãœ [アカウント登録](%"
"%%%action.register%%%%) ã—ãªã„ã®ã§ã™ã‹ã€‚ãã—ã¦ã€å½¼ã‚‰ãŒãŠæ°—ã«å…¥ã‚Šã«åŠ ãˆã‚‹ãŠã‚‚"
@@ -3527,67 +3791,67 @@ msgstr "%s グループ"
msgid "%1$s group, page %2$d"
msgstr "%1$s グループã€ãƒšãƒ¼ã‚¸ %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "グループプロファイル"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "ノート"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "別å"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "グループアクション"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "%s グループã®ã¤ã¶ã‚„ãフィード (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "%s グループ㮠FOAF"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "メンãƒãƒ¼"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(ãªã—)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "å…¨ã¦ã®ãƒ¡ãƒ³ãƒãƒ¼"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "作æˆæ—¥"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3602,7 +3866,7 @@ msgstr ""
"ã™ã‚‹çŸ­ã„メッセージを共有ã—ã¾ã™ã€‚[今ã™ãå‚加](%%%%action.register%%%%) ã—ã¦ã“"
"ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ä¸€å“¡ã«ãªã‚Šã¾ã—ょã†! ([ã‚‚ã£ã¨èª­ã‚€](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3615,7 +3879,7 @@ msgstr ""
"wikipedia.org/wiki/Micro-blogging) サービス。メンãƒãƒ¼ã¯å½¼ã‚‰ã®æš®ã‚‰ã—ã¨èˆˆå‘³ã«é–¢"
"ã™ã‚‹çŸ­ã„メッセージを共有ã—ã¾ã™ã€‚"
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "管ç†è€…"
@@ -3690,10 +3954,10 @@ msgstr ""
"ã„ã¾ã¯å§‹ã‚る良ã„時ã§ã—ょã†:)"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"ã‚ãªãŸã¯ã€%1$s ã«åˆå›³ã™ã‚‹ã‹ã€[ã¾ãŸã¯ãã®äººå®›ã«ä½•ã‹ã‚’投稿](%%%%action."
"newnotice%%%%?status_textarea=%2$s) ã™ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
@@ -3755,11 +4019,13 @@ msgid "Unknown language \"%s\"."
msgstr "ä¸æ˜Žãªè¨€èªž \"%s\""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+#, fuzzy
+msgid "Minimum text limit is 0 (unlimited)."
msgstr "最å°ã®ãƒ†ã‚­ã‚¹ãƒˆåˆ¶é™ã¯140å­—ã§ã™ã€‚"
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+#, fuzzy
+msgid "Dupe limit must be one or more seconds."
msgstr "デュープ制é™ã¯1秒以上ã§ãªã‘ã‚Œã°ãªã‚Šã¾ã›ã‚“。"
#: actions/siteadminpanel.php:221
@@ -3856,7 +4122,7 @@ msgid "Unable to save site notice."
msgstr "ã‚ãªãŸã®ãƒ‡ã‚¶ã‚¤ãƒ³è¨­å®šã‚’ä¿å­˜ã§ãã¾ã›ã‚“。"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3873,45 +4139,75 @@ msgstr ""
msgid "Save site notice"
msgstr "サイトã¤ã¶ã‚„ã"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS 設定"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"ã‚ãªãŸã¯ %%site.name%% ã‹ã‚‰ãƒ¡ãƒ¼ãƒ«ã§SMSメッセージをå—ã‘å–ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IMアドレス"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "ç¾åœ¨ã®ç¢ºèªã•ã‚ŒãŸ SMS å¯èƒ½ãªé›»è©±ç•ªå·ã€‚"
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "ã“ã®é›»è©±ç•ªå·ã¯ç¢ºèªå¾…ã¡ã§ã™ã€‚"
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "確èªã‚³ãƒ¼ãƒ‰"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "ã‚ãªãŸãŒã‚ãªãŸã®é›»è©±ã§å—ã‘å–ã£ãŸã‚³ãƒ¼ãƒ‰ã‚’入れã¦ãã ã•ã„。"
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "パスワード確èª"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "SMS 電話番å·"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "電話番å·ã€å¥èª­ç‚¹ã¾ãŸã¯ã‚¹ãƒšãƒ¼ã‚¹ãŒãªã„ã€å¸‚街番å·ä»˜ã"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "設定"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3919,23 +4215,34 @@ msgstr ""
"SMSを通ã—ã¦ã¤ã¶ã‚„ãã‚’ç§ã«é€ã£ã¦ãã ã•ã„; ç§ã¯ã€ç§ã®ã‚­ãƒ£ãƒªã‚¢ã‹ã‚‰æ³•å¤–ãªæ–™é‡‘を被"
"ã‚‹ã‹ã‚‚ã—ã‚Œãªã„ã®ã‚’ç†è§£ã—ã¦ã„ã¾ã™ã€‚"
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "設定ãŒä¿å­˜ã•ã‚Œã¾ã—ãŸã€‚"
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "電話番å·ãŒã‚ã‚Šã¾ã›ã‚“。"
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "キャリアãŒé¸æŠžã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "ã“ã‚Œã¯ã™ã§ã«ã‚ãªãŸã®é›»è©±ç•ªå·ã§ã™ã€‚"
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "ã“ã®é›»è©±ç•ªå·ã¯ã™ã§ã«ä»–ã®ãƒ¦ãƒ¼ã‚¶ã«ä½¿ã‚ã‚Œã¦ã„ã¾ã™ã€‚"
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3943,23 +4250,42 @@ msgstr ""
"ã‚ãªãŸãŒåŠ ãˆãŸé›»è©±ç•ªå·ã«ç¢ºèªã‚³ãƒ¼ãƒ‰ã‚’é€ã‚Šã¾ã—ãŸã€‚ ã©ã†ãれを使用ã™ã‚‹ã‹ã«é–¢ã™ã‚‹"
"コードã¨æŒ‡ç¤ºã®ãŸã‚ã«é›»è©±ã‚’ãƒã‚§ãƒƒã‚¯ã—ã¦ãã ã•ã„。"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "ãã‚Œã¯é–“é•ã£ãŸç¢ºèªç•ªå·ã§ã™ã€‚"
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "承èªä½œæ¥­ãŒä¸­æ­¢ã•ã‚Œã¾ã—ãŸã€‚"
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "ãã‚Œã¯ã‚ãªãŸã®é›»è©±ç•ªå·ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS 電話番å·"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "æºå¸¯é›»è©±ä¼šç¤¾"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "キャリアé¸æŠž"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3969,13 +4295,14 @@ msgstr ""
"載ã•ã‚Œã¦ã„ãªã„キャリアを知ã£ã¦ã„ã‚‹ãªã‚‰ã€ãƒ¡ãƒ¼ãƒ«ã‚’é€ã£ã¦ã€%sã§ç§ãŸã¡ã«çŸ¥ã‚‰ã›ã¦"
"ãã ã•ã„。"
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "コードãŒå…¥åŠ›ã•ã‚Œã¦ã„ã¾ã›ã‚“"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "スナップショット"
@@ -3997,7 +4324,7 @@ msgid "Invalid snapshot report URL."
msgstr "ä¸æ­£ãªã‚¹ãƒŠãƒƒãƒ—ショットレãƒãƒ¼ãƒˆURL。"
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4037,8 +4364,8 @@ msgstr "サイト設定ã®ä¿å­˜"
msgid "You are not subscribed to that profile."
msgstr "ã‚ãªãŸã¯ãã®ãƒ—ロファイルã«ãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "フォローをä¿å­˜ã§ãã¾ã›ã‚“。"
@@ -4141,11 +4468,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s ã¯ã ã‚Œã‚‚言ã†ã“ã¨ã‚’èžã„ã¦ã„ã¾ã›ã‚“。"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4178,12 +4505,12 @@ msgstr "ID引数ãŒã‚ã‚Šã¾ã›ã‚“。"
msgid "Tag %s"
msgstr "ã‚¿ã‚° %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "ユーザプロファイル"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "写真"
@@ -4217,10 +4544,6 @@ msgstr "ã“ã®ãƒ•ã‚©ãƒ¼ãƒ ã‚’使用ã—ã¦ã€ãƒ•ã‚©ãƒ­ãƒ¼è€…ã‹ãƒ•ã‚©ãƒ­ãƒ¼ã«ã‚¿
msgid "No such tag."
msgstr "ãã®ã‚ˆã†ãªã‚¿ã‚°ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API メソッドãŒå·¥äº‹ä¸­ã§ã™ã€‚"
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "ã‚ãªãŸã¯ãã®ãƒ¦ãƒ¼ã‚¶ã‚’ブロックã—ã¦ã„ã¾ã›ã‚“。"
@@ -4234,7 +4557,8 @@ msgid "User is not silenced."
msgstr "ユーザã¯ã‚µã‚¤ãƒ¬ãƒ³ã‚¹ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "リクエスト内ã«ãƒ—ロファイルIDãŒã‚ã‚Šã¾ã›ã‚“。"
#: actions/unsubscribe.php:98
@@ -4273,7 +4597,8 @@ msgstr "ä¸æ­£ãªã‚¦ã‚§ãƒ«ã‚«ãƒ ãƒ†ã‚­ã‚¹ãƒˆã€‚最大長ã¯255å­—ã§ã™ã€‚"
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "ä¸æ­£ãªãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ•ã‚©ãƒ­ãƒ¼ã§ã™: '%1$s' ã¯ãƒ¦ãƒ¼ã‚¶ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "プロファイル"
@@ -4331,7 +4656,7 @@ msgstr ""
"ユーザã®ã¤ã¶ã‚„ãをフォローã™ã‚‹ã«ã¯è©³ç´°ã‚’確èªã—ã¦ä¸‹ã•ã„。ã ã‚Œã‹ã®ã¤ã¶ã‚„ãã‚’"
"フォローã™ã‚‹ãŸã‚ã«å°‹ã­ãªã„å ´åˆã¯ã€\"Reject\" をクリックã—ã¦ä¸‹ã•ã„。"
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "ライセンス"
@@ -4436,37 +4761,43 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "ã‚ãªãŸã®hotdogを楽ã—ã‚“ã§ãã ã•ã„!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "%1$s グループã€ãƒšãƒ¼ã‚¸ %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "ã‚‚ã£ã¨ã‚°ãƒ«ãƒ¼ãƒ—を検索"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s ã¯ã©ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "[グループを探ã—ã¦](%%action.groupsearch%%)ãã‚Œã«åŠ å…¥ã—ã¦ãã ã•ã„。"
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "%1$s ã‹ã‚‰ %2$s 上ã®æ›´æ–°ã‚’ã—ã¾ã—ãŸ!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4475,11 +4806,11 @@ msgstr ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "コントリビュータ"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4487,7 +4818,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4495,101 +4826,151 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "プラグイン"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "ãƒãƒ¼ã‚¸ãƒ§ãƒ³"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "作者"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"ã©ã‚“ãªãƒ•ã‚¡ã‚¤ãƒ«ã‚‚ %d ãƒã‚¤ãƒˆã‚ˆã‚Šå¤§ããã¦ã¯ã„ã‘ã¾ã›ã‚“ã€ãã—ã¦ã€ã‚ãªãŸãŒé€ã£ãŸ"
"ファイル㯠%d ãƒã‚¤ãƒˆã§ã—ãŸã€‚よりå°ã•ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã‚’アップロードã™ã‚‹ã‚ˆã†ã«ã—ã¦"
"ãã ã•ã„。"
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"ã“ã‚Œã»ã©å¤§ãã„ファイルã¯ã‚ãªãŸã®%dãƒã‚¤ãƒˆã®ãƒ¦ãƒ¼ã‚¶å‰²å½“ã¦ã‚’超ãˆã¦ã„ã‚‹ã§ã—ょã†ã€‚"
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
"ã“ã‚Œã»ã©å¤§ãã„ファイルã¯ã‚ãªãŸã®%dãƒã‚¤ãƒˆã®æ¯Žæœˆã®å‰²å½“ã¦ã‚’超ãˆã¦ã„ã‚‹ã§ã—ょã†ã€‚"
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "ä¸æ­£ãªã‚µã‚¤ã‚ºã€‚"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "グループå‚加ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "グループã®ä¸€éƒ¨ã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "グループ脱退ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "グループを更新ã§ãã¾ã›ã‚“。"
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "%s 用ã®ãƒ­ã‚°ã‚¤ãƒ³ãƒ»ãƒˆãƒ¼ã‚¯ãƒ³ã‚’作æˆã§ãã¾ã›ã‚“ã§ã—ãŸ"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "ã‚ãªãŸã¯ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹ã®ãŒç¦æ­¢ã•ã‚Œã¦ã„ã¾ã™ã€‚"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "メッセージを追加ã§ãã¾ã›ã‚“。"
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "æ–°ã—ã„URIã§ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’アップデートã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "ãƒãƒƒã‚·ãƒ¥ã‚¿ã‚°è¿½åŠ  DB エラー: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "ã¤ã¶ã‚„ãã‚’ä¿å­˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚é•·ã™ãŽã§ã™ã€‚"
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "ã¤ã¶ã‚„ãã‚’ä¿å­˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚ä¸æ˜Žãªãƒ¦ãƒ¼ã‚¶ã§ã™ã€‚"
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"多ã™ãŽã‚‹ã¤ã¶ã‚„ããŒé€Ÿã™ãŽã¾ã™; 数分間ã®ä¼‘ã¿ã‚’å–ã£ã¦ã‹ã‚‰å†æŠ•ç¨¿ã—ã¦ãã ã•ã„。"
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4597,233 +4978,301 @@ msgstr ""
"多ã™ãŽã‚‹é‡è¤‡ãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒé€Ÿã™ãŽã¾ã™; 数分間休ã¿ã‚’å–ã£ã¦ã‹ã‚‰å†åº¦æŠ•ç¨¿ã—ã¦ãã ã•"
"ã„。"
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã§ã¤ã¶ã‚„ãを投稿ã™ã‚‹ã®ãŒç¦æ­¢ã•ã‚Œã¦ã„ã¾ã™ã€‚"
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "ã¤ã¶ã‚„ãã‚’ä¿å­˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚"
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "グループå—信箱をä¿å­˜ã™ã‚‹éš›ã«å•é¡ŒãŒç™ºç”Ÿã—ã¾ã—ãŸã€‚"
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ユーザã¯ãƒ—ロフィールをもã£ã¦ã„ã¾ã›ã‚“。"
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "ã‚ãªãŸã®ãƒ‡ã‚¶ã‚¤ãƒ³è¨­å®šã‚’ä¿å­˜ã§ãã¾ã›ã‚“。"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "ã‚ãªãŸã¯ãƒ•ã‚©ãƒ­ãƒ¼ãŒç¦æ­¢ã•ã‚Œã¾ã—ãŸã€‚"
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "ã™ã§ã«ãƒ•ã‚©ãƒ­ãƒ¼ã—ã¦ã„ã¾ã™!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "ユーザã¯ã‚ãªãŸã‚’ブロックã—ã¾ã—ãŸã€‚"
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "フォローã—ã¦ã„ã¾ã›ã‚“ï¼"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "自己フォローを削除ã§ãã¾ã›ã‚“。"
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "フォローを削除ã§ãã¾ã›ã‚“"
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "フォローを削除ã§ãã¾ã›ã‚“"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "よã†ã“ã %1$sã€@%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "グループを作æˆã§ãã¾ã›ã‚“。"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "グループメンãƒãƒ¼ã‚·ãƒƒãƒ—をセットã§ãã¾ã›ã‚“。"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "グループメンãƒãƒ¼ã‚·ãƒƒãƒ—をセットã§ãã¾ã›ã‚“。"
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "フォローをä¿å­˜ã§ãã¾ã›ã‚“。"
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "プロファイル設定ã®å¤‰æ›´"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "ã‚¢ãƒã‚¿ãƒ¼ã®ã‚¢ãƒƒãƒ—ロード"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "パスワードã®å¤‰æ›´"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "メールã®æ‰±ã„を変更"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "ã‚ãªãŸã®ãƒ—ロファイルをデザイン"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "ãã®ä»–"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "ãã®ä»–ã®ã‚ªãƒ—ション"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "ãã®ä»–"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr ""
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "å称未設定ページ"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "プライマリサイトナビゲーション"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "パーソナルプロファイルã¨å‹äººã®ã‚¿ã‚¤ãƒ ãƒ©ã‚¤ãƒ³"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "パーソナル"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "メールアドレスã€ã‚¢ãƒã‚¿ãƒ¼ã€ãƒ‘スワードã€ãƒ—ロパティã®å¤‰æ›´"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "サービスã¸æŽ¥ç¶š"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "接続"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "サイト設定ã®å¤‰æ›´"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "管ç†è€…"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "å‹äººã‚„åŒåƒšãŒ %s ã§åŠ ã‚るよã†èª˜ã£ã¦ãã ã•ã„。"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "招待"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "サイトã‹ã‚‰ãƒ­ã‚°ã‚¢ã‚¦ãƒˆ"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "ログアウト"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "アカウントを作æˆ"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "登録"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "サイトã¸ãƒ­ã‚°ã‚¤ãƒ³"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "ログイン"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "助ã‘ã¦ï¼"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "ヘルプ"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "人々ã‹ãƒ†ã‚­ã‚¹ãƒˆã‚’検索"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4831,73 +5280,87 @@ msgstr "検索"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "サイトã¤ã¶ã‚„ã"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "ローカルビュー"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "ページã¤ã¶ã‚„ã"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "セカンダリサイトナビゲーション"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "ヘルプ"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "About"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "よãã‚る質å•"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "プライãƒã‚·ãƒ¼"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "ソース"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "連絡先"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "ãƒãƒƒã‚¸"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet ソフトウェアライセンス"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** 㯠[%%site.broughtby%%](%%site.broughtbyurl%%) ãŒæä¾›ã™ã‚‹ãƒž"
"イクロブログサービスã§ã™ã€‚ "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** ã¯ãƒžã‚¤ã‚¯ãƒ­ãƒ–ログサービスã§ã™ã€‚ "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** ã¯ãƒžã‚¤ã‚¯ãƒ­ãƒ–ログサービスã§ã™ã€‚"
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4908,67 +5371,81 @@ msgstr ""
"ã„ã¦ã„ã¾ã™ã€‚ ライセンス [GNU Affero General Public License](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)。"
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "サイト内容ライセンス"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "全㦠"
-
-#: lib/action.php:853
-msgid "license."
-msgstr "ライセンス。"
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "ページ化"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "<<後"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "å‰>>"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "ã‚ãªãŸã¯ã“ã®ã‚µã‚¤ãƒˆã¸ã®å¤‰æ›´ã‚’è¡Œã†ã“ã¨ãŒã§ãã¾ã›ã‚“。"
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "ãã®ãƒ‘ãƒãƒ«ã¸ã®å¤‰æ›´ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
@@ -4978,159 +5455,200 @@ msgstr "showForm() ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
msgid "saveSettings() not implemented."
msgstr "saveSettings() ã¯å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "デザイン設定を削除ã§ãã¾ã›ã‚“。"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "基本サイト設定"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "サイト"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "デザイン設定"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "デザイン"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "ユーザ設定"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "ユーザ"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "アクセス設定"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "パス設定"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "セッション設定"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "サイトã¤ã¶ã‚„ã"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "パス設定"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"APIリソースã¯èª­ã¿æ›¸ãアクセスãŒå¿…è¦ã§ã™ã€ã—ã‹ã—ã‚ãªãŸã¯èª­ã¿ã‚¢ã‚¯ã‚»ã‚¹ã—ã‹æŒã£ã¦"
"ã„ã¾ã›ã‚“。"
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "アプリケーション編集"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "ã“ã®ã‚¢ãƒ—リケーションã®ã‚¢ã‚¤ã‚³ãƒ³"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "ã‚ãªãŸã®ã‚¢ãƒ—リケーションを %d 字以内記述"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "ã‚ãªãŸã®ã‚¢ãƒ—リケーションを記述"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "ソース URL"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "ã“ã®ã‚¢ãƒ—リケーションã®ãƒ›ãƒ¼ãƒ ãƒšãƒ¼ã‚¸ã® URL"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "ソース URL"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "ã“ã®ã‚¢ãƒ—リケーションã«è²¬ä»»ãŒã‚る組織"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "組織ã®ãƒ›ãƒ¼ãƒ ãƒšãƒ¼ã‚¸ã®URL"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "èªè¨¼ã®å¾Œã«ãƒªãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆã™ã‚‹URL"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "ブラウザ"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "デスクトップ"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "アプリケーションã€ãƒ–ラウザã€ã¾ãŸã¯ãƒ‡ã‚¹ã‚¯ãƒˆãƒƒãƒ—ã®ã‚¿ã‚¤ãƒ—"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "リードオンリー"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "リードライト"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"ã“ã®ã‚¢ãƒ—リケーションã®ãŸã‚ã®ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã‚¢ã‚¯ã‚»ã‚¹: リードオンリーã€ã¾ãŸã¯ãƒªãƒ¼ãƒ‰"
"ライト"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "中止"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+#, fuzzy
+msgid "read-write"
+msgstr "リードライト"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+#, fuzzy
+msgid "read-only"
+msgstr "リードオンリー"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "å–消ã—"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "添付"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "作者"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "プロãƒã‚¤ãƒ€"
@@ -5142,45 +5660,64 @@ msgstr "ã“ã®æ·»ä»˜ãŒç¾ã‚Œã‚‹ã¤ã¶ã‚„ã"
msgid "Tags for this attachment"
msgstr "ã“ã®æ·»ä»˜ã®ã‚¿ã‚°"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "パスワード変更ã«å¤±æ•—ã—ã¾ã—ãŸ"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "パスワード変更ã¯è¨±å¯ã•ã‚Œã¦ã„ã¾ã›ã‚“"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "コマンドçµæžœ"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "コマンド完了"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "コマンド失敗"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "ã™ã¿ã¾ã›ã‚“ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã¾ã å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "ãã® ID ã«ã‚ˆã‚‹ã¤ã¶ã‚„ãã¯å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "ユーザã¯ã¾ã ã¤ã¶ã‚„ã„ã¦ã„ã¾ã›ã‚“"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "ユーザを更新ã§ãã¾ã›ã‚“"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "ユーザを更新ã§ãã¾ã›ã‚“"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "ã™ã¿ã¾ã›ã‚“ã€ã“ã®ã‚³ãƒžãƒ³ãƒ‰ã¯ã¾ã å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "ãã‚Œã¯è‡ªåˆ†è‡ªèº«ã¸ã®åˆå›³ã§å¤šãã¯æ„味ãŒã‚ã‚Šã¾ã›ã‚“!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "%s ã¸åˆå›³ã‚’é€ã‚Šã¾ã—ãŸ"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5191,193 +5728,197 @@ msgstr ""
"フォローã•ã‚Œã¦ã„ã‚‹: %2$s\n"
"ã¤ã¶ã‚„ã: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "ãã® ID ã«ã‚ˆã‚‹ã¤ã¶ã‚„ãã¯å­˜åœ¨ã—ã¦ã„ã¾ã›ã‚“"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "ユーザã¯ã¾ã ã¤ã¶ã‚„ã„ã¦ã„ã¾ã›ã‚“"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "ãŠæ°—ã«å…¥ã‚Šã«ã•ã‚Œã¦ã„ã‚‹ã¤ã¶ã‚„ã。"
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "ã‚ãªãŸã¯æ—¢ã«ãã®ã‚°ãƒ«ãƒ¼ãƒ—ã«å‚加ã—ã¦ã„ã¾ã™ã€‚"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "ユーザ %s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«å‚加ã§ãã¾ã›ã‚“"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«å‚加ã—ã¾ã—ãŸ"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "ユーザ %s をグループ %s ã‹ã‚‰å‰Šé™¤ã™ã‚‹ã“ã¨ãŒã§ãã¾ã›ã‚“"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "ユーザ %1$s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %2$s ã«å‚加ã§ãã¾ã›ã‚“。"
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s ã¯ã‚°ãƒ«ãƒ¼ãƒ— %s ã«æ®‹ã‚Šã¾ã—ãŸã€‚"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "ユーザ %1$s をグループ %2$s ã‹ã‚‰å‰Šé™¤ã§ãã¾ã›ã‚“。"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "フルãƒãƒ¼ãƒ ï¼š %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "場所: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "ホームページ: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "About: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "メッセージãŒé•·ã™ãŽã¾ã™ - 最大 %d å­—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, fuzzy, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "メッセージãŒé•·ã™ãŽã¾ã™ - 最大 %1$d å­—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %2$d。"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "ダイレクトメッセージを %s ã«é€ã‚Šã¾ã—ãŸ"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "ダイレクトメッセージé€ä¿¡ã‚¨ãƒ©ãƒ¼ã€‚"
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "自分ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã™ã“ã¨ã¯ã§ãã¾ã›ã‚“"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "ã™ã§ã«ã“ã®ã¤ã¶ã‚„ãã¯ç¹°ã‚Šè¿”ã•ã‚Œã¦ã„ã¾ã™"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "%s ã‹ã‚‰ã¤ã¶ã‚„ããŒç¹°ã‚Šè¿”ã•ã‚Œã¦ã„ã¾ã™"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "ã¤ã¶ã‚„ãç¹°ã‚Šè¿”ã—エラー"
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "ã¤ã¶ã‚„ããŒé•·ã™ãŽã¾ã™ - 最大 %d å­—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "%s ã¸è¿”ä¿¡ã‚’é€ã‚Šã¾ã—ãŸ"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "ã¤ã¶ã‚„ãä¿å­˜ã‚¨ãƒ©ãƒ¼ã€‚"
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "フォローã™ã‚‹ãƒ¦ãƒ¼ã‚¶ã®åå‰ã‚’指定ã—ã¦ãã ã•ã„"
-#: lib/command.php:554 lib/command.php:589
+#: lib/command.php:628
#, fuzzy
-msgid "No such user"
-msgstr "ãã®ã‚ˆã†ãªãƒ¦ãƒ¼ã‚¶ã¯ã„ã¾ã›ã‚“。"
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "ã‚ãªãŸã¯ãã®ãƒ—ロファイルã«ãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "%s をフォローã—ã¾ã—ãŸ"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "フォローをやã‚るユーザã®åå‰ã‚’指定ã—ã¦ãã ã•ã„"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "%s ã®ãƒ•ã‚©ãƒ­ãƒ¼ã‚’ã‚„ã‚ã‚‹"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "コマンドã¯ã¾ã å®Ÿè£…ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "通知オフ。"
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "通知をオフã§ãã¾ã›ã‚“。"
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "通知オン。"
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "通知をオンã§ãã¾ã›ã‚“。"
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "ログインコマンドãŒç„¡åŠ¹ã«ãªã£ã¦ã„ã¾ã™ã€‚"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr "ã“ã®ãƒªãƒ³ã‚¯ã¯ã€ã‹ã¤ã¦ã ã‘使用å¯èƒ½ã§ã‚ã‚Šã€2分間ã ã‘良ã„ã§ã™: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "%s ã®ãƒ•ã‚©ãƒ­ãƒ¼ã‚’ã‚„ã‚ã‚‹"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "ã‚ãªãŸã¯ã ã‚Œã«ã‚‚フォローã•ã‚Œã¦ã„ã¾ã›ã‚“。"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "ã‚ãªãŸã¯ã“ã®äººã«ãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ã¾ã™:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "誰もフォローã—ã¦ã„ã¾ã›ã‚“。"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "ã“ã®äººã¯ã‚ãªãŸã«ãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ã‚‹:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "ã‚ãªãŸã¯ã©ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã‚‚ã‚ã‚Šã¾ã›ã‚“。"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "ã‚ãªãŸã¯ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã®ãƒ¡ãƒ³ãƒãƒ¼ã§ã¯ã‚ã‚Šã¾ã›ã‚“:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5419,21 +5960,21 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "コンフィギュレーションファイルãŒã‚ã‚Šã¾ã›ã‚“。 "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "ç§ã¯ä»¥ä¸‹ã®å ´æ‰€ã§ã‚³ãƒ³ãƒ•ã‚£ã‚®ãƒ¥ãƒ¬ãƒ¼ã‚·ãƒ§ãƒ³ãƒ•ã‚¡ã‚¤ãƒ«ã‚’探ã—ã¾ã—ãŸ: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
"ã‚ãªãŸã¯ã€ã“れを修ç†ã™ã‚‹ãŸã‚ã«ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ©ã‚’å‹•ã‹ã—ãŸãŒã£ã¦ã„ã‚‹ã‹ã‚‚ã—ã‚Œã¾ã›"
"ん。"
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "インストーラã¸ã€‚"
@@ -5605,53 +6146,54 @@ msgstr "投稿ãŒå¤šã„グループ"
msgid "Tags in %s group's notices"
msgstr "%s グループã®ã¤ã¶ã‚„ãã«ã‚ã‚‹ã‚¿ã‚°"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "ã“ã®ãƒšãƒ¼ã‚¸ã¯ã‚ãªãŸãŒæ‰¿èªã—ãŸãƒ¡ãƒ‡ã‚£ã‚¢ã‚¿ã‚¤ãƒ—ã§ã¯åˆ©ç”¨ã§ãã¾ã›ã‚“。"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "サãƒãƒ¼ãƒˆå¤–ã®ç”»åƒå½¢å¼ã§ã™ã€‚"
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "ファイルãŒå¤§ãã™ãŽã¾ã™ã€‚最大ファイルサイズ㯠%s 。"
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "ä¸å®Œå…¨ãªã‚¢ãƒƒãƒ—ロード。"
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "ファイルã®ã‚¢ãƒƒãƒ—ロードã§ã‚·ã‚¹ãƒ†ãƒ ã‚¨ãƒ©ãƒ¼"
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "ç”»åƒã§ã¯ãªã„ã‹ãƒ•ã‚¡ã‚¤ãƒ«ãŒç ´æã—ã¦ã„ã¾ã™ã€‚"
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "サãƒãƒ¼ãƒˆå¤–ã®ç”»åƒå½¢å¼ã§ã™ã€‚"
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "ファイルを紛失。"
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "ä¸æ˜Žãªãƒ•ã‚¡ã‚¤ãƒ«ã‚¿ã‚¤ãƒ—"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "ä¸æ˜Žãªå—ä¿¡ç®±ã®ã‚½ãƒ¼ã‚¹ %d。"
@@ -5672,11 +6214,13 @@ msgstr "ユーザåã¨ãƒ‘スワードã§ãƒ­ã‚°ã‚¤ãƒ³"
msgid "Sign up for a new account"
msgstr "æ–°ã—ã„アカウントã§ã‚µã‚¤ãƒ³ã‚¢ãƒƒãƒ—"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "メールアドレス確èª"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5705,12 +6249,21 @@ msgstr ""
"ã‚ã‚ŠãŒã¨ã†ã”ã–ã„ã¾ã™ã€‚\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s 㯠%2$s ã§ã‚ãªãŸã®ã¤ã¶ã‚„ãã‚’èžã„ã¦ã„ã¾ã™ã€‚"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5735,17 +6288,20 @@ msgstr ""
"----\n"
"%8$s ã§ãƒ¡ãƒ¼ãƒ«ã‚¢ãƒ‰ãƒ¬ã‚¹ã‹é€šçŸ¥ã‚ªãƒ—ションを変ãˆã¦ãã ã•ã„。\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "自己紹介: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "%s ã¸æŠ•ç¨¿ã®ãŸã‚ã®æ–°ã—ã„メールアドレス"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, fuzzy, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5766,21 +6322,31 @@ msgstr ""
"忠実ã§ã‚ã‚‹ã€ã‚ãªãŸã®ã‚‚ã®ã€\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s ã®çŠ¶æ…‹"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS確èª"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "ã“ã®é›»è©±ç•ªå·ã¯ç¢ºèªå¾…ã¡ã§ã™ã€‚"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "ã‚ãªãŸã¯ %s ã«åˆå›³ã•ã‚Œã¦ã„ã¾ã™"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, fuzzy, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5807,12 +6373,14 @@ msgstr ""
"敬具\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "%s ã‹ã‚‰ã®æ–°ã—ã„プライベートメッセージ"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, fuzzy, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5845,12 +6413,14 @@ msgstr ""
"敬具\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) ã¯ãŠæ°—ã«å…¥ã‚Šã¨ã—ã¦ã‚ãªãŸã®ã¤ã¶ã‚„ãを加ãˆã¾ã—ãŸ"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, fuzzy, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5888,12 +6458,22 @@ msgstr ""
"忠実ã§ã‚ã‚‹ã€ã‚ãªãŸã®ã‚‚ã®ã€\n"
"%6%s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) ã¯ã‚ãªãŸå®›ã¦ã«ã¤ã¶ã‚„ãã‚’é€ã‚Šã¾ã—ãŸ"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5906,17 +6486,19 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
-msgstr ""
-"%1$s (@%9$s) ã¯ã‚ãªãŸå®›ã¦ã«(@-返信) %2$s ã§ã¤ã¶ã‚„ãã‚’é€ã‚Šã¾ã—ãŸã€‚\n"
+"%5$sYou can reply back here:\n"
"\n"
-"ã¤ã¶ã‚„ãã¯ã“ã“:\n"
+"\t%6$s\n"
"\n"
-"%3$s\n"
+"The list of all @-replies for you here:\n"
"\n"
-"ã“れを読む:\n"
+"%7$s\n"
"\n"
-"%4$s\n"
+"Faithfully yours,\n"
+"%2$s\n"
"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
+msgstr ""
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5931,7 +6513,7 @@ msgstr ""
"ã«å¼•ã込むプライベートメッセージをé€ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚人々ã¯ã‚ãªãŸã ã‘ã¸ã®"
"メッセージをé€ã‚‹ã“ã¨ãŒã§ãã¾ã™ã€‚"
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "from"
@@ -5992,24 +6574,24 @@ msgstr "ディスクã¸ã®ãƒ•ã‚¡ã‚¤ãƒ«æ›¸ãè¾¼ã¿ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
msgid "File upload stopped by extension."
msgstr "エクステンションã«ã‚ˆã£ã¦ãƒ•ã‚¡ã‚¤ãƒ«ã‚¢ãƒƒãƒ—ロードを中止ã—ã¾ã—ãŸã€‚"
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "ファイルã¯ãƒ¦ãƒ¼ã‚¶ã®å‰²å½“ã¦ã‚’超ãˆã¦ã„ã¾ã™ã€‚"
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "ファイルを目的ディレクトリã«å‹•ã‹ã™ã“ã¨ãŒã§ãã¾ã›ã‚“ã§ã—ãŸã€‚"
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "ファイルã®MIMEタイプを決定ã§ãã¾ã›ã‚“。"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr "別㮠%s フォーマットを試ã—ã¦ãã ã•ã„。"
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s ã¯ã“ã®ã‚µãƒ¼ãƒã®ã‚µãƒãƒ¼ãƒˆã—ã¦ã„るファイルタイプã§ã¯ã‚ã‚Šã¾ã›ã‚“。"
@@ -6065,52 +6647,56 @@ msgstr ""
"ã™ã¿ã¾ã›ã‚“ã€ã‚ãªãŸã®ä½ç½®ã‚’検索ã™ã‚‹ã®ãŒäºˆæƒ³ã‚ˆã‚Šé•·ãã‹ã‹ã£ã¦ã„ã¾ã™ã€å¾Œã§ã‚‚ã†ä¸€"
"度試ã¿ã¦ãã ã•ã„"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "北"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
#, fuzzy
msgid "S"
msgstr "å—"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
#, fuzzy
msgid "E"
msgstr "æ±"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
#, fuzzy
msgid "W"
msgstr "西"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "at"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr ""
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr ""
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "ã“ã®ã¤ã¶ã‚„ãã¸è¿”ä¿¡"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "返信"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¾ã—ãŸ"
@@ -6134,6 +6720,10 @@ msgstr "プロファイル追加エラー"
msgid "Error inserting avatar"
msgstr "ã‚¢ãƒã‚¿ãƒ¼è¿½åŠ ã‚¨ãƒ©ãƒ¼"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "リモートプロファイル更新エラー"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "リモートプロファイル追加エラー"
@@ -6179,11 +6769,11 @@ msgstr "ã‚ãªãŸãŒé€ã£ãŸãƒ¡ãƒƒã‚»ãƒ¼ã‚¸"
msgid "Tags in %s's notices"
msgstr "%s ã®ã¤ã¶ã‚„ãã®ã‚¿ã‚°"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "ä¸æ˜Ž"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "フォロー"
@@ -6191,31 +6781,32 @@ msgstr "フォロー"
msgid "All subscriptions"
msgstr "ã™ã¹ã¦ã®ãƒ•ã‚©ãƒ­ãƒ¼"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "フォローã•ã‚Œã¦ã„ã‚‹"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "ã™ã¹ã¦ã®ãƒ•ã‚©ãƒ­ãƒ¼ã•ã‚Œã¦ã„ã‚‹"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ユーザID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "利用開始日"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "å…¨ã¦ã®ã‚°ãƒ«ãƒ¼ãƒ—"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "return-to 引数ãŒã‚ã‚Šã¾ã›ã‚“。"
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "未実装ã®ãƒ¡ã‚½ãƒƒãƒ‰ã€‚"
@@ -6239,11 +6830,19 @@ msgstr "フィーãƒãƒ£ãƒ¼ã•ã‚ŒãŸ"
msgid "Popular"
msgstr "人気"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "return-to 引数ãŒã‚ã‚Šã¾ã›ã‚“。"
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã—ã¾ã™ã‹?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Yes"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã™"
@@ -6252,7 +6851,7 @@ msgstr "ã“ã®ã¤ã¶ã‚„ãã‚’ç¹°ã‚Šè¿”ã™"
msgid "Revoke the \"%s\" role from this user"
msgstr "ã“ã®ã‚°ãƒ«ãƒ¼ãƒ—ã‹ã‚‰ã“ã®ãƒ¦ãƒ¼ã‚¶ã‚’ブロック"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "single-user モードã®ãŸã‚ã®ã‚·ãƒ³ã‚°ãƒ«ãƒ¦ãƒ¼ã‚¶ãŒå®šç¾©ã•ã‚Œã¦ã„ã¾ã›ã‚“。"
@@ -6350,6 +6949,50 @@ msgstr "タグ付ã‘ã¨ã—ã¦ã®äººã€…タグクラウド"
msgid "None"
msgstr "ãªã—"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "ã‚¢ãƒã‚¿ãƒ¼ã®æ›´æ–°ã«å¤±æ•—ã—ã¾ã—ãŸã€‚"
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "リモートプロファイル更新エラー"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "上ä½æŠ•ç¨¿è€…"
@@ -6378,93 +7021,112 @@ msgstr "ã“ã®åˆ©ç”¨è€…ã‹ã‚‰ã®ãƒ•ã‚©ãƒ­ãƒ¼ã‚’解除ã™ã‚‹"
msgid "Unsubscribe"
msgstr "フォロー解除"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "ユーザã¯ãƒ—ロフィールをもã£ã¦ã„ã¾ã›ã‚“。"
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "ã‚¢ãƒã‚¿ãƒ¼ã‚’編集ã™ã‚‹"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "利用者アクション"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "プロファイル設定編集"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "編集"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "ã“ã®åˆ©ç”¨è€…ã«ãƒ€ã‚¤ãƒ¬ã‚¯ãƒˆãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ã‚’é€ã‚‹"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "メッセージ"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
#, fuzzy
msgid "Moderate"
msgstr "管ç†"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "ユーザプロファイル"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "管ç†è€…"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
#, fuzzy
msgctxt "role"
msgid "Moderator"
msgstr "管ç†"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "数秒å‰"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "ç´„ 1 分å‰"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "ç´„ %d 分å‰"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "ç´„ 1 時間å‰"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "ç´„ %d 時間å‰"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "ç´„ 1 æ—¥å‰"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "ç´„ %d æ—¥å‰"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "ç´„ 1 ヵ月å‰"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "ç´„ %d ヵ月å‰"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "ç´„ 1 å¹´å‰"
@@ -6478,7 +7140,7 @@ msgstr "%sã¯æœ‰åŠ¹ãªè‰²ã§ã¯ã‚ã‚Šã¾ã›ã‚“!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s ã¯æœ‰åŠ¹ãªè‰²ã§ã¯ã‚ã‚Šã¾ã›ã‚“! 3ã‹6ã®16進数を使ã£ã¦ãã ã•ã„。"
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "メッセージãŒé•·ã™ãŽã¾ã™ - 最大 %1$d å­—ã€ã‚ãªãŸãŒé€ã£ãŸã®ã¯ %2$d。"
diff --git a/locale/ko/LC_MESSAGES/statusnet.po b/locale/ko/LC_MESSAGES/statusnet.po
index 69bf4efb9..5b5bb0424 100644
--- a/locale/ko/LC_MESSAGES/statusnet.po
+++ b/locale/ko/LC_MESSAGES/statusnet.po
@@ -1,5 +1,7 @@
# Translation of StatusNet to Korean
#
+# Author@translatewiki.net: Brion
+# Author@translatewiki.net: Twkang
# --
# This file is distributed under the same license as the StatusNet package.
#
@@ -7,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:22+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:43+0000\n"
"Language-Team: Korean\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ko\n"
"X-Message-Group: out-statusnet\n"
@@ -20,246 +22,242 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
-#, fuzzy
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
-msgstr "수ë½"
+msgstr "ì ‘ê·¼"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "아바타 설정"
+msgstr "사ì´íŠ¸ ì ‘ê·¼ 설정"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
-msgstr "회ì›ê°€ìž…"
+msgstr "등ë¡"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
-msgstr ""
+msgstr "로그ì¸í•˜ì§€ ì•Šì€ ìµëª… ì´ìš©ìžì˜ 사ì´íŠ¸ 보기 금지"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
-msgstr "ê°œì¸ì •ë³´ 취급방침"
+msgstr "비공개"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
msgid "Make registration invitation only."
-msgstr ""
+msgstr "ì´ˆëŒ€ë°›ì€ ê²½ìš°ë§Œ 등ë¡í—ˆìš©"
#. TRANS: Checkbox label for configuring site as invite only.
#: actions/accessadminpanel.php:176
-#, fuzzy
msgid "Invite only"
-msgstr "초대"
+msgstr "초대 전용"
#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
#: actions/accessadminpanel.php:183
msgid "Disable new registrations."
-msgstr ""
+msgstr "신규회ì›ë“±ë¡ 기능차단"
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
-#, fuzzy
msgid "Closed"
-msgstr "차단하기"
+msgstr "í쇄"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "아바타 설정"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "ì ‘ê·¼ ì„¤ì •ì„ ì €ìž¥"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "저장"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-#, fuzzy
-msgid "No such page"
-msgstr "그러한 태그가 없습니다."
+msgid "No such page."
+msgstr "해당하는 페ì´ì§€ ì—†ìŒ"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
-msgstr "그러한 사용ìžëŠ” 없습니다."
+msgstr "해당하는 ì´ìš©ìž ì—†ìŒ"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%s 와 친구들, %d 페ì´ì§€"
+msgstr "%s ë° ì¹œêµ¬ë“¤, %d 페ì´ì§€"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s ë° ì¹œêµ¬ë“¤"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
-#, fuzzy, php-format
+#: actions/all.php:107
+#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
-msgstr "%sì˜ ì¹œêµ¬ë“¤ì„ ìœ„í•œ 피드"
+msgstr "%sì˜ ì¹œêµ¬ë“¤ì— ëŒ€í•œ 피드 (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
-#, fuzzy, php-format
+#: actions/all.php:116
+#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
-msgstr "%sì˜ ì¹œêµ¬ë“¤ì„ ìœ„í•œ 피드"
+msgstr "%sì˜ ì¹œêµ¬ë“¤ì— ëŒ€í•œ 피드 (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
-#, fuzzy, php-format
+#: actions/all.php:125
+#, php-format
msgid "Feed for friends of %s (Atom)"
-msgstr "%sì˜ ì¹œêµ¬ë“¤ì„ ìœ„í•œ 피드"
+msgstr "%sì˜ ì¹œêµ¬ë“¤ì— ëŒ€í•œ 피드 (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
-msgstr ""
+msgstr "%s ë° ì¹œêµ¬ë“¤ì˜ íƒ€ìž„ë¼ì¸ì´ì§€ë§Œ, ì•„ì§ ì•„ë¬´ë„ ê¸€ì„ ìž‘ì„±í•˜ì§€ 않았습니다."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
"something yourself."
msgstr ""
+"ë” ë§Žì€ ì‚¬ëžŒë“¤ì„ êµ¬ë…í•´ 보거나, [ê·¸ë£¹ì— ì°¸ê°€](%%action.groups%%) ë˜ëŠ” ì§ì ‘ ë­”"
+"ê°€ ê¸€ì„ ì¨ë³´ì„¸ìš”."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
-#, fuzzy
+#: actions/all.php:182
msgid "You and friends"
-msgstr "%s ë° ì¹œêµ¬ë“¤"
+msgstr "당신 ë° ì¹œêµ¬ë“¤"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
-msgstr "%1$s ë° %2$sì— ìžˆëŠ” ì¹œêµ¬ë“¤ì˜ ì—…ë°ì´íŠ¸!"
+msgstr "%2$sì— ìžˆëŠ” %1$s ë° ì¹œêµ¬ë“¤ì˜ ì—…ë°ì´íŠ¸!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
-#, fuzzy
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
-msgstr "API 메서드를 ì°¾ì„ ìˆ˜ 없습니다."
+msgstr "API 메서드 발견 안 ë¨."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
-msgstr "ì´ ë©”ì„œë“œëŠ” 등ë¡ì„ 요구합니다."
+msgstr "ì´ ë©”ì„œë“œëŠ” POST를 요구합니다."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
-#, fuzzy
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
-msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+msgstr "ì´ìš©ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
#: actions/apiaccountupdateprofile.php:112
#: actions/apiaccountupdateprofilebackgroundimage.php:194
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "ì´ìš©ìžê°€ í”„ë¡œí•„ì„ ê°€ì§€ê³  있지 않습니다."
#: actions/apiaccountupdateprofile.php:147
-#, fuzzy
msgid "Could not save profile."
msgstr "í”„ë¡œí•„ì„ ì €ìž¥ í•  수 없습니다."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -267,6 +265,8 @@ msgid ""
"The server was unable to handle that much POST data (%s bytes) due to its "
"current configuration."
msgstr ""
+"현재 설정으로 ì¸í•´ 너무 ë§Žì€ POST ë°ì´í„°(%s ë°”ì´íŠ¸)는 서버ì—ì„œ 처리할 수 없습"
+"니다."
#: actions/apiaccountupdateprofilebackgroundimage.php:136
#: actions/apiaccountupdateprofilebackgroundimage.php:146
@@ -275,33 +275,30 @@ msgstr ""
#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
-#, fuzzy
msgid "Unable to save your design settings."
-msgstr "트위터 í™˜ê²½ì„¤ì •ì„ ì €ìž¥í•  수 없습니다."
+msgstr "ë””ìžì¸ ì„¤ì •ì„ ì €ìž¥í•  수 없습니다."
#: actions/apiaccountupdateprofilebackgroundimage.php:187
#: actions/apiaccountupdateprofilecolors.php:142
-#, fuzzy
msgid "Could not update your design."
-msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+msgstr "ë””ìžì¸ì„ ì—…ë°ì´íŠ¸ í•  수 없습니다."
#: actions/apiblockcreate.php:105
-#, fuzzy
msgid "You cannot block yourself!"
-msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+msgstr "ìžê¸° ìžì‹ ì€ 차단할 수 없습니다."
#: actions/apiblockcreate.php:126
msgid "Block user failed."
-msgstr "ì‚¬ìš©ìž ì°¨ë‹¨ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
+msgstr "ì´ìš©ìž ì°¨ë‹¨ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
#: actions/apiblockdestroy.php:114
msgid "Unblock user failed."
-msgstr "ì‚¬ìš©ìž ì°¨ë‹¨ í•´ì œì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
+msgstr "ì´ìš©ìž 차단 í•´ì œì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
#: actions/apidirectmessage.php:89
-#, fuzzy, php-format
+#, php-format
msgid "Direct messages from %s"
-msgstr "%sì—게 ì§ì ‘ 메시지"
+msgstr "%s으로부터 ì§ì ‘ 메시지"
#: actions/apidirectmessage.php:93
#, php-format
@@ -318,192 +315,199 @@ msgstr "%sì—게 ì§ì ‘ 메시지"
msgid "All the direct messages sent to %s"
msgstr "%sì—게 모든 ì§ì ‘ 메시지"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "메시지 ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
-#, fuzzy, php-format
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
+#, php-format
msgid "That's too long. Max message size is %d chars."
-msgstr "메시지가 너무 길어요. 최대로 140ìžê¹Œì§€ 입력하실 수 있습니다."
+msgstr "너무 ê¹ë‹ˆë‹¤. 최대 메시지 길ì´ëŠ” %d ìžê¹Œì§€ìž…니다."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "받는 사용ìžê°€ 없습니다."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "ë‹¹ì‹ ì˜ ì¹œêµ¬ê°€ ì•„ë‹Œ 사용ìžì—게 ì§ì ‘ 메시지를 보낼 수 없습니다."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "ê·¸ IDë¡œ ë°œê²¬ëœ ìƒíƒœê°€ 없습니다."
-#: actions/apifavoritecreate.php:119
-#, fuzzy
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
-msgstr "ì´ ê²Œì‹œê¸€ì€ ì´ë¯¸ 좋아하는 게시글입니다."
+msgstr "ì´ ì†Œì‹ì€ ì´ë¯¸ 관심소ì‹ìœ¼ë¡œ 등ë¡ë˜ì–´ 있습니다."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
-msgstr "좋아하는 ê²Œì‹œê¸€ì„ ìƒì„±í•  수 없습니다."
+msgstr "관심소ì‹ì„ ìƒì„±í•  수 없습니다."
-#: actions/apifavoritedestroy.php:122
-#, fuzzy
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
-msgstr "ì´ ë©”ì‹œì§€ëŠ” favoriteì´ ì•„ë‹™ë‹ˆë‹¤."
+msgstr "ì´ ì†Œì‹ì€ 관심소ì‹ì´ 아닙니다."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
-msgstr "favoriteì„ ì‚­ì œí•  수 없습니다."
+msgstr "관심소ì‹ì„ 삭제할 수 없습니다."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "ë”°ë¼ê°€ì‹¤ 수 없습니다 : 사용ìžê°€ 없습니다."
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "팔로우할 수 없습니다: ì´ìš©ìž ì—†ìŒ."
#: actions/apifriendshipscreate.php:118
#, php-format
msgid "Could not follow user: %s is already on your list."
-msgstr "ë”°ë¼ê°€ì‹¤ 수 없습니다 : %s ë‹˜ì€ ì´ë¯¸ ë¦¬ìŠ¤íŠ¸ì— ìžˆìŠµë‹ˆë‹¤."
+msgstr "팔로우할 수 없습니다 : %s ë‹˜ì€ ì´ë¯¸ ë¦¬ìŠ¤íŠ¸ì— ìžˆìŠµë‹ˆë‹¤."
#: actions/apifriendshipsdestroy.php:109
-#, fuzzy
msgid "Could not unfollow user: User not found."
-msgstr "ë”°ë¼ê°€ì‹¤ 수 없습니다 : 사용ìžê°€ 없습니다."
+msgstr "언팔로우할 수 없습니다: ì´ìš©ìž ì—†ìŒ."
#: actions/apifriendshipsdestroy.php:120
-#, fuzzy
msgid "You cannot unfollow yourself."
-msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+msgstr "ìžê¸° ìžì‹ ì„ 언팔로우할 수 없습니다."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "ë‘ ê°œì˜ ì‚¬ìš©ìž ID나 ëŒ€í™”ëª…ì„ ìž…ë ¥í•´ì•¼ 합니다."
#: actions/apifriendshipsshow.php:134
-#, fuzzy
msgid "Could not determine source user."
-msgstr "공개 streamì„ ë¶ˆëŸ¬ì˜¬ 수 없습니다."
+msgstr "소스 ì´ìš©ìžë¥¼ 확ì¸í•  수 없습니다."
#: actions/apifriendshipsshow.php:142
-#, fuzzy
msgid "Could not find target user."
-msgstr "ì–´ë– í•œ ìƒíƒœë„ ì°¾ì„ ìˆ˜ 없습니다."
+msgstr "타겟 ì´ìš©ìžë¥¼ ì°¾ì„ ìˆ˜ 없습니다."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"ë³„ëª…ì€ ë°˜ë“œì‹œ ì˜ì†Œë¬¸ìžì™€ 숫ìžë¡œë§Œ ì´ë£¨ì–´ì ¸ì•¼ 하며 스페ì´ìŠ¤ì˜ ì‚¬ìš©ì´ ë¶ˆê°€ 합니"
"다."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "ë³„ëª…ì´ ì´ë¯¸ 사용중 입니다. 다른 ë³„ëª…ì„ ì‹œë„í•´ 보십시오."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "유효한 ë³„ëª…ì´ ì•„ë‹™ë‹ˆë‹¤"
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "홈페ì´ì§€ 주소형ì‹ì´ 올바르지 않습니다."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "ì‹¤ëª…ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤. (최대 255글ìž)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
-#, fuzzy, php-format
+#, php-format
msgid "Description is too long (max %d chars)."
-msgstr "ì„¤ëª…ì´ ë„ˆë¬´ 길어요. (최대 140글ìž)"
+msgstr "ì„¤ëª…ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤. (최대 %d 글ìž)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "위치가 너무 ê¹ë‹ˆë‹¤. (최대 255글ìž)"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "유효하지 ì•Šì€íƒœê·¸: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "사용할 수 없는 별명 : \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
-#, fuzzy, php-format
+#, php-format
msgid "Alias \"%s\" already in use. Try another one."
-msgstr "ë³„ëª…ì´ ì´ë¯¸ 사용중 입니다. 다른 ë³„ëª…ì„ ì‹œë„í•´ 보십시오."
+msgstr "별명 \"%s\" ì´ ì´ë¯¸ 사용중 입니다. 다른 ë³„ëª…ì„ ì‹œë„í•´ 보십시오."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
-msgstr "API 메서드를 ì°¾ì„ ìˆ˜ 없습니다."
+msgid "Group not found."
+msgstr "ê·¸ë£¹ì„ ì°¾ì„ ìˆ˜ 없습니다."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
-#, fuzzy
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "ë‹¹ì‹ ì€ ì´ë¯¸ ì´ ê·¸ë£¹ì˜ ë©¤ë²„ìž…ë‹ˆë‹¤."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
-#, fuzzy, php-format
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
msgid "Could not join user %1$s to group %2$s."
-msgstr "그룹 %sì— %s는 가입할 수 없습니다."
+msgstr "ì´ìš©ìž %1$s ì˜ ê·¸ë£¹ %2$s ê°€ìž…ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
-#: actions/apigroupleave.php:114
-#, fuzzy
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "그룹 %sì—ì„œ %s 사용ìžë¥¼ 제거할 수 없습니다."
-#: actions/apigrouplist.php:95
-#, fuzzy, php-format
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
+#, php-format
msgid "%s's groups"
-msgstr "%s 그룹"
+msgstr "%sì˜ ê·¸ë£¹ë“¤"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%s ê·¸ë£¹ë“¤ì€ ì˜ ë©¤ë²„ìž…ë‹ˆë‹¤."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s 그룹"
-#: actions/apigrouplistall.php:94
-#, fuzzy, php-format
+#: actions/apigrouplistall.php:96
+#, php-format
msgid "groups on %s"
-msgstr "그룹 í–‰ë™"
+msgstr "%s ìƒì˜ 그룹들"
+
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "올리기"
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
@@ -515,17 +519,17 @@ msgid "Invalid token."
msgstr "옳지 ì•Šì€ í¬ê¸°"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -538,14 +542,12 @@ msgid "Invalid nickname / password!"
msgstr "ì‚¬ìš©ìž ì´ë¦„ì´ë‚˜ 비밀 번호가 틀렸습니다."
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "ì‚¬ìš©ìž ì„¸íŒ… 오류"
+msgstr "OAuth ì‘용프로그램 ì‚¬ìš©ìž ì‚­ì œ 중 ë°ì´í„°ë² ì´ìŠ¤ 오류"
#: actions/apioauthauthorize.php:185
-#, fuzzy
msgid "Database error inserting OAuth application user."
-msgstr "해쉬테그를 추가 í•  ë•Œì— ë°ì´íƒ€ë² ì´ìŠ¤ ì—러 : %s"
+msgstr "OAuth ì‘ìš© 프로그램 ì‚¬ìš©ìž ì¶”ê°€ 중 ë°ì´í„°ë² ì´ìŠ¤ 오류"
#: actions/apioauthauthorize.php:214
#, php-format
@@ -559,22 +561,25 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "ìž˜ëª»ëœ í¼ ì œì¶œ"
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "ì‘ìš© í”„ë¡œê·¸ëž¨ì´ ê³„ì •ì— ì—°ê²°í•˜ë ¤ê³  í•  것입니다."
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "ì ‘ê·¼ 허용 ë˜ëŠ” 거부"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -583,42 +588,46 @@ msgid ""
"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."
msgstr ""
+"<strong>%2$s</strong>ì˜ ì‘ìš© 프로그램 <strong>%1$s</strong>ì´ %4$s 계정 ì •ë³´"
+"ì— ëŒ€í•´ <strong>%3$s</strong> í•  수 있습니다 .ë¯¿ì„ ìˆ˜ 있는 ì¨ë“œíŒŒí‹°ì—게만 %4"
+"$s ê³„ì •ì˜ ì ‘ê·¼ì„ í—ˆìš©í•´ì•¼ 합니다."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "계정"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "별명"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "비밀 번호"
#: actions/apioauthauthorize.php:328
msgid "Deny"
-msgstr ""
+msgstr "거부"
#: actions/apioauthauthorize.php:334
-#, fuzzy
msgid "Allow"
-msgstr "모든 것"
+msgstr "허용"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "계정 ì •ë³´ì— ëŒ€í•œ ì ‘ê·¼ì„ í—ˆìš© ë˜ëŠ” 거부합니다."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
-msgstr "ì´ ë©”ì„œë“œëŠ” ë“±ë¡ ë˜ëŠ” 삭제를 요구합니다."
+msgstr "ì´ ë©”ì„œë“œëŠ” POST ë˜ëŠ” DELETE를 요구합니다."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "ë‹¹ì‹ ì€ ë‹¤ë¥¸ 사용ìžì˜ ìƒíƒœë¥¼ 삭제하지 ì•Šì•„ë„ ëœë‹¤."
@@ -628,70 +637,70 @@ msgid "No such notice."
msgstr "그러한 통지는 없습니다."
#: actions/apistatusesretweet.php:83
-#, fuzzy
msgid "Cannot repeat your own notice."
-msgstr "ì•Œë¦¼ì„ ì¼¤ 수 없습니다."
+msgstr "ìžê¸° ìžì‹ ì˜ 소ì‹ì€ 재전송할 수 없습니다."
#: actions/apistatusesretweet.php:91
-#, fuzzy
msgid "Already repeated that notice."
-msgstr "ì´ ê²Œì‹œê¸€ 삭제하기"
+msgstr "ì´ë¯¸ ìž¬ì „ì†¡ëœ ì†Œì‹ìž…니다."
-#: actions/apistatusesshow.php:138
-#, fuzzy
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
-msgstr "아바타가 ì—…ë°ì´íŠ¸ ë˜ì—ˆìŠµë‹ˆë‹¤."
+msgstr "ì‚­ì œëœ ì†Œì‹ìž…니다."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "ë°œê²¬ëœ IDì˜ ìƒíƒœê°€ 없습니다."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
-#, fuzzy, php-format
+#, php-format
msgid "That's too long. Max notice size is %d chars."
-msgstr "너무 ê¹ë‹ˆë‹¤. í†µì§€ì˜ ìµœëŒ€ 길ì´ëŠ” 140ê¸€ìž ìž…ë‹ˆë‹¤."
+msgstr "너무 ê¹ë‹ˆë‹¤. í†µì§€ì˜ ìµœëŒ€ 길ì´ëŠ” %d ê¸€ìž ìž…ë‹ˆë‹¤."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "찾지 못함"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "ì°¾ì„ ìˆ˜ê°€ 없습니다."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
-msgstr ""
+msgstr "소ì‹ì˜ 최대 길ì´ëŠ” 첨부 URLì„ í¬í•¨í•˜ì—¬ %d 글ìžìž…니다."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
-#, fuzzy
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
-msgstr "지ì›í•˜ì§€ 않는 그림 íŒŒì¼ í˜•ì‹ìž…니다."
+msgstr "지ì›í•˜ì§€ 않는 형ì‹ìž…니다."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / %sì˜ ì¢‹ì•„í•˜ëŠ” 글들"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s 좋아하는 ê¸€ì´ ì—…ë°ì´íŠ¸ ë습니다. %Sì— ì˜í•´ / %s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / %2$sì—게 답신 ì—…ë°ì´íŠ¸"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$së‹˜ì´ %2$s/%3$sì˜ ì—…ë°ì´íŠ¸ì— 답변했습니다."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s 공개 타임ë¼ì¸"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "모ë‘ë¡œë¶€í„°ì˜ ì—…ë°ì´íŠ¸ %sê°œ!"
@@ -706,24 +715,23 @@ msgstr "%sì— ë‹µì‹ "
msgid "Repeats of %s"
msgstr "%sì— ë‹µì‹ "
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "%s íƒœê·¸ëœ í†µì§€"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "%2$sì— ìžˆëŠ” %1$sì˜ ì—…ë°ì´íŠ¸!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "ì°¾ì„ ìˆ˜ê°€ 없습니다."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API 메서드를 구성중 입니다."
#: actions/attachment.php:73
-#, fuzzy
msgid "No such attachment."
-msgstr "그러한 문서는 없습니다."
+msgstr "해당하는 첨부파ì¼ì´ 없습니다."
#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
@@ -740,20 +748,22 @@ msgstr "사ì´ì¦ˆê°€ 없습니다."
msgid "Invalid size."
msgstr "옳지 ì•Šì€ í¬ê¸°"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "아바타"
#: actions/avatarsettings.php:78
-#, fuzzy, php-format
+#, php-format
msgid "You can upload your personal avatar. The maximum file size is %s."
-msgstr "ë‹¹ì‹ ì˜ ê°œì¸ì ì¸ 아바타를 업로드할 수 있습니다."
+msgstr "ë‹¹ì‹ ì˜ ê°œì¸ ì•„ë°”íƒ€ë¥¼ 업로드할 수 있습니다. 최대 íŒŒì¼ í¬ê¸°ëŠ” %s 입니다."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "프로필 ë§¤ì¹­ì´ ì—†ëŠ” 사용ìž"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -772,7 +782,7 @@ msgid "Preview"
msgstr "미리보기"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "삭제"
@@ -784,65 +794,86 @@ msgstr "올리기"
msgid "Crop"
msgstr "ìžë¥´ê¸°"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "í”„ë¡œí•„ì„ ì§€ì •í•˜ì§€ 않았습니다."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "ë‹¹ì‹ ì˜ ì•„ë°”íƒ€ê°€ ë  ì´ë¯¸ì§€ì˜ì—­ì„ 지정하세요."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "íŒŒì¼ ë°ì´í„°ë¥¼ 잃어버렸습니다."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "아바타가 ì—…ë°ì´íŠ¸ ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "아바타 ì—…ë°ì´íŠ¸ 실패"
-#: actions/avatarsettings.php:393
-#, fuzzy
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
-msgstr "아바타가 ì—…ë°ì´íŠ¸ ë˜ì—ˆìŠµë‹ˆë‹¤."
+msgstr "아바타가 ì‚­ì œë˜ì—ˆìŠµë‹ˆë‹¤."
#: actions/block.php:69
-#, fuzzy
msgid "You already blocked that user."
-msgstr "ë‹¹ì‹ ì€ ì´ë¯¸ ì´ ì‚¬ìš©ìžë¥¼ 차단하고 있습니다."
+msgstr "ì´ë¯¸ ì°¨ë‹¨ëœ ì´ìš©ìžìž…니다."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "사용ìžë¥¼ 차단합니다."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
+"ì •ë§ ì´ìš©ìžë¥¼ 차단하시겠습니까? ì°¨ë‹¨ëœ ì´ìš©ìžëŠ” 구ë…í•´ì œë˜ê³ , ì´í›„ ë‹¹ì‹ ì„ êµ¬"
+"ë…í•  수 없으며, ì°¨ë‹¨ëœ ì´ìš©ìžë¡œë¶€í„° @-ë‹µìž¥ì˜ í†µë³´ë¥¼ 받지 않게 ë©ë‹ˆë‹¤."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "아니오"
-#: actions/block.php:143 actions/deleteuser.php:150
-#, fuzzy
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
-msgstr "ì´ ì‚¬ìš©ìžë¥¼ 차단해제합니다."
+msgstr "ì´ìš©ìžë¥¼ 차단하지 않는다."
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "네, 맞습니다."
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "ì´ ì‚¬ìš©ìž ì°¨ë‹¨í•˜ê¸°"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "ì •ë³´ì°¨ë‹¨ì„ ì €ìž¥í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
@@ -855,8 +886,8 @@ msgstr "ì •ë³´ì°¨ë‹¨ì„ ì €ìž¥í•˜ëŠ”ë° ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "그러한 ê·¸ë£¹ì´ ì—†ìŠµë‹ˆë‹¤."
@@ -876,9 +907,8 @@ msgid "A list of the users blocked from joining this group."
msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸"
#: actions/blockedfromgroup.php:288
-#, fuzzy
msgid "Unblock user from group"
-msgstr "ì‚¬ìš©ìž ì°¨ë‹¨ í•´ì œì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
+msgstr "그룹 ì´ìš©ìžëŠ” 차단해제"
#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
msgid "Unblock"
@@ -888,9 +918,10 @@ msgstr "차단해제"
msgid "Unblock this user"
msgstr "ì´ ì‚¬ìš©ìžë¥¼ 차단해제합니다."
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "사진"
#: actions/confirmaddress.php:75
@@ -905,34 +936,43 @@ msgstr "ì¸ì¦ 코드가 없습니다."
msgid "That confirmation code is not for you!"
msgstr "ê·¸ ì¸ì¦ 코드는 ê·€í•˜ì˜ ê²ƒì´ ì•„ë‹™ë‹ˆë‹¤!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "ì¸ì‹ë˜ì§€ì•Šì€ 주소유형 %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "ê·¸ 주소는 ì´ë¯¸ 승ì¸ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "ì´ë©”ì¼ ìŠ¹ì¸ì„ ì‚­ì œ í•  수 없습니다."
-#: actions/confirmaddress.php:144
-#, fuzzy
+#: actions/confirmaddress.php:146
msgid "Confirm address"
-msgstr "주소 ì¸ì¦"
+msgstr "주소 확ì¸"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "\"%s\" 는 ê·€í•˜ì˜ ê³„ì •ìœ¼ë¡œ 승ì¸ë˜ì—ˆìŠµë‹ˆë‹¤."
@@ -943,7 +983,7 @@ msgid "Conversation"
msgstr "ì¸ì¦ 코드"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "통지"
@@ -965,14 +1005,13 @@ msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "ë‹¹ì‹ ì˜ ì„¸ì…˜í† í°ê´€ë ¨ 문제가 있습니다."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "그러한 통지는 없습니다."
+msgstr "ì‘용프로그램 ì‚­ì œ"
#: actions/deleteapplication.php:149
msgid ""
@@ -981,23 +1020,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "ì´ í†µì§€ë¥¼ 지울 수 없습니다."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "ì´ ê²Œì‹œê¸€ 삭제하기"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "로그ì¸í•˜ê³  있지 않습니다."
@@ -1022,12 +1063,14 @@ msgstr "통지 삭제"
msgid "Are you sure you want to delete this notice?"
msgstr "ì •ë§ë¡œ 통지를 삭제하시겠습니까?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "ì´ í†µì§€ë¥¼ 지울 수 없습니다."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "ì´ ê²Œì‹œê¸€ 삭제하기"
@@ -1042,9 +1085,8 @@ msgid "You can only delete local users."
msgstr "ë‹¹ì‹ ì€ ë‹¤ë¥¸ 사용ìžì˜ ìƒíƒœë¥¼ 삭제하지 ì•Šì•„ë„ ëœë‹¤."
#: actions/deleteuser.php:110 actions/deleteuser.php:133
-#, fuzzy
msgid "Delete user"
-msgstr "삭제"
+msgstr "ì´ìš©ìž ì‚­ì œ"
#: actions/deleteuser.php:136
msgid ""
@@ -1052,136 +1094,151 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "ì´ ê²Œì‹œê¸€ 삭제하기"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
-msgstr ""
+msgstr "ì´ StatusNet 사ì´íŠ¸ì— 대한 ë””ìžì¸ 설정"
-#: actions/designadminpanel.php:275
-#, fuzzy
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
-msgstr "옳지 ì•Šì€ í¬ê¸°"
+msgstr "ìž˜ëª»ëœ ë¡œê³  URL 입니다."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
-msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
+msgid "Theme not available: %s."
+msgstr "테마를 ì´ìš©í•  수 없습니다: %s"
-#: actions/designadminpanel.php:375
-#, fuzzy
+#: actions/designadminpanel.php:426
msgid "Change logo"
-msgstr "비밀번호 바꾸기"
+msgstr "로고 변경"
-#: actions/designadminpanel.php:380
-#, fuzzy
+#: actions/designadminpanel.php:431
msgid "Site logo"
-msgstr "초대"
+msgstr "사ì´íŠ¸ 로고"
-#: actions/designadminpanel.php:387
-#, fuzzy
+#: actions/designadminpanel.php:443
msgid "Change theme"
-msgstr "변환"
+msgstr "테마 바꾸기"
-#: actions/designadminpanel.php:404
-#, fuzzy
+#: actions/designadminpanel.php:460
msgid "Site theme"
-msgstr "사ì´íŠ¸ 공지"
+msgstr "사ì´íŠ¸ 테마"
-#: actions/designadminpanel.php:405
-#, fuzzy
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
-msgstr "ì´ ì‚¬ì´íŠ¸ë¡œë¶€í„° 로그아웃"
+msgstr "사ì´íŠ¸ì— 대한 테마"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
-msgid "Change background image"
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "사ì´íŠ¸ 테마"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
+msgid "Change background image"
+msgstr "ë°°ê²½ ì´ë¯¸ì§€ 바꾸기"
+
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
-msgstr ""
+msgstr "ë°°ê²½"
-#: actions/designadminpanel.php:427
-#, fuzzy, php-format
+#: actions/designadminpanel.php:496
+#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
-msgstr "ë‹¹ì‹ ê·¸ë£¹ì˜ ë¡œê³  ì´ë¯¸ì§€ë¥¼ 업로드할 수 있습니다."
+msgstr ""
+"사ì´íŠ¸ì˜ ë°°ê²½ ì´ë¯¸ì§€ë¥¼ 업로드할 수 있습니다. 최대 íŒŒì¼ í¬ê¸°ëŠ” %1$s 입니다."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
-msgstr ""
+msgstr "켜기"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
-msgstr ""
+msgstr "ë„기"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
-msgstr ""
+msgstr "ë°°ê²½ ì´ë¯¸ì§€ë¥¼ 켜거나 ëˆë‹¤."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
-msgstr ""
+msgstr "ë°°ê²½ ì´ë¯¸ì§€ë¥¼ 반복 나열"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
-#, fuzzy
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
-msgstr "비밀번호 바꾸기"
+msgstr "ìƒ‰ìƒ ë³€ê²½"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "ì—°ê²°"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "검색"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "문ìž"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "로그ì¸"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "저장"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1199,14 +1256,12 @@ msgid "No such document \"%s\""
msgstr "그러한 문서는 없습니다."
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "다른 옵션들"
+msgstr "ì‘ìš© 프로그램 수정"
#: actions/editapplication.php:66
-#, fuzzy
msgid "You must be logged in to edit an application."
-msgstr "ê·¸ë£¹ì„ ë§Œë“¤ê¸° 위해서는 로그ì¸í•´ì•¼ 합니다."
+msgstr "ì‘ìš© 프로그램 ìˆ˜ì •ì„ ìœ„í•´ì„œëŠ” 로그ì¸í•´ì•¼ 합니다."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87
@@ -1253,9 +1308,8 @@ msgid "Organization is required."
msgstr ""
#: actions/editapplication.php:206 actions/newapplication.php:191
-#, fuzzy
msgid "Organization is too long (max 255 chars)."
-msgstr "위치가 너무 ê¹ë‹ˆë‹¤. (최대 255글ìž)"
+msgstr "ê¸°ê´€ëª…ì´ ë„ˆë¬´ ê¹ë‹ˆë‹¤. (최대 255글ìž)"
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
@@ -1285,7 +1339,6 @@ msgstr "ê·¸ë£¹ì„ ë§Œë“¤ê¸° 위해서는 로그ì¸í•´ì•¼ 합니다."
#: actions/editgroup.php:107 actions/editgroup.php:172
#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
-#, fuzzy
msgid "You must be an admin to edit the group."
msgstr "관리ìžë§Œ ê·¸ë£¹ì„ íŽ¸ì§‘í•  수 있습니다."
@@ -1294,15 +1347,21 @@ msgid "Use this form to edit the group."
msgstr "ë‹¤ìŒ ì–‘ì‹ì„ ì´ìš©í•´ ê·¸ë£¹ì„ íŽ¸ì§‘í•˜ì‹­ì‹œì˜¤."
#: actions/editgroup.php:205 actions/newgroup.php:145
-#, fuzzy, php-format
+#, php-format
msgid "description is too long (max %d chars)."
-msgstr "ì„¤ëª…ì´ ë„ˆë¬´ 길어요. (최대 140글ìž)"
+msgstr "ì„¤ëª…ì´ ë„ˆë¬´ 길어요. (최대 %d글ìž)"
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "사용할 수 없는 별명 : \"%s\""
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "ê·¸ë£¹ì„ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "좋아하는 ê²Œì‹œê¸€ì„ ìƒì„±í•  수 없습니다."
@@ -1311,32 +1370,43 @@ msgstr "좋아하는 ê²Œì‹œê¸€ì„ ìƒì„±í•  수 없습니다."
msgid "Options saved."
msgstr "ì˜µì…˜ë“¤ì´ ì €ìž¥ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/emailsettings.php:60
-#, fuzzy
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
-msgstr "ì´ë©”ì¼ ì„¸íŒ…"
+msgstr "ì´ë©”ì¼ ì„¤ì •"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "%%site.name%%ì—ì„œ 어떻게 ì´ë©”ì¼ì„ ë°›ì„지 정하십시오."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "주소"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "ì´ë©”ì¼ ì£¼ì†Œ"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "확ì¸ëœ ìµœì‹ ì˜ ì´ë©”ì¼ ê³„ì •"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "삭제"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1344,108 +1414,142 @@ msgstr ""
"ì´ ì£¼ì†ŒëŠ” ì¸ì¦ 대기중입니다. 수신함(ë˜ëŠ” 스팸함)ì„ í™•ì¸í•˜ì…”ì„œ ì§€ì¹¨ì„ í™•ì¸í•´ "
"주시기 ë°”ëžë‹ˆë‹¤."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "취소"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "ì´ë©”ì¼ ì£¼ì†Œ"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "\"UserName@example.org\" 와 ê°™ì€ ì´ë©”ì¼ ê³„ì •"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "추가"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "ë°›ì€ ì´ë©”ì¼"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "새로운 통지를 올리려면 ì´ ì£¼ì†Œë¡œ ë©”ì¼ì„ 보내십시오/"
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "í¬ìŠ¤íŒ…ì„ ìœ„í•œ 새 ì´ë©”ì¼ ê³„ì •ì˜ ìƒì„±; ì „ ì´ë©”ì¼ ê³„ì •ì€ ì·¨ì†Œ."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "새로운"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "설정"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "새로운 예약 구ë…ì˜ í†µì§€ë¥¼ ì´ë©”ì¼ë¡œ 보내주세요."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "누군가 ë‚´ ê¸€ì„ ì¢‹ì•„í•˜ëŠ” 게시글로 추가했ì„ë•Œ, ì´ë©”ì¼ì„ 보냅니다."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "누군가 내게 비밀메시지를 보냈ì„ë•Œ, ì´ë©”ì¼ì„ 보냅니다."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "누군가 내게 비밀메시지를 보냈ì„ë•Œ, ì´ë©”ì¼ì„ 보냅니다."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "ì¹œêµ¬ë“¤ì´ ë‚´ê²Œ ì´ë©”ì¼ì´ë‚˜ 쪽지를 보낼 수 있ë„ë¡ í—ˆìš©í•©ë‹ˆë‹¤."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "ì´ë©”ì¼ë¡œ 통보를 í¬ìŠ¤íŠ¸ 하길 ì›í•©ë‹ˆë‹¤."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "ì´ë©”ì¼ ì£¼ì†Œë¥¼ 위한 MicroIDì˜ ìƒì„±"
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "ì„¤ì •ì´ ì €ìž¥ë˜ì—ˆìŠµë‹ˆë‹¤."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "싱í¬ì„¤ì •ì´ 저장ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "ì´ë©”ì¼ì´ 추가 ë˜ì§€ 않았습니다."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "ê·¸ ì´ë©”ì¼ ì£¼ì†Œë¥¼ 정규화 í•  수 없습니다."
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "유효한 ì´ë©”ì¼ ì£¼ì†Œê°€ 아닙니다."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "ê·¸ ì´ë©”ì¼ ì£¼ì†ŒëŠ” ì´ë¯¸ ê·€í•˜ì˜ ê²ƒìž…ë‹ˆë‹¤."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "ê·¸ ì´ë©”ì¼ ì£¼ì†ŒëŠ” ì´ë¯¸ 다른 사용ìžì˜ 소유입니다."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "í™•ì¸ ì½”ë“œë¥¼ 추가 í•  수 없습니다."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1453,43 +1557,56 @@ msgstr ""
"추가한 ì´ë©”ì¼ë¡œ ì¸ì¦ 코드를 보냈습니다. 수신함(ë˜ëŠ” 스팸함)ì„ í™•ì¸í•˜ì…”ì„œ 코드"
"와 ì‚¬ìš©ë²•ì„ í™•ì¸í•˜ì—¬ 주시기 ë°”ëžë‹ˆë‹¤."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "취소 í•  ëŒ€ê¸°ì¤‘ì¸ ì¸ì¦ì´ 없습니다."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "옳지 ì•Šì€ ë©”ì‹ ì € 계정 입니다."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "ì¸ì¦ 취소"
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "ê·¸ ì´ë©”ì¼ ì£¼ì†ŒëŠ” ê·€í•˜ì˜ ê²ƒì´ ì•„ë‹™ë‹ˆë‹¤."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "주소가 ì‚­ì œë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "ì´ë©”ì¼ ì£¼ì†Œê°€ 없습니다."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "ì‚¬ìš©ìž ê¸°ë¡ì„ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "ë°›ì€ ì´ë©”ì¼ ê³„ì • ì‚­ì œ"
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "새로운 ì´ë©”ì¼ ì£¼ì†Œê°€ 추가 ë˜ì—ˆìŠµë‹ˆë‹¤."
@@ -1569,9 +1686,8 @@ msgid "No notice."
msgstr "새로운 통지"
#: actions/file.php:42
-#, fuzzy
msgid "No attachments."
-msgstr "그러한 문서는 없습니다."
+msgstr "첨부문서 ì—†ìŒ"
#: actions/file.php:51
#, fuzzy
@@ -1610,19 +1726,18 @@ msgstr "리퀘스트 토í°ì„ 엑세스 토í°ìœ¼ë¡œ 변환 í•  수 없습니ë‹
msgid "Remote service uses unknown version of OMB protocol."
msgstr "OMB í”„ë¡œí† ì½œì˜ ì•Œë ¤ì§€ì§€ ì•Šì€ ë²„ì „"
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "리모트 프로필 ì—…ë°ì´íŠ¸ 오류"
#: actions/getfile.php:79
-#, fuzzy
msgid "No such file."
-msgstr "그러한 통지는 없습니다."
+msgstr "해당하는 파ì¼ì´ 없습니다."
#: actions/getfile.php:83
-#, fuzzy
msgid "Cannot read file."
-msgstr "파ì¼ì„ 잃어버렸습니다."
+msgstr "파ì¼ì„ ì½ì„ 수 없습니다."
#: actions/grantrole.php:62 actions/revokerole.php:62
#, fuzzy
@@ -1645,13 +1760,13 @@ msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "í”„ë¡œí•„ì„ ì§€ì •í•˜ì§€ 않았습니다."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "해당 IDì˜ í”„ë¡œí•„ì´ ì—†ìŠµë‹ˆë‹¤."
@@ -1675,12 +1790,12 @@ msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤."
msgid "User is not a member of group."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "사용ìžë¥¼ 차단합니다."
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1688,17 +1803,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1725,9 +1842,8 @@ msgstr ""
#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
#: lib/designsettings.php:391 lib/designsettings.php:413
-#, fuzzy
msgid "Couldn't update your design."
-msgstr "사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+msgstr "ë””ìžì¸ì„ 수정할 수 없습니다."
#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
#, fuzzy
@@ -1744,15 +1860,9 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "ë‹¹ì‹ ê·¸ë£¹ì˜ ë¡œê³  ì´ë¯¸ì§€ë¥¼ 업로드할 수 있습니다."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "프로필 ë§¤ì¹­ì´ ì—†ëŠ” 사용ìž"
-
#: actions/grouplogo.php:365
-#, fuzzy
msgid "Pick a square area of the image to be the logo."
-msgstr "ë‹¹ì‹ ì˜ ì•„ë°”íƒ€ê°€ ë  ì´ë¯¸ì§€ì˜ì—­ì„ 지정하세요."
+msgstr "ì´ë¯¸ì§€ì—ì„œ 로고로 사용할 ì‚¬ê° ì˜ì—­ì„ 지정하세요."
#: actions/grouplogo.php:399
msgid "Logo updated."
@@ -1780,36 +1890,40 @@ msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸"
msgid "Admin"
msgstr "관리ìž"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "차단하기"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
#, fuzzy
msgid "Make user an admin of the group"
msgstr "관리ìžë§Œ ê·¸ë£¹ì„ íŽ¸ì§‘í•  수 있습니다."
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
#, fuzzy
msgid "Make Admin"
msgstr "관리ìž"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
-msgstr ""
+msgstr "ì´ ì´ìš©ìžë¥¼ 관리ìžë¡œ 만듦"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s 타임ë¼ì¸"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "%2$sì— ìžˆëŠ” %1$sì˜ ì—…ë°ì´íŠ¸!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "그룹"
@@ -1829,7 +1943,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "새 ê·¸ë£¹ì„ ë§Œë“­ë‹ˆë‹¤."
@@ -1879,12 +1993,16 @@ msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤."
msgid "Error removing the block."
msgstr "차단 제거 ì—러!"
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "메신저 설정"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1893,16 +2011,25 @@ msgstr ""
"ë‹¹ì‹ ì€ Jabber나 구글토í¬(%%doc.im%%)를 통해 메시지를 ì£¼ê³ ë°›ì„ ìˆ˜ 있습니다. ì•„"
"래 ë‹¹ì‹ ì˜ ì£¼ì†Œì™€ í™˜ê²½ì„¤ì •ì„ ì¡°ì •í•˜ì„¸ìš”."
-#: actions/imsettings.php:89
-#, fuzzy
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
-msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
+msgstr "ì¸ìŠ¤í„´íŠ¸ 메신저를 사용할 수 없습니다."
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "메신저 주소"
-#: actions/imsettings.php:106
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "확ì¸ëœ ìµœì‹ ì˜ Jabber/GTalk 계정"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1911,12 +2038,9 @@ msgstr ""
"ì´ ì£¼ì†ŒëŠ” ì¸ì¦ 대기 중입니다. Jabber/Gtalkë¡œ 메시지를 확ì¸í•´ 주십시오.(%s í•­"
"ëª©ì„ ì¶”ê°€í•˜ì…¨ìŠµë‹ˆê¹Œ?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "메신저 주소"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1925,44 +2049,66 @@ msgstr ""
"\"UserName@example.org\" 와 ê°™ì€ Jabber ë˜ëŠ” GTalk ê³„ì •ì€ ê·€í•˜ì˜ ë©”ì‹ ì €ë‚˜ "
"GTalk 친구목ë¡ì— 반드시 %s 주소를 추가하여 주십시오."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "설정"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Jabber/GTalk 로 통지를 보내주세요."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Jabber/GTalkì˜ ìƒíƒœê°€ 변경ë˜ì—ˆì„ ë•Œ 통지를 보냅니다."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"ë‚´ê°€ 구ë…하지 않는 사람으로 ë¶€í„°ì˜ ë‹µìž¥ì„ Jabber/GTalkì„ í†µí•´ 보내주세요."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Jabber/GTalk ê³„ì •ì„ ìœ„í•œ MicroIDì˜ ìƒì„±"
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "ì„¤ì •ì´ ì €ìž¥ë˜ì—ˆìŠµë‹ˆë‹¤."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Jabber ID가 아닙니다."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "그 Jabbar ID를 정규화 할 수 없습니다."
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "유효한 Jabber ID가 아닙니다."
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "ê·¸ Jabber ID는 ì´ë¯¸ ê·€í•˜ì˜ ê²ƒìž…ë‹ˆë‹¤."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber IDê°€ ì´ë¯¸ 다른 사용ìžì— ì˜í•˜ì—¬ 사용ë˜ê³  있습니다."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1971,10 +2117,35 @@ msgstr ""
"추가한 메신저 주소로 ì¸ì¦ 코드를 보냈습니다. %s 사용ìžë¥¼ í—ˆë½í•´ì•¼ 메시지를 ì „"
"달할 수 있습니다."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "옳지 ì•Šì€ ë©”ì‹ ì € 계정 입니다."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "ì´ë©”ì¼ ìŠ¹ì¸ì„ ì‚­ì œ í•  수 없습니다."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "ì¸ì¦ 취소"
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "ê·¸ Jabber ID는 ê·€í•˜ì˜ ê²ƒì´ ì•„ë‹™ë‹ˆë‹¤."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "주소가 ì‚­ì œë˜ì—ˆìŠµë‹ˆë‹¤."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1994,8 +2165,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "로그ì¸ì„ 해야 다른 사용ìžë¥¼ %sì— ì´ˆëŒ€í•  수 있습니다."
#: actions/invite.php:72
@@ -2015,7 +2186,9 @@ msgstr "새 사용ìžë¥¼ 초대"
msgid "You are already subscribed to these users:"
msgstr "ë‹¹ì‹ ì€ ë‹¤ìŒ ì‚¬ìš©ìžë¥¼ ì´ë¯¸ 구ë…하고 있습니다."
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2065,12 +2238,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "보내기"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$së‹˜ì´ ê·€í•˜ë¥¼ %2$sì— ì´ˆëŒ€í•˜ì˜€ìŠµë‹ˆë‹¤."
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2131,7 +2306,9 @@ msgstr "ê·¸ë£¹ê°€ìž…ì„ ìœ„í•´ì„œëŠ” 로그ì¸ì´ 필요합니다."
msgid "No nickname or ID."
msgstr "ë³„ëª…ì´ ì—†ìŠµë‹ˆë‹¤."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s 는 그룹 %sì— ê°€ìž…í–ˆìŠµë‹ˆë‹¤."
@@ -2140,60 +2317,66 @@ msgstr "%s 는 그룹 %sì— ê°€ìž…í–ˆìŠµë‹ˆë‹¤."
msgid "You must be logged in to leave a group."
msgstr "ê·¸ë£¹ì„ ë– ë‚˜ê¸° 위해서는 로그ì¸í•´ì•¼ 합니다."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s가 그룹%s를 떠났습니다."
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "ì´ë¯¸ ë¡œê·¸ì¸ í•˜ì…¨ìŠµë‹ˆë‹¤."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "틀린 계정 ë˜ëŠ” 비밀 번호"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "ì¸ì¦ì´ ë˜ì§€ 않았습니다."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "로그ì¸"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "사ì´íŠ¸ì— 로그ì¸í•˜ì„¸ìš”."
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "ìžë™ 로그ì¸"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "앞으로는 ìžë™ìœ¼ë¡œ 로그ì¸í•©ë‹ˆë‹¤. 공용 컴퓨터ì—서는 ì´ìš©í•˜ì§€ 마십시오!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "비밀 번호를 잊으셨나요?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
"ë³´ì•ˆì„ ìœ„í•´ ì„¸íŒ…ì„ ì €ìž¥í•˜ê¸° ì „ì— ê³„ì •ê³¼ 비밀 번호를 다시 ìž…ë ¥ í•´ 주십시오."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "ì‚¬ìš©ìž ì´ë¦„ê³¼ 비밀번호로 로그ì¸"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"ê·€í•˜ì˜ ê³„ì •ê³¼ 비밀 번호로 ë¡œê·¸ì¸ í•˜ì„¸ìš”. ê³„ì •ì´ ì•„ì§ ì—†ìœ¼ì„¸ìš”? [가입](%%"
"action.register%%) 새 ê³„ì •ì„ ìƒì„± ë˜ëŠ” [OpenID](%%action.openidlogin%%)를 사"
@@ -2219,13 +2402,13 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "관리ìžë§Œ ê·¸ë£¹ì„ íŽ¸ì§‘í•  수 있습니다."
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "현재 ìƒíƒœê°€ 없습니다."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "그러한 통지는 없습니다."
+msgstr "ì‹ ê·œ ì‘ìš© 프로그램"
#: actions/newapplication.php:64
#, fuzzy
@@ -2258,12 +2441,12 @@ msgstr "새 ê·¸ë£¹ì„ ë§Œë“¤ê¸° 위해 ì´ ì–‘ì‹ì„ 사용하세요."
msgid "New message"
msgstr "새로운 메시지입니다."
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "ë‹¹ì‹ ì€ ì´ ì‚¬ìš©ìžì—게 메시지를 보낼 수 없습니다."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤!"
@@ -2271,7 +2454,7 @@ msgstr "ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤!"
msgid "No recipient specified."
msgstr "수신ìžë¥¼ 지정하지 않았습니다."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2287,7 +2470,7 @@ msgstr "메시지"
msgid "Direct message to %s sent."
msgstr "%sì—게 보낸 ì§ì ‘ 메시지"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax ì—러입니다."
@@ -2295,7 +2478,7 @@ msgstr "Ajax ì—러입니다."
msgid "New notice"
msgstr "새로운 통지"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "ê²Œì‹œê¸€ì´ ë“±ë¡ë˜ì—ˆìŠµë‹ˆë‹¤."
@@ -2342,8 +2525,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "\"%s\" ì— ì¼ì¹˜í•˜ëŠ” 모든 ì—…ë°ì´íŠ¸"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"ì´ ì‚¬ìš©ìžëŠ” nudge를 허용하지 않았고, ì•„ì§ ê·¸ì˜ ì´ë©”ì¼ì„ ì¸ì¦í•˜ì§€ 않았습니다."
@@ -2380,7 +2564,7 @@ msgstr ""
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "ë‹¤ìŒ ì‘ìš© í”„ë¡œê·¸ëž¨ì´ ê³„ì •ì— ì ‘ê·¼í•˜ë„ë¡ í—ˆìš©ë˜ì–´ 있습니다."
#: actions/oauthconnectionssettings.php:175
#, fuzzy
@@ -2388,11 +2572,11 @@ msgid "You are not a user of that application."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2400,26 +2584,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "í†µì§€ì— í”„ë¡œí•„ì´ ì—†ìŠµë‹ˆë‹¤."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$sì˜ ìƒíƒœ (%2$sì—ì„œ)"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "ì—°ê²°"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "지ì›í•˜ëŠ” 형ì‹ì˜ ë°ì´í„°ê°€ 아닙니다."
@@ -2529,7 +2718,7 @@ msgid "6 or more characters"
msgstr "6ê¸€ìž ì´ìƒ"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "ì¸ì¦"
@@ -2541,11 +2730,11 @@ msgstr "위와 ê°™ì€ ë¹„ë°€ 번호"
msgid "Change"
msgstr "변환"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "비밀번호는 6ìžë¦¬ ì´ìƒì´ì–´ì•¼ 합니다."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "비밀 번호가 ì¼ì¹˜í•˜ì§€ 않습니다."
@@ -2557,7 +2746,7 @@ msgstr "기존 비밀 번호가 틀렸습니다"
msgid "Error saving user; invalid."
msgstr "ì‚¬ìš©ìž ì €ìž¥ 오류; 무효한 사용ìž"
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "새 비밀번호를 저장 할 수 없습니다."
@@ -2566,7 +2755,7 @@ msgid "Password saved."
msgstr "비밀 번호 저장"
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2576,23 +2765,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "아바타 ë””ë ‰í† ë¦¬ì— ì“¸ 수 없습니다 : %s"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "아바타 ë””ë ‰í† ë¦¬ì— ì“¸ 수 없습니다 : %s"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2639,7 +2828,7 @@ msgstr ""
#: actions/pathsadminpanel.php:259
msgid "Theme"
-msgstr ""
+msgstr "테마"
#: actions/pathsadminpanel.php:264
msgid "Theme server"
@@ -2710,7 +2899,7 @@ msgstr ""
#: actions/pathsadminpanel.php:329
msgid "Use SSL"
-msgstr ""
+msgstr "SSL 사용"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
@@ -2743,18 +2932,19 @@ msgstr ""
msgid "People search"
msgstr "사람 찾기"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "유효한 태그가 아닙니다: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "ì´ìš©ìž 셀프 í…Œí¬ %s - %d 페ì´ì§€"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "옳지 ì•Šì€ í†µì§€ ë‚´ìš©"
#: actions/postnotice.php:101
@@ -2781,43 +2971,44 @@ msgstr "프로필 정보"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64ìž ì‚¬ì´ì— ì˜ì†Œë¬¸ìž, 숫ìžë¡œë§Œ ì”니다. 기호나 ê³µë°±ì„ ì“°ë©´ 안 ë©ë‹ˆë‹¤."
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "실명"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "홈페ì´ì§€"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "ê·€í•˜ì˜ í™ˆíŽ˜ì´ì§€, 블로그 í˜¹ì€ ë‹¤ë¥¸ 사ì´íŠ¸ì˜ 프로필 페ì´ì§€ URL"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "140ìž ì´ë‚´ì—ì„œ ìžê¸° 소개"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "ë‹¹ì‹ ì— ëŒ€í•´ 소개해주세요."
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "ìžê¸°ì†Œê°œ"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "위치"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "ë‹¹ì‹ ì€ ì–´ë””ì— ì‚½ë‹ˆê¹Œ? \"ì‹œ, ë„ (or êµ°,구), 나ë¼"
@@ -2827,7 +3018,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "태그"
@@ -2857,7 +3048,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "나ì—게 구ë…하는 사람ì—게 ìžë™ êµ¬ë… ì‹ ì²­"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "ìžê¸°ì†Œê°œê°€ 너무 ê¹ë‹ˆë‹¤. (최대 140글ìž)"
@@ -2899,7 +3090,7 @@ msgstr "설정 저장"
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2936,6 +3127,7 @@ msgid ""
"This is the public timeline for %%site.name%% but no one has posted anything "
"yet."
msgstr ""
+"%%site.name%% ì˜ ê³µê°œ 타임ë¼ì¸ì´ì§€ë§Œ, ì•„ì§ ì•„ë¬´ë„ ê¸€ì„ ì“°ì§€ 않았습니다."
#: actions/public.php:191
msgid "Be the first to post!"
@@ -2982,7 +3174,7 @@ msgstr ""
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
-msgstr ""
+msgstr "ê¸€ì„ ì˜¬ë¦° 첫번째 ì‚¬ëžŒì´ ë˜ì„¸ìš”!"
#: actions/publictagcloud.php:75
#, php-format
@@ -3057,7 +3249,7 @@ msgstr "비밀 번호 초기화"
msgid "Recover password"
msgstr "비밀 번호 복구"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "비밀 번호 복구가 요청ë˜ì—ˆìŠµë‹ˆë‹¤."
@@ -3077,127 +3269,142 @@ msgstr "초기화"
msgid "Enter a nickname or email address."
msgstr "별명ì´ë‚˜ ì´ë©”ì¼ ê³„ì •ì„ ìž…ë ¥í•˜ì‹­ì‹œì˜¤."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "그러한 ì´ë©”ì¼ ì£¼ì†Œë‚˜ ê³„ì •ì„ ê°€ì§„ 사용ìžëŠ” 없습니다."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "ê·¸ 사용ìžëŠ” 등ë¡ëœ ë©”ì¼ì£¼ì†Œê°€ 없습니다."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "주소 í™•ì¸ ì €ìž¥ ì—러"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr "가입하신 ì´ë©”ì¼ë¡œ 비밀 번호 ìž¬ë°œê¸‰ì— ê´€í•œ 안내를 보냈습니다."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "ìž˜ëª»ëœ ë¹„ë°€ 번호 지정"
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "비밀 번호는 6ìž ì´ìƒì´ì–´ì•¼ 합니다."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "비밀 번호가 ì¼ì¹˜í•˜ì§€ 않습니다."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "ì‚¬ìš©ìž ì„¸íŒ… 오류"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
"새로운 비밀 번호를 성공ì ìœ¼ë¡œ 저장했습니다. 귀하는 ì´ì œ ë¡œê·¸ì¸ ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "죄송합니다. 단지 ì´ˆëŒ€ëœ ì‚¬ëžŒë“¤ë§Œ 등ë¡í•  수 있습니다."
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "í™•ì¸ ì½”ë“œ 오류"
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "íšŒì› ê°€ìž…ì´ ì„±ê³µì ìž…니다."
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "회ì›ê°€ìž…"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "ê°€ìž…ì´ í—ˆìš©ë˜ì§€ 않습니다."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "ë¼ì´ì„ ìŠ¤ì— ë™ì˜í•˜ì§€ 않는다면 등ë¡í•  수 없습니다."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "ì´ë©”ì¼ ì£¼ì†Œê°€ ì´ë¯¸ 존재 합니다."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "ì‚¬ìš©ìž ì´ë¦„ì´ë‚˜ 비밀 번호가 틀렸습니다."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64ìž ì‚¬ì´ì— ì˜ì†Œë¬¸ìž, 숫ìžë¡œë§Œ ì”니다. 기호나 ê³µë°±ì„ ì“°ë©´ 안 ë©ë‹ˆë‹¤. 필수 "
"ìž…ë ¥."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6ê¸€ìž ì´ìƒì´ 필요합니다."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "위와 ê°™ì€ ë¹„ë°€ 번호. 필수 사항."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "ì´ë©”ì¼"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "ì—…ë°ì´íŠ¸ë‚˜ 공지, 비밀번호 ì°¾ê¸°ì— ì‚¬ìš©í•˜ì„¸ìš”."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "ë”ìš± 긴 ì´ë¦„ì„ ìš”êµ¬í•©ë‹ˆë‹¤."
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "ë‚˜ì˜ ê¸€ê³¼ 파ì¼ì˜ ë¼ì´ì„ ìŠ¤ëŠ” 다ìŒê³¼ 같습니다 "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr "ë‹¤ìŒ ê°œì¸ì •ë³´ 제외: 비밀 번호, ë©”ì¼ ì£¼ì†Œ, 메신저 주소, ì „í™” 번호"
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3230,7 +3437,7 @@ msgstr ""
"\n"
"다시 한번 가입하신 ê²ƒì„ í™˜ì˜í•˜ë©´ì„œ ì¦ê±°ìš´ 서비스가 ë˜ì…¨ìœ¼ë©´ 합니다."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3275,7 +3482,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "다른 마ì´í¬ë¡œë¸”로깅 ì„œë¹„ìŠ¤ì˜ ê·€í•˜ì˜ í”„ë¡œí•„ URL"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "구ë…"
@@ -3309,24 +3516,21 @@ msgid "No notice specified."
msgstr "í”„ë¡œí•„ì„ ì§€ì •í•˜ì§€ 않았습니다."
#: actions/repeat.php:76
-#, fuzzy
msgid "You can't repeat your own notice."
-msgstr "ë¼ì´ì„ ìŠ¤ì— ë™ì˜í•˜ì§€ 않는다면 등ë¡í•  수 없습니다."
+msgstr "ìžì‹ ì˜ ê¸€ì€ ìž¬ì „ì†¡í•  수 없습니다."
#: actions/repeat.php:90
#, fuzzy
msgid "You already repeated that notice."
msgstr "ë‹¹ì‹ ì€ ì´ë¯¸ ì´ ì‚¬ìš©ìžë¥¼ 차단하고 있습니다."
-#: actions/repeat.php:114 lib/noticelist.php:674
-#, fuzzy
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
-msgstr "ìƒì„±"
+msgstr "재전송ë¨"
#: actions/repeat.php:119
-#, fuzzy
msgid "Repeated!"
-msgstr "ìƒì„±"
+msgstr "재전송ë¨!"
#: actions/replies.php:126 actions/repliesrss.php:68
#: lib/personalgroupnav.php:105
@@ -3355,11 +3559,11 @@ msgid "Replies feed for %s (Atom)"
msgstr "%sì˜ í†µì§€ 피드"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
-msgstr ""
+"notice to them yet."
+msgstr "%s ë° ì¹œêµ¬ë“¤ì˜ íƒ€ìž„ë¼ì¸ì´ì§€ë§Œ, ì•„ì§ ì•„ë¬´ë„ ê¸€ì„ ìž‘ì„±í•˜ì§€ 않았습니다."
#: actions/replies.php:204
#, php-format
@@ -3371,8 +3575,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3390,15 +3594,14 @@ msgstr "ë‹¹ì‹ ì€ ì´ ì‚¬ìš©ìžì—게 메시지를 보낼 수 없습니다."
msgid "User doesn't have this role."
msgstr "프로필 ë§¤ì¹­ì´ ì—†ëŠ” 사용ìž"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "아바타가 ì—…ë°ì´íŠ¸ ë˜ì—ˆìŠµë‹ˆë‹¤."
#: actions/sandbox.php:65 actions/unsandbox.php:65
-#, fuzzy
msgid "You cannot sandbox users on this site."
-msgstr "ë‹¹ì‹ ì€ ì´ ì‚¬ìš©ìžì—게 메시지를 보낼 수 없습니다."
+msgstr "ì´ ì‚¬ì´íŠ¸ì˜ ì´ìš©ìžì— 대해 권한정지 í•  수 없습니다."
#: actions/sandbox.php:72
#, fuzzy
@@ -3407,7 +3610,7 @@ msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3447,28 +3650,32 @@ msgstr "ê·¸ë£¹ì„ ë– ë‚˜ê¸° 위해서는 로그ì¸í•´ì•¼ 합니다."
msgid "Application profile"
msgstr "í†µì§€ì— í”„ë¡œí•„ì´ ì—†ìŠµë‹ˆë‹¤."
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "별명"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "페ì´ì§€ìˆ˜"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "설명"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "통계"
@@ -3553,16 +3760,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3579,68 +3786,68 @@ msgstr "%s 그룹"
msgid "%1$s group, page %2$d"
msgstr "%s 그룹 회ì›, %d페ì´ì§€"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "그룹 프로필"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "설명"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "그룹 í–‰ë™"
-#: actions/showgroup.php:337
-#, fuzzy, php-format
+#: actions/showgroup.php:338
+#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드"
+msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드 (RSS 1.0)"
-#: actions/showgroup.php:343
-#, fuzzy, php-format
+#: actions/showgroup.php:344
+#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드"
+msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드 (RSS 2.0)"
-#: actions/showgroup.php:349
-#, fuzzy, php-format
+#: actions/showgroup.php:350
+#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드"
+msgstr "%s ê·¸ë£¹ì„ ìœ„í•œ 공지피드 (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "%sì˜ ë³´ë‚¸ìª½ì§€í•¨"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "회ì›"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(없습니다.)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "모든 회ì›"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "ìƒì„±"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3650,7 +3857,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3661,7 +3868,7 @@ msgstr ""
"**%s** 는 %%%%site.name%%%% [마ì´í¬ë¡œë¸”로깅)(http://en.wikipedia.org/wiki/"
"Micro-blogging)ì˜ ì‚¬ìš©ìž ê·¸ë£¹ìž…ë‹ˆë‹¤. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
#, fuzzy
msgid "Admins"
msgstr "관리ìž"
@@ -3734,12 +3941,14 @@ msgid ""
"Seen anything interesting recently? You haven't posted any notices yet, now "
"would be a good time to start :)"
msgstr ""
+"ìµœê·¼ì— ìž¬ë¯¸ìžˆëŠ” ì¼ë“¤ì´ 있었나요? ì•„ì§ ì˜¬ë¦° ê¸€ì´ ì—†ëŠë°, 지금 시작해 ë³´ë©´ ì–´ë–¨"
+"까요. :)"
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3795,11 +4004,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3894,7 +4103,7 @@ msgid "Unable to save site notice."
msgstr "트위터 í™˜ê²½ì„¤ì •ì„ ì €ìž¥í•  수 없습니다."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3911,48 +4120,78 @@ msgstr ""
msgid "Save site notice"
msgstr "사ì´íŠ¸ 공지"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "SMS 세팅"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"ë‹¹ì‹ ì€ %%site.name%% 로부터 ì´ë©”ì¼ì„ 통해 SMS메시지를 ë°›ì„ ìˆ˜ 있습니다."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "메신저 주소"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "확ì¸ëœ ìµœì‹ ì˜ SMSê°€ 가능한 íœ´ëŒ€í° ë²ˆí˜¸"
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "ì´ ì „í™” 번호는 ì¸ì¦ 대기중입니다."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "ì¸ì¦ 코드"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "휴대í°ìœ¼ë¡œ 받으신 ì¸ì¦ë²ˆí˜¸ë¥¼ 입력하십시오."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "ì¸ì¦"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "SMS íœ´ëŒ€í° ë²ˆí˜¸"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "지역번호와 함께 ë„어쓰기 ì—†ì´ ë²ˆí˜¸ë¥¼ ì ì–´ 주세요."
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "설정"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3960,23 +4199,34 @@ msgstr ""
"통지를 SMSë¡œ 보내주세요; 물론 통신사로부터 바가지 ìš”ê¸ˆì„ ë¬¸ë‹¤ëŠ” ê²ƒì€ ì•Œê³  있"
"습니다."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "ì„¤ì •ì´ ì €ìž¥ë˜ì—ˆìŠµë‹ˆë‹¤."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "íœ´ëŒ€í° ë²ˆí˜¸ê°€ 없습니다."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "통신회사가 ì„ íƒ ë˜ì§€ 않았습니다."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "ê·¸ íœ´ëŒ€í° ë²ˆí˜¸ëŠ” ì´ë¯¸ ê·€í•˜ì˜ ê²ƒìž…ë‹ˆë‹¤."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "ê·¸ íœ´ëŒ€í° ë²ˆí˜¸ëŠ” ì´ë¯¸ 다른 사용ìžì˜ 것입니다."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -3985,36 +4235,56 @@ msgstr ""
"추가한 휴대í°ìœ¼ë¡œ ì¸ì¦ 코드를 보냈습니다. 수신함(ë˜ëŠ” 스팸함)ì„ í™•ì¸í•˜ì…”ì„œ ì½”"
"드와 ì‚¬ìš©ë²•ì„ í™•ì¸í•˜ì—¬ 주시기 ë°”ëžë‹ˆë‹¤."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "옳지 ì•Šì€ ì¸ì¦ 번호 입니다."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "ì¸ì¦ 취소"
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "ê·¸ íœ´ëŒ€í° ë²ˆí˜¸ëŠ” ê·€í•˜ì˜ ê²ƒì´ ì•„ë‹™ë‹ˆë‹¤."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS íœ´ëŒ€í° ë²ˆí˜¸"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "휴대전화 사업ìž"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "통신 회사를 ì„ íƒ í•˜ì„¸ìš”."
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr "ê·€í•˜ì˜ íœ´ëŒ€í°ì˜ 통신회사는 무엇입니까?"
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "코드가 ìž…ë ¥ ë˜ì§€ 않았습니다."
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4036,7 +4306,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4076,8 +4346,8 @@ msgstr "아바타 설정"
msgid "You are not subscribed to that profile."
msgstr "ë‹¹ì‹ ì€ ì´ í”„ë¡œí•„ì— êµ¬ë…ë˜ì§€ 않고있습니다."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "구ë…ì„ ì €ìž¥í•  수 없습니다."
@@ -4170,11 +4440,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s 는 지금 듣고 있습니다."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4208,12 +4478,12 @@ msgstr "id ì¸ìžê°€ 없습니다."
msgid "Tag %s"
msgstr "태그 %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "ì´ìš©ìž 프로필"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "사진"
@@ -4247,10 +4517,6 @@ msgstr "ë‹¹ì‹ ì˜ êµ¬ë…ìžë‚˜ 구ë…하는 ì‚¬ëžŒì— íƒœê¹…ì„ ìœ„í•´ ì´ ì–‘ì‹
msgid "No such tag."
msgstr "그러한 태그가 없습니다."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API 메서드를 구성중 입니다."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4267,7 +4533,8 @@ msgid "User is not silenced."
msgstr "ì´ìš©ìžê°€ í”„ë¡œí•„ì„ ê°€ì§€ê³  있지 않습니다."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "요청한 프로필id가 없습니다."
#: actions/unsubscribe.php:98
@@ -4304,7 +4571,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "프로필"
@@ -4368,7 +4636,7 @@ msgstr ""
"사용ìžì˜ 통지를 구ë…하려면 ìƒì„¸ë¥¼ 확ì¸í•´ 주세요. 구ë…하지 않는 경우는, \"취소"
"\"를 í´ë¦­í•´ 주세요."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
#, fuzzy
msgid "License"
msgstr "ë¼ì´ì„ ìŠ¤"
@@ -4473,49 +4741,55 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "%s 그룹 회ì›, %d페ì´ì§€"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
#, fuzzy
msgid "Search for more groups"
msgstr "프로필ì´ë‚˜ í…스트 검색"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "%2$sì— ìžˆëŠ” %1$sì˜ ì—…ë°ì´íŠ¸!"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "통계"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4523,7 +4797,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4531,103 +4805,151 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
-#, fuzzy
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
-msgstr "ê°œì¸ì ì¸"
+msgstr "버젼"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
#, fuzzy
+msgid "Invalid filename."
+msgstr "옳지 ì•Šì€ í¬ê¸°"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
-msgstr "그룹 프로필"
+msgstr "ê·¸ë£¹ì— ê°€ìž…í•˜ì§€ 못했습니다."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "ê·¸ë£¹ì„ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "그룹 프로필"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "ê·¸ë£¹ì„ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: classes/Login_token.php:76
-#, fuzzy, php-format
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
msgid "Could not create login token for %s"
-msgstr "OpenID를 작성 할 수 없습니다 : %s"
+msgstr "%s ì— ëŒ€í•œ ë¡œê·¸ì¸ í† í°ì„ 만들 수 없습니다."
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
-#: classes/Message.php:45
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "ì§ì ‘ 메시지 보내기 오류."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "메시지를 삽입할 수 없습니다."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "새 URI와 함께 메시지를 ì—…ë°ì´íŠ¸í•  수 없습니다."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "해쉬테그를 추가 í•  ë•Œì— ë°ì´íƒ€ë² ì´ìŠ¤ ì—러 : %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "게시글 저장문제. ì•Œë ¤ì§€ì§€ì•Šì€ íšŒì›"
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"너무 ë§Žì€ ê²Œì‹œê¸€ì´ ë„ˆë¬´ 빠르게 올ë¼ì˜µë‹ˆë‹¤. 한숨고르고 ëª‡ë¶„í›„ì— ë‹¤ì‹œ í¬ìŠ¤íŠ¸ë¥¼ "
"해보세요."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
#, fuzzy
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
@@ -4636,238 +4958,303 @@ msgstr ""
"너무 ë§Žì€ ê²Œì‹œê¸€ì´ ë„ˆë¬´ 빠르게 올ë¼ì˜µë‹ˆë‹¤. 한숨고르고 ëª‡ë¶„í›„ì— ë‹¤ì‹œ í¬ìŠ¤íŠ¸ë¥¼ "
"해보세요."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "ì´ ì‚¬ì´íŠ¸ì— 게시글 í¬ìŠ¤íŒ…으로부터 ë‹¹ì‹ ì€ ê¸ˆì§€ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "ì´ìš©ìžê°€ í”„ë¡œí•„ì„ ê°€ì§€ê³  있지 않습니다."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "트위터 í™˜ê²½ì„¤ì •ì„ ì €ìž¥í•  수 없습니다."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "ì´ íšŒì›ì€ 구ë…으로부터 ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ë‹¤."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "회ì›ì´ ë‹¹ì‹ ì„ ì°¨ë‹¨í•´ì™”ìŠµë‹ˆë‹¤."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "구ë…하고 있지 않습니다!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "예약 구ë…ì„ ì‚­ì œ í•  수 없습니다."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "예약 구ë…ì„ ì‚­ì œ í•  수 없습니다."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "예약 구ë…ì„ ì‚­ì œ í•  수 없습니다."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "%2$sì—ì„œ %1$s까지 메시지"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "새 ê·¸ë£¹ì„ ë§Œë“¤ 수 없습니다."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "그룹 ë§´ë²„ì‹­ì„ ì„¸íŒ…í•  수 없습니다."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "그룹 ë§´ë²„ì‹­ì„ ì„¸íŒ…í•  수 없습니다."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "구ë…ì„ ì €ìž¥í•  수 없습니다."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "프로필 세팅 바꾸기"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "아바타를 업로드하세요."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "비밀번호 바꾸기"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "ì´ë©”ì¼ ì²˜ë¦¬ 변경"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "ì´ìš©ìž 프로필"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "기타"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "다른 옵션들"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "기타"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "제목없는 페ì´ì§€"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "주 사ì´íŠ¸ 네비게ì´ì…˜"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "ê°œì¸ í”„ë¡œí•„ê³¼ 친구 타임ë¼ì¸"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "ê°œì¸ì ì¸"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "ë‹¹ì‹ ì˜ ì´ë©”ì¼, 아바타, 비밀 번호, í”„ë¡œí•„ì„ ë³€ê²½í•˜ì„¸ìš”."
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "ì„œë²„ì— ìž¬ì ‘ì† í•  수 없습니다 : %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "ì—°ê²°"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "주 사ì´íŠ¸ 네비게ì´ì…˜"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "관리ìž"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "%sì— ì¹œêµ¬ë¥¼ 가입시키기 위해 친구와 ë™ë£Œë¥¼ 초대합니다."
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "초대"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "ì´ ì‚¬ì´íŠ¸ë¡œë¶€í„° 로그아웃"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "로그아웃"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "계정 만들기"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "회ì›ê°€ìž…"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "ì´ ì‚¬ì´íŠ¸ 로그ì¸"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "로그ì¸"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "ë„ì›€ì´ í•„ìš”í•´!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "ë„움ë§"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "프로필ì´ë‚˜ í…스트 검색"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4875,74 +5262,88 @@ msgstr "검색"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "사ì´íŠ¸ 공지"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "로컬 뷰"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "페ì´ì§€ 공지"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "ë³´ì¡° 사ì´íŠ¸ 네비게ì´ì…˜"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "ë„움ë§"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "ì •ë³´"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "ìžì£¼ 묻는 질문"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "ê°œì¸ì •ë³´ 취급방침"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "소스 코드"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "ì—°ë½í•˜ê¸°"
-#: lib/action.php:771
+#: lib/action.php:794
#, fuzzy
msgid "Badge"
msgstr "찔러 보기"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "ë¼ì½”니카 소프트웨어 ë¼ì´ì„ ìŠ¤"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** 는 [%%site.broughtby%%](%%site.broughtbyurl%%)가 제공하는 "
"마ì´í¬ë¡œë¸”로깅서비스입니다."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** 는 마ì´í¬ë¡œë¸”로깅서비스입니다."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4953,70 +5354,84 @@ msgstr ""
"ì„ ì‚¬ìš©í•©ë‹ˆë‹¤. StatusNet는 [GNU Affero General Public License](http://www."
"fsf.org/licensing/licenses/agpl-3.0.html) ë¼ì´ì„ ìŠ¤ì— ë”°ë¼ ì‚¬ìš©í•  수 있습니다."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "ë¼ì½”니카 소프트웨어 ë¼ì´ì„ ìŠ¤"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "모든 것"
-
-#: lib/action.php:853
-msgid "license."
-msgstr "ë¼ì´ì„ ìŠ¤"
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "페ì´ì§€ìˆ˜"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "ë’· 페ì´ì§€"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "ì•ž 페ì´ì§€"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "ë‹¹ì‹ ì€ ì´ ì‚¬ìš©ìžì—게 메시지를 보낼 수 없습니다."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "ê°€ìž…ì´ í—ˆìš©ë˜ì§€ 않습니다."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5028,167 +5443,205 @@ msgstr "ëª…ë ¹ì´ ì•„ì§ ì‹¤í–‰ë˜ì§€ 않았습니다."
msgid "saveSettings() not implemented."
msgstr "ëª…ë ¹ì´ ì•„ì§ ì‹¤í–‰ë˜ì§€ 않았습니다."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "트위터 í™˜ê²½ì„¤ì •ì„ ì €ìž¥í•  수 없습니다."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "ì´ë©”ì¼ ì£¼ì†Œ 확ì¸ì„œ"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "초대"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "SMS ì¸ì¦"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "ê°œì¸ì ì¸"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "SMS ì¸ì¦"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "ì´ìš©ìž"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS ì¸ì¦"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS ì¸ì¦"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "SMS ì¸ì¦"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "사ì´íŠ¸ 공지"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS ì¸ì¦"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "140글ìžë¡œ 그룹ì´ë‚˜ 토픽 설명하기"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "140글ìžë¡œ 그룹ì´ë‚˜ 토픽 설명하기"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "소스 코드"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "그룹 í˜¹ì€ í† í”½ì˜ í™ˆíŽ˜ì´ì§€ë‚˜ 블로그 URL"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "소스 코드"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "그룹 í˜¹ì€ í† í”½ì˜ í™ˆíŽ˜ì´ì§€ë‚˜ 블로그 URL"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "취소"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "삭제"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "프로필"
@@ -5201,47 +5654,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "비밀번호 변경"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "비밀번호 변경"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "실행결과"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "실행 완료"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "실행 실패"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "죄송합니다. ì´ ëª…ë ¹ì€ ì•„ì§ ì‹¤í–‰ë˜ì§€ 않았습니다."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "해당 idì˜ í”„ë¡œí•„ì´ ì—†ìŠµë‹ˆë‹¤."
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "ì´ìš©ìžì˜ 지ì†ì ì¸ ê²Œì‹œê¸€ì´ ì—†ìŠµë‹ˆë‹¤."
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "ì´ ì´ë©”ì¼ ì£¼ì†Œë¡œ 사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "ì´ ì´ë©”ì¼ ì£¼ì†Œë¡œ 사용ìžë¥¼ ì—…ë°ì´íŠ¸ í•  수 없습니다."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "죄송합니다. ì´ ëª…ë ¹ì€ ì•„ì§ ì‹¤í–‰ë˜ì§€ 않았습니다."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "찔러 보기를 보냈습니다."
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5249,200 +5722,204 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "해당 idì˜ í”„ë¡œí•„ì´ ì—†ìŠµë‹ˆë‹¤."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "ì´ìš©ìžì˜ 지ì†ì ì¸ ê²Œì‹œê¸€ì´ ì—†ìŠµë‹ˆë‹¤."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "ê²Œì‹œê¸€ì´ ì¢‹ì•„í•˜ëŠ” 글로 지정ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "ë‹¹ì‹ ì€ ì´ë¯¸ ì´ ê·¸ë£¹ì˜ ë©¤ë²„ìž…ë‹ˆë‹¤."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "그룹 %sì— %s는 가입할 수 없습니다."
+msgid "Could not join user %1$s to group %2$s"
+msgstr "ì´ìš©ìž %1$s ì˜ ê·¸ë£¹ %2$s ê°€ìž…ì— ì‹¤íŒ¨í–ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s 는 그룹 %sì— ê°€ìž…í–ˆìŠµë‹ˆë‹¤."
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
msgstr "그룹 %sì—ì„œ %s 사용ìžë¥¼ 제거할 수 없습니다."
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s가 그룹%s를 떠났습니다."
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "ì „ì²´ì´ë¦„: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "위치: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "홈페ì´ì§€: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "ìžê¸°ì†Œê°œ: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "ë‹¹ì‹ ì´ ë³´ë‚¸ 메시지가 너무 길어요. 최대 140글ìžê¹Œì§€ìž…니다."
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "%sì—게 보낸 ì§ì ‘ 메시지"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "ì§ì ‘ 메시지 보내기 오류."
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "ì•Œë¦¼ì„ ì¼¤ 수 없습니다."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "ì´ ê²Œì‹œê¸€ 삭제하기"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "ê²Œì‹œê¸€ì´ ë“±ë¡ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "ë‹¹ì‹ ì´ ë³´ë‚¸ 메시지가 너무 길어요. 최대 140글ìžê¹Œì§€ìž…니다."
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "통지를 ì €ìž¥í•˜ëŠ”ë° ë¬¸ì œê°€ ë°œìƒí–ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "구ë…하려는 사용ìžì˜ ì´ë¦„ì„ ì§€ì •í•˜ì‹­ì‹œì˜¤."
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "그러한 사용ìžëŠ” 없습니다."
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "ë‹¹ì‹ ì€ ì´ í”„ë¡œí•„ì— êµ¬ë…ë˜ì§€ 않고있습니다."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "%sì—게 구ë…ë˜ì—ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "구ë…ì„ í•´ì œí•˜ë ¤ëŠ” 사용ìžì˜ ì´ë¦„ì„ ì§€ì •í•˜ì‹­ì‹œì˜¤."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "%sì—ì„œ 구ë…ì„ í•´ì œí–ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "ëª…ë ¹ì´ ì•„ì§ ì‹¤í–‰ë˜ì§€ 않았습니다."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "알림ë„기."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "ì•Œë¦¼ì„ ëŒ ìˆ˜ 없습니다."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "ì•Œë¦¼ì´ ì¼œì¡ŒìŠµë‹ˆë‹¤."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "ì•Œë¦¼ì„ ì¼¤ 수 없습니다."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "%sì—ì„œ 구ë…ì„ í•´ì œí–ˆìŠµë‹ˆë‹¤."
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "ë‹¹ì‹ ì€ ì´ í”„ë¡œí•„ì— êµ¬ë…ë˜ì§€ 않고있습니다."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "ë‹¹ì‹ ì€ ë‹¤ìŒ ì‚¬ìš©ìžë¥¼ ì´ë¯¸ 구ë…하고 있습니다."
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "다른 ì‚¬ëžŒì„ êµ¬ë… í•˜ì‹¤ 수 없습니다."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "다른 ì‚¬ëžŒì„ êµ¬ë… í•˜ì‹¤ 수 없습니다."
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "ë‹¹ì‹ ì€ í•´ë‹¹ ê·¸ë£¹ì˜ ë©¤ë²„ê°€ 아닙니다."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5484,20 +5961,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "í™•ì¸ ì½”ë“œê°€ 없습니다."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "ì´ ì‚¬ì´íŠ¸ 로그ì¸"
@@ -5674,53 +6151,54 @@ msgstr "가장 ë§Žì€ ê²Œì‹œê¸€ì´ ìžˆëŠ” 그룹들"
msgid "Tags in %s group's notices"
msgstr "%s 그룹 ê²Œì‹œê¸€ì˜ íƒœê·¸"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "ì´ íŽ˜ì´ì§€ëŠ” 귀하가 승ì¸í•œ 미디어 타입ì—서는 ì´ìš©í•  수 없습니다."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "지ì›í•˜ì§€ 않는 그림 íŒŒì¼ í˜•ì‹ìž…니다."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "ë‹¹ì‹ ê·¸ë£¹ì˜ ë¡œê³  ì´ë¯¸ì§€ë¥¼ 업로드할 수 있습니다."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "불완전한 업로드."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "파ì¼ì„ ì˜¬ë¦¬ëŠ”ë° ì‹œìŠ¤í…œ 오류 ë°œìƒ"
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "그림 파ì¼ì´ 아니거나 ì†ìƒëœ íŒŒì¼ ìž…ë‹ˆë‹¤."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "지ì›í•˜ì§€ 않는 그림 íŒŒì¼ í˜•ì‹ìž…니다."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "파ì¼ì„ 잃어버렸습니다."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "ì•Œ 수 없는 ì¢…ë¥˜ì˜ íŒŒì¼ìž…니다"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5741,11 +6219,13 @@ msgstr "ì‚¬ìš©ìž ì´ë¦„ê³¼ 비밀번호로 로그ì¸"
msgid "Sign up for a new account"
msgstr "새 ê³„ì •ì„ ìœ„í•œ 회ì›ê°€ìž…"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "ì´ë©”ì¼ ì£¼ì†Œ 확ì¸ì„œ"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5762,12 +6242,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$së‹˜ì´ ê·€í•˜ì˜ ì•Œë¦¼ 메시지를 %2$sì—ì„œ 듣고 있습니다."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5786,19 +6275,22 @@ msgstr ""
"\n"
"그럼 ì´ë§Œ,%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"소개: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "%sì— í¬ìŠ¤íŒ… í•  새로운 ì´ë©”ì¼ ì£¼ì†Œ"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5810,24 +6302,34 @@ msgid ""
"Faithfully yours,\n"
"%4$s"
msgstr ""
-"í¬ìŠ¤íŒ… 주소는 %1$s입니다.새 메시지를 등ë¡í•˜ë ¤ë©´ %2$ 주소로 ì´ë©”ì¼ì„ ë³´ë‚´ì‹­ì‹œ"
+"í¬ìŠ¤íŒ… 주소는 %1$s입니다.새 메시지를 등ë¡í•˜ë ¤ë©´ %2$s 주소로 ì´ë©”ì¼ì„ ë³´ë‚´ì‹­ì‹œ"
"오.ì´ë©”ì¼ ì‚¬ìš©ë²•ì€ %3$s 페ì´ì§€ë¥¼ 보십시오.안녕히,%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s ìƒíƒœ"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS ì¸ì¦"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "ì´ ì „í™” 번호는 ì¸ì¦ 대기중입니다."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s 사용ìžê°€ 찔러 봤습니다."
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5843,12 +6345,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "%s로부터 새로운 비밀 메시지가 ë„착하였습니다."
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5867,12 +6371,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%së‹˜ì´ ë‹¹ì‹ ì˜ ê²Œì‹œê¸€ì„ ì¢‹ì•„í•˜ëŠ” 글로 추가했습니다."
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5893,12 +6399,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5911,6 +6427,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5923,7 +6451,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr "다ìŒì—ì„œ:"
@@ -5979,25 +6507,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "공개 streamì„ ë¶ˆëŸ¬ì˜¬ 수 없습니다."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6053,51 +6581,55 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "아니오"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "ë‚´ìš©ì´ ì—†ìŠµë‹ˆë‹¤!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "ìƒì„±"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "답장하기"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "ê²Œì‹œê¸€ì´ ë“±ë¡ë˜ì—ˆìŠµë‹ˆë‹¤."
@@ -6122,6 +6654,10 @@ msgstr "새 프로필 추가 오류"
msgid "Error inserting avatar"
msgstr "아바타 추가 오류"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "리모트 프로필 ì—…ë°ì´íŠ¸ 오류"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "리모트 프로필 추가 오류"
@@ -6168,12 +6704,12 @@ msgstr "ë‹¹ì‹ ì˜ ë³´ë‚¸ 메시지들"
msgid "Tags in %s's notices"
msgstr "%sì˜ ê²Œì‹œê¸€ì˜ íƒœê·¸"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "알려지지 ì•Šì€ í–‰ë™"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "구ë…"
@@ -6181,33 +6717,33 @@ msgstr "구ë…"
msgid "All subscriptions"
msgstr "모든 예약 구ë…"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "구ë…ìž"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "모든 구ë…ìž"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "ì´ìš©ìž"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "가입한 때"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "모든 그룹"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "id ì¸ìžê°€ 없습니다."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6231,12 +6767,21 @@ msgstr "피ì³ë§ë¨"
msgid "Popular"
msgstr "ì¸ê¸°ìžˆëŠ”"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "id ì¸ìžê°€ 없습니다."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "네, 맞습니다."
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기"
@@ -6246,7 +6791,7 @@ msgstr "ì´ ê²Œì‹œê¸€ì— ëŒ€í•´ 답장하기"
msgid "Revoke the \"%s\" role from this user"
msgstr "ì´ ê·¸ë£¹ì˜ íšŒì›ë¦¬ìŠ¤íŠ¸"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6350,6 +6895,50 @@ msgstr ""
msgid "None"
msgstr "ì—†ìŒ"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "아바타 ì—…ë°ì´íŠ¸ 실패"
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "리모트 프로필 ì—…ë°ì´íŠ¸ 오류"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "ìƒìœ„ 게시글 등ë¡ìž"
@@ -6380,93 +6969,112 @@ msgstr "ì´ ì‚¬ìš©ìžë¡œë¶€í„° 구ë…취소합니다."
msgid "Unsubscribe"
msgstr "êµ¬ë… í•´ì œ"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "ì´ìš©ìžê°€ í”„ë¡œí•„ì„ ê°€ì§€ê³  있지 않습니다."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "아바타"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "ì‚¬ìš©ìž ë™ìž‘"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "프로필 세팅"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "ì´ íšŒì›ì—게 ì§ì ‘ 메시지를 보냅니다."
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "메시지"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "ì´ìš©ìž 프로필"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "관리ìž"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "몇 초 전"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "1분 전"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "%d분 전"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "1시간 전"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "%d시간 전"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "하루 전"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "%dì¼ ì „"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "1달 전"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "%d달 전"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "1ë…„ ì „"
@@ -6480,7 +7088,7 @@ msgstr "홈페ì´ì§€ 주소형ì‹ì´ 올바르지 않습니다."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "ë‹¹ì‹ ì´ ë³´ë‚¸ 메시지가 너무 길어요. 최대 140글ìžê¹Œì§€ìž…니다."
diff --git a/locale/mk/LC_MESSAGES/statusnet.po b/locale/mk/LC_MESSAGES/statusnet.po
index 74b9cb228..551c61dce 100644
--- a/locale/mk/LC_MESSAGES/statusnet.po
+++ b/locale/mk/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:24+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:45+0000\n"
"Language-Team: Macedonian\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: mk\n"
"X-Message-Group: out-statusnet\n"
@@ -22,14 +22,14 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "ПриÑтап"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
msgid "Site access settings"
-msgstr "Ðагодувања за приÑтап на веб-Ñтраницата"
+msgstr "Ðагодувања за приÑтап на мрежното меÑто"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
@@ -40,8 +40,8 @@ msgstr "РегиÑтрација"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
msgstr ""
-"Да им забранам на анонимните (ненајавени) кориÑници да ја гледаат веб-"
-"Ñтраницата?"
+"Да им забранам на анонимните (ненајавени) кориÑници да го гледаат мрежното "
+"меÑто?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
@@ -74,85 +74,90 @@ msgstr "Затворен"
msgid "Save access settings"
msgstr "Зачувај нагодувања на приÑтап"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Зачувај"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Ðема таква Ñтраница"
+msgid "No such page."
+msgstr "Ðема таква Ñтраница."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Ðема таков кориÑник."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s и пријателите, ÑÑ‚Ñ€. %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s и пријатели"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Канал Ñо пријатели на %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Канал Ñо пријатели на %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Канал за пријатели на %S (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
"Ова е иÑторијата за %s и пријателите, но доÑега никој нема објавено ништо."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -162,85 +167,85 @@ msgstr ""
"groups%%) или објавете нешто Ñамите."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Можете да Ñе обидете да го [подбуцнете кориÑникот %1$s](../%2$s) од профилот "
-"на кориÑникот или да [објавите нешто што Ñакате тој да го прочита](%%%%"
-"action.newnotice%%%%?status_textarea=%3$s)."
+"Можете да го [подбуцнете кориÑникот %1$s](../%2$s) од неговиот профил или да "
+"[му иÑпратите нешто](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"Рзошто не [региÑтрирате Ñметка](%%%%action.register%%%%), за да можете да "
-"го подбуцнете кориÑникот %s или да објавите забелешка што Ñакате тој да ја "
-"прочита."
+"Рзошто не Ñе [региÑтрирате](%%%%action.register%%%%), и потоа да го "
+"подбуцнете кориÑникот %s или да му иÑпратите забелешка."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Вие и пријателите"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Подновувања од %1$s и пријатели на %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API методот не е пронајден."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Овој метод бара POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"Мора да назначите параметар Ñо име 'device' Ñо една од Ñледниве вредноÑти: "
-"sms, im, none"
+"sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Ðе можев да го подновам кориÑникот."
@@ -249,7 +254,7 @@ msgstr "Ðе можев да го подновам кориÑникот."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "КориÑникот нема профил."
@@ -259,9 +264,9 @@ msgid "Could not save profile."
msgstr "Ðе може да Ñе зачува профил."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -269,8 +274,8 @@ msgid ""
"The server was unable to handle that much POST data (%s bytes) due to its "
"current configuration."
msgstr ""
-"Серверот не можеше да обработи толку многу POST-податоци (%s бајти) заради "
-"неговата тековна конфигурација."
+"ОпÑлужувачот не можеше да обработи толку многу POST-податоци (%s бајти) "
+"заради неговата тековна поÑтавеноÑÑ‚."
#: actions/apiaccountupdateprofilebackgroundimage.php:136
#: actions/apiaccountupdateprofilebackgroundimage.php:146
@@ -319,53 +324,53 @@ msgstr "Директни пораки до %s"
msgid "All the direct messages sent to %s"
msgstr "Сите директни пораки иÑпратени до %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Ðема текÑÑ‚ за пораката!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Ова е предолго. МакÑималната должина изнеÑува %d знаци."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Примачот не е пронајден."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Ðеможете да иÑпраќате директни пораки на кориÑници што не ви Ñе пријатели."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Ðема пронајдено ÑÑ‚Ð°Ñ‚ÑƒÑ Ñо таков ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Овој ÑÑ‚Ð°Ñ‚ÑƒÑ Ð²ÐµÑœÐµ Ви е омилен."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Ðе можам да Ñоздадам омилина забелешка."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Тој ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ðµ Ви е омилен."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Ðе можам да ја избришам омилената забелешка."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Ðе можам да го Ñледам кориÑникот: КориÑникот не е пронајден."
+msgid "Could not follow user: profile not found."
+msgstr "Ðе можам да го Ñледам кориÑникот: профилот не е пронајден."
#: actions/apifriendshipscreate.php:118
#, php-format
msgid "Could not follow user: %s is already on your list."
-msgstr "Ðе можам да го Ñледам кориÑникот: %s веќе е на Вашата лиÑта."
+msgstr "Ðе можам да го Ñледам кориÑникот: %s веќе е на Вашиот ÑпиÑок."
#: actions/apifriendshipsdestroy.php:109
msgid "Could not unfollow user: User not found."
@@ -376,10 +381,11 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Ðе можете да преÑтанете да Ñе Ñледите Ñамите ÑебеÑи."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
-"Мора да бидат наведени два кориÑнички идентификатора (ID) или две имиња."
+"Мора да Ñе наведат две кориÑнички назнаки (ID) или screen_names (имиња за "
+"приказ)."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -389,115 +395,127 @@ msgstr "Ðе можев да го утврдам целниот кориÑник
msgid "Could not find target user."
msgstr "Ðе можев да го пронајдам целниот кориÑник."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Прекарот мора да има Ñамо мали букви и бројки и да нема празни меÑта."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Тој прекар е во употреба. Одберете друг."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ðеправилен прекар."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Главната Ñтраница не е важечка URL-адреÑа."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
-msgstr "Целото име е предолго (макÑимум 255 знаци)"
+msgstr "Целото име е предолго (највеќе 255 знаци)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "ОпиÑот е предолг (дозволено е највеќе %d знаци)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Локацијата е предолга (макÑимумот е 255 знаци)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Премногу алијаÑи! Дозволено е највеќе %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ðеважечки алијаÑ: „%s“"
+msgid "Invalid alias: \"%s\"."
+msgstr "Ðеважечки алијаÑ: „%s“."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "ÐлијаÑот „%s“ е зафатен. Одберете друг."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "ÐлијаÑот не може да биде иÑÑ‚ како прекарот."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Групата не е пронајдена!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Групата не е пронајдена."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Веќе членувате во таа група."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Блокирани Ñте од таа група од админиÑтраторот."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Ðе можам да го зачленам кориÑникот %1$s во групата 2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Ðе членувате во оваа група."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Ðе можев да го отÑтранам кориÑникот %1$s од групата %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s групи"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s групи кадешто членува %2$s."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s групи"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "групи на %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Подигањето не уÑпеа."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Ðема наведено oauth_token параметар."
@@ -507,17 +525,17 @@ msgid "Invalid token."
msgstr "Погрешен жетон."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -550,12 +568,15 @@ msgstr "Жетонот на барањето %s е одобрен. ЗаменеÑ
msgid "The request token %s has been denied and revoked."
msgstr "Жетонот на барањето %s е одбиен и поништен."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Ðеочекувано поднеÑување на образец."
@@ -578,20 +599,22 @@ msgstr ""
"<strong>%3$s</strong> податоците за Вашата %4$s Ñметка. Треба да дозволувате "
"приÑтап до Вашата %4$s Ñметка Ñамо на трети Ñтрани на кои им верувате."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Сметка"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Прекар"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Лозинка"
@@ -607,11 +630,11 @@ msgstr "Дозволи"
msgid "Allow or deny access to your account information."
msgstr "Дозволете или одбијте приÑтап до податоците за Вашата Ñметка."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Методот бара POST или DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Ðе можете да избришете ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° друг кориÑник."
@@ -628,61 +651,65 @@ msgstr "Ðе можете да ја повторувате ÑопÑтвенатÐ
msgid "Already repeated that notice."
msgstr "Забелешката е веќе повторена."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "СтатуÑот е избришан."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ðема пронајдено ÑÑ‚Ð°Ñ‚ÑƒÑ Ñо тој ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Клиентот мора да укаже вредноÑÑ‚ за параметарот „ÑтатуÑ“"
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Ова е предолго. МакÑималната дозволена должина изнеÑува %d знаци."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Ðе е пронајдено"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ðе е пронајдено."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"МакÑималната големина на забелешката е %d знаци, вклучувајќи ја URL-адреÑата "
"на прилогот."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Ðеподдржан формат."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Омилени од %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "Подновувања на %1$s омилени на %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Подновувања кои Ñпоменуваат %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s подновувања коишто Ñе одговор на подновувањата од %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Јавна иÑторија на %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s подновуввања од Ñите!"
@@ -697,19 +724,19 @@ msgstr "Повторено за %s"
msgid "Repeats of %s"
msgstr "Повторувања на %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Забелешки означени Ñо %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Подновувањата Ñе означени Ñо %1$s на %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ðе е пронајдено."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-методот е во изработка."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -730,8 +757,9 @@ msgstr "Ðема големина."
msgid "Invalid size."
msgstr "Погрешна големина."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ðватар"
@@ -743,10 +771,10 @@ msgstr ""
"податотеката изнеÑува %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "КориÑник без Ñоодветен профил"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "КориÑник без Ñоодветен профил."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -764,7 +792,7 @@ msgid "Preview"
msgstr "Преглед"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Бриши"
@@ -776,23 +804,27 @@ msgstr "Подигни"
msgid "Crop"
msgstr "ОтÑечи"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Ðема подигнато податотека."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Одберете квадратна површина од Ñликата за аватар"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Податоците за податотеката Ñе изгубени."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Ðватарот е подновен."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Подновата на аватарот не уÑпеа."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ðватарот е избришан."
@@ -800,11 +832,11 @@ msgstr "Ðватарот е избришан."
msgid "You already blocked that user."
msgstr "Веќе го имате блокирано тој кориÑник."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Блокирај кориÑник"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -815,27 +847,42 @@ msgstr ""
"претплати на Ð’Ð°Ñ Ð²Ð¾ иднина, и нема да бидете извеÑтени ако имате @-одговори "
"од кориÑникот."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Ðе"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Ðе го блокирај кориÑников"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Да"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Блокирај го кориÑников"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Ðе можев да ги Ñнимам инофрмациите за блокот."
@@ -848,8 +895,8 @@ msgstr "Ðе можев да ги Ñнимам инофрмациите за бÐ
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Ðема таква група."
@@ -879,9 +926,11 @@ msgstr "Одблокирај"
msgid "Unblock this user"
msgstr "Одблокирај го овој корÑник"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Објави во "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Објави во %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -895,33 +944,43 @@ msgstr "Кодот за потврда не е пронајден."
msgid "That confirmation code is not for you!"
msgstr "Овој код за потврда не е за ВаÑ!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Ðепознат тип на адреÑа %s"
+msgid "Unrecognized address type %s."
+msgstr "Ðепознат тип на адреÑа %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Оваа адреÑа веќе е потврдена."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Ðе можев да го подновам кориÑникот."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Ðе можев да ја избришам потврдата по е-пошта."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Потврди адреÑа"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "ÐдреÑата \"%s\" е потврдена за Вашата Ñметка."
@@ -931,7 +990,7 @@ msgid "Conversation"
msgstr "Разговор"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Забелешки"
@@ -950,7 +1009,7 @@ msgstr "Ðе Ñте ÑопÑтвеник на овој програм."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Се појави проблем Ñо Вашиот ÑеÑиÑки жетон."
@@ -968,21 +1027,23 @@ msgstr ""
"избрише Ñите податоци за програмот од базата, вклучувајќи ги Ñите поÑтоечки "
"поврзувања."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ðе го бриши овој програм"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Избриши го програмов"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ðе Ñте најавени."
@@ -1007,11 +1068,13 @@ msgstr "Бриши забелешка"
msgid "Are you sure you want to delete this notice?"
msgstr "Дали Ñте Ñигурни дека Ñакате да ја избришете оваа заблешка?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ðе ја бриши оваа забелешка"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Бриши ја оваа забелешка"
@@ -1035,127 +1098,147 @@ msgstr ""
"Дали Ñе Ñигурни дека Ñакате да го избришете овој кориÑник? Ова воедно ќе ги "
"избрише Ñите податоци за кориÑникот од базата, без да може да Ñе вратат."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Избриши овој кориÑник"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Изглед"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
-msgstr "Ðагодувања на изгледот на оваа StatusNet веб-Ñтраница."
+msgstr "Ðагодувања на изгледот на ова StatusNet-мрежно меÑто."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Погрешен URL на лого."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "ÐепоÑточка тема: %s"
+msgid "Theme not available: %s."
+msgstr "Темата е недоÑтапна: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Промени лого"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
-msgstr "Лого на веб-Ñтраницата"
+msgstr "Лого на мрежното меÑто"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
-msgstr "Промени тема"
+msgstr "Промени изглед"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
-msgstr "Тема на веб-Ñтраницата"
+msgstr "Изглед на мрежното меÑто"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
-msgstr "Тема за веб-Ñтраницата."
+msgstr "Изглед за мрежното меÑто."
+
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Прилагоден мотив"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Можете да подигнете Ñвој изглед за StatusNet како .ZIP архив."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Промена на Ñлика на позадина"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Позадина"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr ""
-"Може да подигнете позадинÑка Ñлика за оваа веб-Ñтраница. МакÑималната "
+"Може да подигнете позадинÑка Ñлика за ова мрежно меÑто. МакÑималната "
"големина на податотеката е %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Вкл."
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "ИÑкл."
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Вклучи или иÑклучи позадинÑка Ñлика."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Позадината во квадрати"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Промена на бои"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Содржина"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Странична лента"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "ТекÑÑ‚"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Ð’Ñ€Ñки"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Ðапредно"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Прилагодено CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "КориÑти по оÑновно"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Врати оÑновно-зададени нагодувања"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Врати по оÑновно"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Зачувај"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Зачувај изглед"
@@ -1195,7 +1278,7 @@ msgstr "Треба име."
#: actions/editapplication.php:180 actions/newapplication.php:165
msgid "Name is too long (max 255 chars)."
-msgstr "Името е предолго (макÑимум 255 знаци)."
+msgstr "Името е предолго (највеќе 255 знаци)."
#: actions/editapplication.php:183 actions/newapplication.php:162
msgid "Name already in use. Try another one."
@@ -1258,13 +1341,19 @@ msgstr "ОБразецов Ñлужи за уредување на групатÐ
#: actions/editgroup.php:205 actions/newgroup.php:145
#, php-format
msgid "description is too long (max %d chars)."
-msgstr "опиÑот е предолг (макÑимум %d знаци)"
+msgstr "опиÑот е предолг (највеќе %d знаци)"
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ðеважечки алијаÑ: „%s“"
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Ðе можев да ја подновам групата."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Ðе можеше да Ñе Ñоздадат алијаÑи."
@@ -1272,31 +1361,42 @@ msgstr "Ðе можеше да Ñе Ñоздадат алијаÑи."
msgid "Options saved."
msgstr "Ðагодувањата Ñе зачувани."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Ðагодувања за е-пошта"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Раководење Ñо начинот на кој добивате е-пошта од %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ÐдреÑа"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Е-поштенÑка адреÑа"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Тековна потврдена е-поштенÑка адреÑа."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "ОтÑтрани"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1304,109 +1404,139 @@ msgstr ""
"Очекувам потврда за оваа адреÑа. Проверете Ñи го приемното Ñандаче (а и "
"Ñандачето за Ñпам!). Во пиÑмото ќе Ñледат понатамошни напатÑтвија."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Откажи"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Е-поштенÑка адреÑа"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Е-пошта, од обликот „UserName@example.org“"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Додај"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Приемна пошта"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "ИÑпраќајте е-пошта на оваа адреÑа за да објавувате нови забелешки."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Создај нова е-поштенÑка адреÑа за примање објави; ја заменува Ñтарата адреÑа."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
-msgstr "Ðово"
+msgstr "Ðова"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Ðагодувања"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Ðагодувања за е-пошта"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "ИÑпраќај ми извеÑтувања за нови претплати по е-пошта."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "ИÑпраќај ми е-пошта кога некој ќе додаде моја забелешка како омилена."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "ИÑпраќај ми е-пошта кога некој ќе ми иÑпрати приватна порака."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "ИÑпраќај ми е-пошта кога некој ќе ми иÑпрати „@-одговор“"
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
"Дозволи им на пријателите да можат да ме подбуцнуваат и да ми иÑпраќаат е-"
"пошта."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Сакам да објавувам забелешки по е-пошта."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Објави MicroID за мојата е-поштенÑка адреÑа."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Ðагодувањата Ñе зачувани."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Ðагодувањата за е-пошта Ñе зачувани."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ðема е-поштенÑка адреÑа."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Ðеможам да ја нормализирам таа е-поштенÑка адреÑа"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ðеправилна адреÑа за е-пошта."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Оваа е-поштенÑка адреÑа е веќе Ваша."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Таа е-поштенÑка адреÑа е веќе зафатена од друг кориÑник."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Кодот за потврда не може да Ñе внеÑе."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1415,43 +1545,53 @@ msgstr ""
"Ñандачето за добиени пиÑма (а и Ñандачето за Ñпам!) за да го видите кодот и "
"напатÑтвијата за негово кориÑтење."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ðема потврди кои може да Ñе откажат."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Ова е погрешната IM адреÑа."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Ова е погрешна е-поштенÑка адреÑа."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Потврдата е откажана"
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Потврдата на е-пошта е откажана."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Ова не е Вашата е-поштенÑка адреÑа."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "ÐдреÑата е отÑтранета."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Е-поштенÑката адреÑа е отÑтранета."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ðема приемна е-поштенÑка адреÑа."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Ðе можев да ја подновам кориÑничката евиденција."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Приемната е-поштенÑка адреÑа е отÑтранета."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Додадена е нова влезна е-поштенÑка адреÑа."
@@ -1475,7 +1615,7 @@ msgstr "Популарни забелешки, ÑÑ‚Ñ€. %d"
#: actions/favorited.php:79
msgid "The most popular notices on the site right now."
-msgstr "Моментално најпопуларни забелешки на веб-Ñтраницата."
+msgstr "Моментално најпопуларни забелешки на мрежното меÑто."
#: actions/favorited.php:150
msgid "Favorite notices appear on this page but no one has favorited one yet."
@@ -1568,11 +1708,11 @@ msgstr "Ðе можев да ги претворам жетоните за баÑ
#: actions/finishremotesubscribe.php:118
msgid "Remote service uses unknown version of OMB protocol."
-msgstr "Оддалечената Ñлужба кориÑти непозната верзија на OMB протокол."
+msgstr "ДалечинÑката Ñлужба кориÑти непозната верзија на OMB протокол."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Грешка во подновувањето на оддалечениот профил"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Грешка во подновувањето на далечинÑкиот профил."
#: actions/getfile.php:79
msgid "No such file."
@@ -1592,7 +1732,7 @@ msgstr "Оваа улога е резервирана и не може да Ñе
#: actions/grantrole.php:75
msgid "You cannot grant user roles on this site."
-msgstr "Ðе можете да им доделувате улоги на кориÑниците на оваа веб-Ñтраница."
+msgstr "Ðе можете да им доделувате улоги на кориÑниците на ова мрежно меÑто."
#: actions/grantrole.php:82
msgid "User already has this role."
@@ -1600,13 +1740,13 @@ msgstr "КориÑникот веќе ја има таа улога."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ðема назначено профил."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ðема профил Ñо тоа ID."
@@ -1627,11 +1767,11 @@ msgstr "КориÑникот е веќе блокиран од оваа груп
msgid "User is not a member of group."
msgstr "КориÑникот не членува во групата."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Блокирај кориÑник од група"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1642,15 +1782,17 @@ msgstr ""
"$s“? КориÑникот ќе биде отÑтранет од групата, и во иднина нема да може да "
"објавува во таа група и да Ñе претплаќа на неа."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Ðе го блокирај овој кориÑник од оваа група"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Блокирај го овој кориÑник од оваа група"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
"Се појави грешка во базата наподатоци при блокирањето на кориÑникот од "
@@ -1697,10 +1839,6 @@ msgstr ""
"Можете да подигнете Ñлика за логото на Вашата група. МакÑималната дозволена "
"големина на податотеката е %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "КориÑник без Ñоодветен профил."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Одберете квадратен проÑтор на Ñликата за лого."
@@ -1725,40 +1863,44 @@ msgstr "Членови на групата %1$s, ÑÑ‚Ñ€. %2$d"
#: actions/groupmembers.php:118
msgid "A list of the users in this group."
-msgstr "ЛиÑта на кориÑниците на овааг група."
+msgstr "СпиÑок на кориÑниците на оваа група."
#: actions/groupmembers.php:182 lib/groupnav.php:107
msgid "Admin"
msgstr "ÐдминиÑтратор"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Блокирај"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Ðаправи го кориÑникот админиÑтратор на групата"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Ðаправи го/ја админиÑтратор"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Ðаправи го кориÑникот админиÑтратор"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "ИÑторија на %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Подновувања од членови на %1$s на %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Групи"
@@ -1784,7 +1926,7 @@ msgstr ""
"[ја пронајдете](%%%%action.groupsearch%%%%) или [започнете Ñвоја!](%%%%"
"action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Создај нова група"
@@ -1836,11 +1978,15 @@ msgstr "КориÑникот не е блокиран од групата."
msgid "Error removing the block."
msgstr "Грешка при отÑтранување на блокот."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Ðагодувања за IM"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1849,75 +1995,103 @@ msgstr ""
"Можете да примате и праќате забелешки преку Jabber/GTalk [брзи пораки](%%doc."
"im%%). Подолу "
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM е недоÑтапно."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM адреÑа"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Моментално потврдена Jabber/GTalk адреÑа."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
"Чекам потврда за оваа адреÑа. Проверете ја Вашата Jabber/GTalk Ñметка за "
-"порака Ñо понатамошни инÑтрукции. (Дали го додадовте %s на Вашата лиÑта Ñо "
+"порака Ñо понатамошни инÑтрукции. (Дали го додадовте %s на Вашиот ÑпиÑок Ñо "
"пријатели?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM адреÑа"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-"Jabber или GTalk адреÑа како „ime@example.org“. Ðо прво додајте го %s во "
-"Вашата контакт лиÑта во Вашиот IM клиент или GTalk."
+"Jabber или GTalk адреÑа како „KorisnickoIme@example.org“. Ðо прво додајте го "
+"%s во Вашиот контактен ÑпиÑок во Вашиот IM клиент или GTalk."
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM нагодувања"
-#: actions/imsettings.php:143
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "ИÑпраќај ми забелешки преку Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Објавувај забелешка кога мојот ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° Jabber/GTalk ќе Ñе промени."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"ИÑпраќај ми одговори преку Jabber/GTalk од луѓе на кои не Ñум претплатен."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Објави MicroID за мојата адреÑа на Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Ðагодувањата Ñе зачувани."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ðема JabberID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Ова JabberID не може да Ñе нормализира."
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ðеправилен JabberID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Ова веќе е Вашиот Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Ова Jabber ID му припаѓа на друг кориÑник."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1926,10 +2100,32 @@ msgstr ""
"ИÑпративме код за потврда на IM адреÑата што ја додадовте. Мора да го "
"одобрите %S за да ви иÑпраќа пораки."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Ова е погрешната IM адреÑа."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Ðе можев да ја избришам потврдата на IM."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Потврдата на IM е откажана."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Ова не е Вашиот Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "IM-адреÑата е отÑтранета."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1952,9 +2148,9 @@ msgstr "Поканите Ñе оневозможени."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Мора да Ñте најавени за да можете да каните други кориÑници да кориÑтат %s"
+"Мора да Ñте најавени за да можете да каните други кориÑници да кориÑтат %s."
#: actions/invite.php:72
#, php-format
@@ -1973,7 +2169,9 @@ msgstr "Покани нови кориÑници"
msgid "You are already subscribed to these users:"
msgstr "Веќе Ñте претплатени на овие кориÑници:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1993,15 +2191,15 @@ msgid ""
"on the site. Thanks for growing the community!"
msgstr ""
"Ќе добиете извеÑтување кога луѓето кои Ñте ги поканиле ќе ја прифатат "
-"поканата и ќе Ñе региÑтрираат на веб-Ñтраницата. Ви благодариме за Вашата "
-"помош Ñо проширувањето на заедницата!"
+"поканата и ќе Ñе региÑтрираат на мрежното меÑто. Ви благодариме што ни "
+"помагате да ја прошириме заедницата!"
#: actions/invite.php:162
msgid ""
"Use this form to invite your friends and colleagues to use this service."
msgstr ""
-"Со овој обраец можете да поканите пријатели и колеги да ја кориÑтат веб-"
-"Ñтраницата."
+"Со овој обраец можете да поканите пријатели и колеги да го кориÑтат мрежното "
+"меÑто."
#: actions/invite.php:187
msgid "Email addresses"
@@ -2025,12 +2223,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "ИÑпрати"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s ве покани да Ñе придружите на %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2062,7 +2262,7 @@ msgid ""
msgstr ""
"%1$s Ве кани да Ñе придружите на %2$s (%3$s).\n"
"\n"
-"%2$s е веб-Ñтраница за микроблогирање што ви овозможува да бидете во тек "
+"%2$s е мрежно меÑто за микроблогирање што ви овозможува да бидете во тек "
"луѓето што ги познавате и луѓето кои ве интереÑираат.\n"
"\n"
"Можете да објавувате и новоÑти за ВаÑ, Ваши размиÑли, и наÑтани од Вашиот "
@@ -2077,7 +2277,7 @@ msgstr ""
"\n"
"%5$s\n"
"\n"
-"Ðко Ñакате да ја иÑпробате оваа друштвена веб-Ñтраница, кликнете на врÑката "
+"Ðко Ñакате да ја иÑпробате оваа друштвено мрежно меÑто, кликнете на врÑката "
"подолу за да ја прифатите поканата.\n"
"\n"
"%6$s\n"
@@ -2095,7 +2295,9 @@ msgstr "Мора да Ñте најавени за да можете да Ñе Ð
msgid "No nickname or ID."
msgstr "Ðема прекар или ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s Ñе зачлени во групата %2$s"
@@ -2104,50 +2306,51 @@ msgstr "%1$s Ñе зачлени во групата %2$s"
msgid "You must be logged in to leave a group."
msgstr "Мора да Ñте најавени за да можете да ја напуштите групата."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Ðе членувате во таа група."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s ја напушти групата %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Веќе Ñте најавени."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Ðеточно кориÑничко име или лозинка"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Грешка при поÑтавувањето на кориÑникот. Веројатно не Ñе заверени."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Ðајава"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Ðајавете Ñе"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Запамети ме"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
-"Следниот пат најавете Ñе автоматÑки; не е за компјутери кои ги делите Ñо "
-"други!"
+"ОтÑега врши автоматÑка најава. Ðе треба да Ñе кориÑти за јавни Ñметачи!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Ја загубивте или заборавивте лозинката?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2155,14 +2358,16 @@ msgstr ""
"Поради безбедноÑни причини треба повторно да го внеÑете Вашето кориÑничко "
"име и лозинка пред да ги Ñмените Вашите нагодувања."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Ðајавете Ñе Ñо кориÑничко име и лозинка."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Ðајавете Ñе Ñо Вашето кориÑничко име и лозинка. Сè уште немате кориÑничко "
-"име? [РегиÑтрирајте](%%action.register%%) нова Ñметка."
+"Сè уште немате кориÑничко име? [Ðаправете](%%action.register%%) нова Ñметка."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2184,8 +2389,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Ðе можам да го направам кориÑникот %1$s админиÑтратор на групата %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Ðема тековен ÑтатуÑ"
+msgid "No current status."
+msgstr "Ðема тековен ÑтатуÑ."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2219,12 +2424,12 @@ msgstr "Овој образец Ñлужи за Ñоздавање нова гр
msgid "New message"
msgstr "Ðова порака"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Ðе можете да иÑпратите порака до овојо кориÑник."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ðема Ñодржина!"
@@ -2232,7 +2437,7 @@ msgstr "Ðема Ñодржина!"
msgid "No recipient specified."
msgstr "Ðема назначено примач."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2248,7 +2453,7 @@ msgstr "Пораката е иÑпратена"
msgid "Direct message to %s sent."
msgstr "Директната порака до %s е иÑпратена."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax-грешка"
@@ -2256,7 +2461,7 @@ msgstr "Ajax-грешка"
msgid "New notice"
msgstr "Ðово забелешка"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Забелешката е објавена"
@@ -2294,8 +2499,8 @@ msgid ""
"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
msgstr ""
"Рзошто не [региÑтрирате Ñметка](%%%%action.register%%%%) и Ñтанете првиот "
-"што ќе [објави нешто на оваа тема](%%%%action.newnotice%%%%?status_textarea="
-"%s)!"
+"што ќе [објави нешто на оваа тема](%%%%action.newnotice%%%%?status_textarea=%"
+"s)!"
#: actions/noticesearchrss.php:96
#, php-format
@@ -2309,7 +2514,7 @@ msgstr "Подновувања кои Ñе Ñовпаѓаат Ñо пребарÐ
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Овој кориÑник не дозволува подбуцнувања или Ñè уште нема потврдено или "
"поÑтавено Ñвоја е-пошта."
@@ -2352,11 +2557,11 @@ msgid "You are not a user of that application."
msgstr "Ðе Ñте кориÑник на тој програм."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Ðе можам да му го одземам приÑтапот на програмот: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Ðе можам да му го одземам приÑтапот на програмот: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Му немате дозволено приÑтап до Вашата Ñметка на ниеден програм."
@@ -2365,25 +2570,30 @@ msgid "Developers can edit the registration settings for their applications "
msgstr ""
"Развивачите можат да ги нагодат региÑтрациÑките поÑтавки за нивните програми "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Забелешката нема профил"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Забелешката нема профил."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "тип на Ñодржини "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Содржините од типот %s не Ñе поддржани."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Само "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Ве молиме кориÑтете Ñамо %s URL-адреÑи врз проÑÑ‚ HTTP-код."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Ова не е поддржан формат на податотека."
@@ -2488,7 +2698,7 @@ msgid "6 or more characters"
msgstr "6 или повеќе знаци"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Потврди"
@@ -2500,11 +2710,11 @@ msgstr "ИÑто како лозинката погоре"
msgid "Change"
msgstr "Промени"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Лозинката мора да Ñодржи барем 6 знаци."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Лозинките не Ñе Ñовпаѓаат."
@@ -2516,7 +2726,7 @@ msgstr "Ðеточна Ñтара лозинка"
msgid "Error saving user; invalid."
msgstr "Грешка во зачувувањето на кориÑникот; неправилен."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Ðе можам да ја зачувам новата лозинка."
@@ -2525,41 +2735,41 @@ msgid "Password saved."
msgstr "Лозинката е зачувана."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Патеки"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
-msgstr "Ðагодувања за патеки и Ñервери за оваа StatusNet веб-Ñтраница."
+msgstr "Ðагодувања за патеки и опÑлужувачи за оваа StatusNet мрежно меÑто."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Директориумот на темата е нечитлив: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Директориумот на темата е нечитлив: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Директориумот на аватарот е недоÑтапен за пишување: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Директориумот на аватарот е недоÑтапен за запишување: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Директориумот на позадината е нечитлив: %s"
+msgid "Background directory not writable: %s."
+msgstr "Директориумот на позадината е нечитлив: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Директориумот на локалите е нечитлив: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Директориумот на локалите е нечитлив: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
-msgstr "Ðеважечки SSL-Ñервер. Дозволени Ñе најмногу 255 знаци"
+msgstr "Ðеважечки SSL-опÑлужувач. Дозволени Ñе најмногу до 255 знаци"
#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
msgid "Site"
-msgstr "Веб-Ñтраница"
+msgstr "Мреж. меÑто"
#: actions/pathsadminpanel.php:238
msgid "Server"
@@ -2567,7 +2777,7 @@ msgstr "ОпÑлужувач"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
-msgstr "Име на домаќинот на Ñерверот на веб-Ñтраницата"
+msgstr "Ðазив на домаќинот на опÑлужувачот на мрежното меÑто"
#: actions/pathsadminpanel.php:242
msgid "Path"
@@ -2575,7 +2785,7 @@ msgstr "Патека"
#: actions/pathsadminpanel.php:242
msgid "Site path"
-msgstr "Патека на веб-Ñтраницата"
+msgstr "Патека на мрежното меÑто"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
@@ -2595,11 +2805,11 @@ msgstr "Да кориÑтам интереÑни (почитливи и повп
#: actions/pathsadminpanel.php:259
msgid "Theme"
-msgstr "Тема"
+msgstr "Изглед"
#: actions/pathsadminpanel.php:264
msgid "Theme server"
-msgstr "Сервер на темата"
+msgstr "OпÑлужувач на темата"
#: actions/pathsadminpanel.php:268
msgid "Theme path"
@@ -2615,7 +2825,7 @@ msgstr "Ðватари"
#: actions/pathsadminpanel.php:284
msgid "Avatar server"
-msgstr "Сервер на аватарот"
+msgstr "ОпÑлужувач на аватарот"
#: actions/pathsadminpanel.php:288
msgid "Avatar path"
@@ -2631,7 +2841,7 @@ msgstr "Позадини"
#: actions/pathsadminpanel.php:305
msgid "Background server"
-msgstr "Сервер на позаднината"
+msgstr "OпÑлужувач на позаднината"
#: actions/pathsadminpanel.php:309
msgid "Background path"
@@ -2667,11 +2877,11 @@ msgstr "Кога Ñе кориÑти SSL"
#: actions/pathsadminpanel.php:335
msgid "SSL server"
-msgstr "SSL-Ñервер"
+msgstr "SSL-опÑлужувач"
#: actions/pathsadminpanel.php:336
msgid "Server to direct SSL requests to"
-msgstr "Сервер, кому ќе му Ñе иÑпраќаат SSL-барања"
+msgstr "OпÑлужувач, кому ќе му Ñе иÑпраќаат SSL-барања"
#: actions/pathsadminpanel.php:352
msgid "Save paths"
@@ -2691,26 +2901,26 @@ msgstr ""
msgid "People search"
msgstr "Пребарување на луѓе"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Ðе е важечка ознака за луѓе: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Ðе е важечка ознака за луѓе: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "КориÑтници Ñамоозначени Ñо %1$s - ÑÑ‚Ñ€. %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Ðеважечка Ñодржина на забелешката"
+msgid "Invalid notice content."
+msgstr "Ðеважечка Ñодржина на забелешката."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
-"Лиценцата на забелешката „%1$s“ не е компатибилна Ñо лиценцата на веб-"
-"Ñтраницата „%2$s“."
+"Лиценцата на забелешката „%1$s“ не е Ñоодветна на лиценцата на мрежното "
+"меÑто „%2$s“."
#: actions/profilesettings.php:60
msgid "Profile settings"
@@ -2731,42 +2941,43 @@ msgstr "Информации за профил"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 мали букви или бројки. Без интерпукциÑки знаци и празни меÑта."
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Цело име"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Домашна Ñтраница"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
-msgstr "URL на Вашата домашна Ñтраница, блог или профил на друга веб-Ñтраница."
+msgstr "URL на Вашата домашна Ñтраница, блог или профил на друго мрежно меÑто."
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Опишете Ñе ÑебеÑи и Ñвоите интереÑи во %d знаци."
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Опишете Ñе ÑебеÑи и Вашите интереÑи"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Биографија"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Локација"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Каде Ñе наоѓате, на пр. „Град, ОблаÑÑ‚, Земја“."
@@ -2776,7 +2987,7 @@ msgstr "Сподели ја мојата тековна локација при
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Ознаки"
@@ -2810,7 +3021,7 @@ msgstr ""
"ÐвтоматÑки претплаќај ме на Ñекој што Ñе претплаќа на мене (најдобро за "
"ботови и Ñл.)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Биографијата е преголема (највеќе до %d знаци)."
@@ -2851,8 +3062,8 @@ msgstr "Ðагодувањата Ñе зачувани"
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Ðадминато е ограничувањето на Ñтраницата (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Ðадминато е ограничувањето на Ñтраницата (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2907,10 +3118,10 @@ msgid ""
"tool. [Join now](%%action.register%%) to share notices about yourself with "
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
-"Ова е %%site.name%%, веб-Ñтраница за [микроблогирање](http://mk.wikipedia."
-"org/wiki/Микроблогирање) базирана на Ñлободната програмÑка алатка [StatusNet]"
-"(http://status.net/). [Зачленете Ñе](%%action.register%%) за да Ñи "
-"Ñподелувате забелешки за Ñебе Ñо приајтелите, ÑемејÑтвото и колегите! "
+"Ова е %%site.name%%, мрежно меÑто за [микроблогирање](http://mk.wikipedia."
+"org/wiki/Микроблогирање) заÑнована на Ñлободната програмÑка алатка "
+"[StatusNet](http://status.net/). [Зачленете Ñе](%%action.register%%) за да "
+"Ñи Ñподелувате забелешки за Ñебе Ñо приајтелите, ÑемејÑтвото и колегите! "
"([Прочитајте повеќе](%%doc.help%%))"
#: actions/public.php:247
@@ -2920,9 +3131,9 @@ msgid ""
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
-"Ова е %%site.name%%, веб-Ñтраница за [микроблогирање](http://mk.wikipedia."
-"org/wiki/Микроблогирање) базирана на Ñлободната програмÑка алатка [StatusNet]"
-"(http://status.net/)."
+"Ова е %%site.name%%, мрежно меÑто за [микроблогирање](http://mk.wikipedia."
+"org/wiki/Микроблогирање) заÑнована на Ñлободната програмÑка алатка "
+"[StatusNet](http://status.net/)."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
@@ -3006,7 +3217,7 @@ msgstr "Прекар или е-поштенÑка адреÑа"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
msgstr ""
-"Вашиот прекар на овој Ñервер или адреÑата за е-пошта Ñо која Ñе "
+"Вашиот прекар на овој опÑлужувач или адреÑата за е-пошта Ñо која Ñе "
"региÑтриравте."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
@@ -3021,7 +3232,7 @@ msgstr "РеÑтетирај ја лозинката"
msgid "Recover password"
msgstr "Пронаоѓање на лозинка"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Побарано е пронаоѓање на лозинката"
@@ -3041,19 +3252,19 @@ msgstr "Врати одново"
msgid "Enter a nickname or email address."
msgstr "ВнеÑете прекар или е-пошта"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Ðема кориÑник Ñо таа е-поштенÑка адреÑа или кориÑничко име."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ðема региÑтрирана адреÑа за е-пошта за тој кориÑник."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Грешка при зачувувањето на потврдата за адреÑа."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3061,110 +3272,128 @@ msgstr ""
"УпатÑтвото за пронаоѓање на Вашата лозинка е иÑпратено до адреÑата за е-"
"пошта што е региÑтрирана Ñо Вашата Ñметка."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Ðеочекувано подновување на лозинката."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Лозинката мора да биде од најмалку 6 знаци."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Двете лозинки не Ñе Ñовпаѓаат."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Грешка во поÑтавувањето на кориÑникот."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Ðовата лозинка е уÑпешно зачувана. Сега Ñте најавени."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Жалиме, региÑтрацијата е Ñамо Ñо покана."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Жалиме, неважечки код за поканата."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "РегиÑтрацијата е уÑпешна"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "РегиÑтрирај Ñе"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "РегиÑтрирањето не е дозволено."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Ðе може да Ñе региÑтрирате ако не ја прифаќате лиценцата."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "ÐдреÑата веќе поÑтои."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Погрешно име или лозинка."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Со овој образец можете да Ñоздадете нова Ñметка. Потоа ќе можете да "
"објавувате забелешки и да Ñе поврзувате Ñо пријатели и колеги. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 мали букви или бројки, без интерпункциÑки знаци и празни меÑта. "
"Задолжително поле."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "Барем 6 знаци. Задолжително поле."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "ИÑто што и лозинката погоре. Задолжително поле."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Е-пошта"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Се кориÑти Ñамо за подновувања, објави и повраќање на лозинка."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Подолго име, по можноÑÑ‚ Вашето виÑтинÑко име и презиме"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Мојот текÑÑ‚ и податотеки Ñе доÑтапни под "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "Сфаќам дека Ñодржината и податоците на %1$s Ñе лични и доверливи."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Ðаведи извор 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "ÐвторÑкото правво на мојот текÑÑ‚ и податотеки го има %1$s."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+"ÐˆÐ°Ñ Ñ˜Ð° задржувам ÑопÑтвеноÑта на авторÑкото право врз мојот текÑÑ‚ и "
+"податотеки."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Сите права задржани."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" оÑвен овие приватни податоци: лозинка, е-пошта, IM-адреÑа и телефонÑки "
-"број."
+"Мојот текÑÑ‚ и податотеки Ñе доÑтапни под %s, оÑвен Ñледниве приватни "
+"податоци: лозинка, е-пошта, IM-адреÑа и телефонÑки број."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3198,7 +3427,7 @@ msgstr ""
"Ви благодариме што Ñе зачленивте и Ви пожелуваме пријатни мигови Ñо оваа "
"Ñлужба."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3213,10 +3442,10 @@ msgid ""
"register%%) a new account. If you already have an account on a [compatible "
"microblogging site](%%doc.openmublog%%), enter your profile URL below."
msgstr ""
-"За да Ñе претплатите, може да Ñе [најавите](%%action.login%%) или да "
+"За да Ñе претплатите, можете да Ñе [најавите](%%action.login%%) или да "
"[региÑтрирате](%%action.register%%) нова Ñметка. Ðко веќе имате Ñметка на "
-"[компатибилна веб-Ñтраница за микроблогирање](%%doc.openmublog%%), внеÑете "
-"го URL-то на Вашиот профил подолу."
+"[уÑоглаÑиво мреж. меÑто за микроблогирање](%%doc.openmublog%%), внеÑете го "
+"URL-то на Вашиот профил подолу."
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
@@ -3224,7 +3453,7 @@ msgstr "Оддалечена претплата"
#: actions/remotesubscribe.php:124
msgid "Subscribe to a remote user"
-msgstr "Претплати Ñе на оддалечен кориÑник"
+msgstr "Претплати Ñе на далечинÑки кориÑник"
#: actions/remotesubscribe.php:129
msgid "User nickname"
@@ -3240,10 +3469,10 @@ msgstr "URL на профилот"
#: actions/remotesubscribe.php:134
msgid "URL of your profile on another compatible microblogging service"
-msgstr "URL на Вашиот профил на друга компатибилна Ñлужба за микроблогирање."
+msgstr "URL на Вашиот профил на друга Ñоодветна Ñлужба за микроблогирање."
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Претплати Ñе"
@@ -3281,7 +3510,7 @@ msgstr "Ðе можете да повторувате ÑопÑтвена забÐ
msgid "You already repeated that notice."
msgstr "Веќе ја имате повторено таа забелешка."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Повторено"
@@ -3319,10 +3548,10 @@ msgstr "Канал Ñо одговори за %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Ова е иÑторијата на која Ñе прикажани одговорите на %1$s, но %2$s Ñè уште "
-"нема добиено порака од некој што Ñака да ја прочита."
+"нема добиено забелешка за нив."
#: actions/replies.php:204
#, php-format
@@ -3336,11 +3565,11 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Можете да го [подбуцнете кориÑникот 1$s](../%2$s) или да [објавите нешто што "
-"Ñакате тој да го прочита](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"Можете да го [подбуцнете кориÑникот 1$s](../%2$s) или да [му иÑпратите нешто]"
+"(%%%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3349,19 +3578,19 @@ msgstr "Одговори на %1$s на %2$s!"
#: actions/revokerole.php:75
msgid "You cannot revoke user roles on this site."
-msgstr "Ðа оваа веб-Ñтраница не можете да одземате кориÑнички улоги."
+msgstr "Ðа ова мрежно меÑто не можете да одземате кориÑнички улоги."
#: actions/revokerole.php:82
msgid "User doesn't have this role."
msgstr "КориÑникот ја нема оваа улога."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65
msgid "You cannot sandbox users on this site."
-msgstr "Ðе можете да Ñтавате кориÑници во пеÑочен режим на оваа веб-Ñтраница."
+msgstr "Ðе можете да Ñтавате кориÑници во пеÑочен режим на ова мрежно меÑто."
#: actions/sandbox.php:72
msgid "User is already sandboxed."
@@ -3369,13 +3598,13 @@ msgstr "КориÑникот е веќе во пеÑочен режим."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "СеÑии"
#: actions/sessionsadminpanel.php:65
msgid "Session settings for this StatusNet site."
-msgstr "Ðагодувања на ÑеÑиите за оваа StatusNet веб-Ñтраница."
+msgstr "Ðагодувања на ÑеÑиите за оваа StatusNet-мрежно меÑто."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3396,7 +3625,7 @@ msgstr "Вклучи извод од поправка на грешки за ÑÐ
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
#: actions/useradminpanel.php:294
msgid "Save site settings"
-msgstr "Зачувај нагодувања на веб-Ñтраницата"
+msgstr "Зачувај нагодувања на мреж. меÑто"
#: actions/showapplication.php:82
msgid "You must be logged in to view an application."
@@ -3406,26 +3635,30 @@ msgstr "Мора да Ñте најавени за да можете да го Ð
msgid "Application profile"
msgstr "Профил на програмот"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Икона"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Име"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Организација"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "ОпиÑ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "СтатиÑтики"
@@ -3516,21 +3749,21 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
-"%s Ñè уште нема додадено забелешки како омилени. Објавете нешто интереÑно, "
-"што кориÑникот би го обележал како омилено :)"
+"%s Ñè уште нема додадено омилени забелешки. Објавете нешто интереÑно, што "
+"кориÑникот би го обележал како омилено :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
-"%s Ñè уште нема додадено омилени забелешки. Зошто не [региÑтрирате Ñметка](%%"
-"%%action.register%%%%) и потоа објавите нешто интереÑно што кориÑникот би го "
+"%s Ñè уште нема додадено омилени забелешки. Зошто не Ñе [региÑтрирате](%%%%"
+"action.register%%%%) и потоа објавите нешто интереÑно што кориÑникот би го "
"додал како омилено :)"
#: actions/showfavorites.php:243
@@ -3547,67 +3780,67 @@ msgstr "Група %s"
msgid "%1$s group, page %2$d"
msgstr "Група %1$s, ÑÑ‚Ñ€. %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Профил на група"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Забелешка"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "ÐлијаÑи"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Групни дејÑтва"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Канал Ñо забелешки за групата %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Канал Ñо забелешки за групата %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Канал Ñо забелешки за групата%s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF за групата %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Членови"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Ðема)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Сите членови"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Создадено"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3616,14 +3849,14 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-"**%s** е кориÑничка група на %%%%site.name%%%%, веб-Ñтраница за "
-"[микроблогирање](http://mk.wikipedia.org/wiki/Микроблогирање) базирана на "
+"**%s** е кориÑничка група на %%%%site.name%%%%, мрежно меÑто за "
+"[микроблогирање](http://mk.wikipedia.org/wiki/Микроблогирање) заÑнована на "
"Ñлободната програмÑка алатка [StatusNet](http://status.net/). Ðејзините "
"членови Ñи разменуваат кратки пораки за нивниот живот и интереÑи. [Зачленете "
"Ñе](%%%%action.register%%%%) за да Ñтанете дел од оваа група и многу повеќе! "
"([Прочитајте повеќе](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3631,12 +3864,12 @@ msgid ""
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
msgstr ""
-"**%s** е кориÑничка група на %%%%site.name%%%%, веб-Ñтраница за "
-"[микроблогирање](http://mk.wikipedia.org/wiki/Микроблогирање) базирана на "
+"**%s** е кориÑничка група на %%%%site.name%%%%, мрежно меÑто за "
+"[микроблогирање](http://mk.wikipedia.org/wiki/Микроблогирање) заÑнована на "
"Ñлободната програмÑка алатка [StatusNet](http://status.net/). Ðејзините "
"членови Ñи разменуваат кратки пораки за нивниот живот и интереÑи. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "ÐдминиÑтратори"
@@ -3713,11 +3946,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Можете да го подбуцнете кориÑникот %1$s или [да објавите нешто што Ñакате да "
-"го прочита](%%%%action.newnotice%%%%?status_textarea=%2$s)."
+"Можете да го подбуцнете кориÑникот %1$s или [му иÑпратите нешто](%%%%action."
+"newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3727,8 +3960,8 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-"**%s** има Ñметка на %%%%site.name%%%%, веб-Ñтраница за [микроблогирање]"
-"(http://mk.wikipedia.org/wiki/Микроблогирање) базирана на Ñлободната "
+"**%s** има Ñметка на %%%%site.name%%%%, мрежно меÑто за [микроблогирање]"
+"(http://mk.wikipedia.org/wiki/Микроблогирање) заÑнована на Ñлободната "
"програмÑка алатка [StatusNet](http://status.net/). [Зачленете Ñе](%%%%action."
"register%%%%) за да можете да ги Ñледите забелешките на **%s** и многу "
"повеќе! ([Прочитајте повеќе](%%%%doc.help%%%%))"
@@ -3740,8 +3973,8 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
-"**%s** има Ñметка на %%%%site.name%%%%, веб-Ñтраница за [микроблогирање]"
-"(http://mk.wikipedia.org/wiki/Микроблогирање) базирана на Ñлободната "
+"**%s** има Ñметка на %%%%site.name%%%%, мрежно меÑто за [микроблогирање]"
+"(http://mk.wikipedia.org/wiki/Микроблогирање) заÑнована на Ñлободната "
"програмÑка алатка [StatusNet](http://status.net/). "
#: actions/showstream.php:305
@@ -3751,7 +3984,7 @@ msgstr "Повторувања на %s"
#: actions/silence.php:65 actions/unsilence.php:65
msgid "You cannot silence users on this site."
-msgstr "Ðе можете да замолчувате кориÑници на оваа веб-Ñтраница."
+msgstr "Ðе можете да замолчувате кориÑници на ова мрежно меÑто."
#: actions/silence.php:72
msgid "User is already silenced."
@@ -3759,11 +3992,11 @@ msgstr "КориÑникот е веќе замолчен."
#: actions/siteadminpanel.php:69
msgid "Basic settings for this StatusNet site"
-msgstr "ОÑновни поÑтавки за оваа StatusNet веб-Ñтраница."
+msgstr "ОÑновни поÑтавки за оваа StatusNet-мрежно меÑто."
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
-msgstr "Должината на името на веб-Ñтраницата не може да изнеÑува нула."
+msgstr "Должината на името на мрежното меÑто не може да изнеÑува нула."
#: actions/siteadminpanel.php:141
msgid "You must have a valid contact email address."
@@ -3775,11 +4008,11 @@ msgid "Unknown language \"%s\"."
msgstr "Ðепознат јазик „%s“"
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Минималното ограничување на текÑтот изнеÑува 140 знаци."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Минималниот дозволен текÑÑ‚ изнеÑува 0 (неограничено)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "Ограничувањето на дуплирањето мора да изнеÑува барем 1 Ñекунда."
#: actions/siteadminpanel.php:221
@@ -3788,11 +4021,11 @@ msgstr "Општи"
#: actions/siteadminpanel.php:224
msgid "Site name"
-msgstr "Име на веб-Ñтраницата"
+msgstr "Име на мрежното меÑто"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr "Името на Вашата веб-Ñтраница, како на пр. „Микроблог на Вашафирма“"
+msgstr "Името на Вашето мрежно меÑто, како на пр. „Микроблог на Вашафирма“"
#: actions/siteadminpanel.php:229
msgid "Brought by"
@@ -3816,7 +4049,7 @@ msgstr ""
#: actions/siteadminpanel.php:239
msgid "Contact email address for your site"
-msgstr "Контактна е-пошта за Вашата веб-Ñтраница"
+msgstr "Контактна е-пошта за Вашето мрежното меÑто"
#: actions/siteadminpanel.php:245
msgid "Local"
@@ -3828,7 +4061,7 @@ msgstr "ОÑновна чаÑовна зона"
#: actions/siteadminpanel.php:257
msgid "Default timezone for the site; usually UTC."
-msgstr "Матична чаÑовна зона за веб-Ñтраницата; обично UTC."
+msgstr "Матична чаÑовна зона за мрежното меÑто; обично UTC."
#: actions/siteadminpanel.php:262
msgid "Default language"
@@ -3836,7 +4069,7 @@ msgstr "ОÑновен јазик"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
-msgstr "Јазик на веб-Ñтраницата ако прелиÑтувачот не може да го препознае Ñам"
+msgstr "Јазик на мрежното меÑто ако прелиÑтувачот не може да го препознае Ñам"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3866,69 +4099,96 @@ msgstr "Објава на Ñтраница"
#: actions/sitenoticeadminpanel.php:67
msgid "Edit site-wide message"
-msgstr "Уреди објава за цела веб-Ñтраница"
+msgstr "Уреди објава за цело мрежно меÑто"
#: actions/sitenoticeadminpanel.php:103
msgid "Unable to save site notice."
-msgstr "Ðе можам да ја зачувам објавата за веб-Ñтраницата."
+msgstr "Ðе можам да ја зачувам објавата за мрежното меÑто."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "Објавата за цела веб-Ñтраница не треба да има повеќе од 255 знаци"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Објавата за цело мрежно меÑто не треба да Ñодржи повеќе од 255 знаци."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
-msgstr "ТекÑÑ‚ на објавата за веб-Ñтраницата"
+msgstr "ТекÑÑ‚ на објавата за мрежното меÑто"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
-"ТекÑÑ‚ за главна објава по цела веб-Ñтраница (највеќе до 255 знаци; дозволено "
+"ТекÑÑ‚ за главна објава по цело мрежно меÑто (највеќе до 255 знаци; дозволено "
"и HTML)"
#: actions/sitenoticeadminpanel.php:198
msgid "Save site notice"
msgstr "Зачувај ја објавава"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Ðагодувања за СМС"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Можете да примате СМС пораки по е-пошта од %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "СМС-пораките Ñе недоÑтапни."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "СМС адреÑа"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Тековен потврден телефонÑки број Ñо можноÑÑ‚ за СМС."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Очекувам потврда за овој телефонÑки број."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Потврден код"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "ВнеÑете го кодот што го добивте по телефон."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Потврди"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "ТелефонÑки број за СМС"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
"ТелефонÑки број, без интерпункциÑки знаци и празни меÑта, Ñо повикувачки код"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "СМС нагодувања"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3936,23 +4196,33 @@ msgstr ""
"ИÑпраќај ми забелешки по СМС; разбрам дека ова може да доведе до прекумерни "
"трошоци."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "СМС нагодувањата Ñе зачувани."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ðема телефонÑки број."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Ðемате избрано оператор."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Ова и Ñега е Вашиот телефонÑки број."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Тој телефонÑки број е веќе во употреба од друг кориÑник."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3960,23 +4230,40 @@ msgstr ""
"Ðа телефонÑкиот број што го додадовте е иÑпратен потврден код. Проверете Ñи "
"го телефонот за да го видите кодот, заедно Ñо напатÑтвија за негова употреба."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Ова е погрешен потврден број."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Потврдата за СМС е откажана."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Тоа не е Вашиот телефонÑки број."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "ТелефонÑкиот број за СМС е отÑтранет."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Мобилен оператор"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Изберете оператор"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3985,13 +4272,14 @@ msgstr ""
"Мобилен оператор за телефонот. Ðко знаете оператор што прифаќа СМС преку е-"
"пошта, но не фигурира овде, извеÑтете нè на %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Ðема внеÑено код"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Снимки"
@@ -4012,7 +4300,7 @@ msgid "Invalid snapshot report URL."
msgstr "Ðеважечки URL за извештај од Ñнимката."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "По ÑлучајноÑÑ‚ во текот на поÑета"
#: actions/snapshotadminpanel.php:201
@@ -4025,7 +4313,8 @@ msgstr "Снимки од податоци"
#: actions/snapshotadminpanel.php:208
msgid "When to send statistical data to status.net servers"
-msgstr "Кога да им Ñе иÑпраќаат ÑтатиÑтички податоци на status.net Ñерверите"
+msgstr ""
+"Кога да им Ñе иÑпраќаат ÑтатиÑтички податоци на status.net опÑлужувачите"
#: actions/snapshotadminpanel.php:217
msgid "Frequency"
@@ -4051,8 +4340,8 @@ msgstr "Зачувај поÑтавки за Ñнимки"
msgid "You are not subscribed to that profile."
msgstr "Ðе Ñте претплатени на тој профил."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Ðе можев да ја зачувам претплатата."
@@ -4067,7 +4356,7 @@ msgstr "Ðема таков профил."
#: actions/subscribe.php:117
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
msgstr ""
-"Ðе можете да Ñе претплатите на OMB 0.1 оддалечен профил Ñо ова дејÑтво."
+"Ðе можете да Ñе претплатите на OMB 0.1 далечинÑки профил Ñо ова дејÑтво."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4153,11 +4442,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s не Ñледи никого."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "СМС"
@@ -4190,12 +4479,12 @@ msgstr "Ðема ID-аргумент."
msgid "Tag %s"
msgstr "Означи %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "КориÑнички профил"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Фото"
@@ -4230,10 +4519,6 @@ msgstr "Со овој образец додавајте ознаки во Ваш
msgid "No such tag."
msgstr "Ðема таква ознака."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-методот е во изработка."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Го немате блокирано тој кориÑник."
@@ -4247,8 +4532,8 @@ msgid "User is not silenced."
msgstr "КориÑникот не е замолчен."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "Во барањето нема id на профилот."
+msgid "No profile ID in request."
+msgstr "!Во барањето нема ID на профилот."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4259,8 +4544,8 @@ msgstr "Претплатата е откажана"
msgid ""
"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
msgstr ""
-"Лиценцата на потокот на Ñледачот „%1$s“ не е компатибилна Ñо лиценцата на "
-"веб-Ñтраницата „%2$s“."
+"Лиценцата на каналот на Ñледачот „%1$s“ не е Ñоодветна на лиценцата на "
+"мрежното меÑто „%2$s“."
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
@@ -4270,7 +4555,7 @@ msgstr "КориÑник"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
-msgstr "КориÑнички нагодувања за оваа StatusNet веб-Ñтраница."
+msgstr "КориÑнички нагодувања за ова StatusNet-мрежно меÑто."
#: actions/useradminpanel.php:149
msgid "Invalid bio limit. Must be numeric."
@@ -4285,7 +4570,8 @@ msgstr "ÐЕважечки текÑÑ‚ за добредојде. ДозволеÐ
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Ðеважечки Ð¾Ð¿Ð¸Ñ Ð¿Ð¾ оÑновно: „%1$s“ не е кориÑник."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Профил"
@@ -4344,7 +4630,7 @@ msgstr ""
"за забелешките на овој кориÑник. Ðко не Ñакате да Ñе претплатите, едноÑтавно "
"кликнете на „Одбиј“"
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Лиценца"
@@ -4380,7 +4666,7 @@ msgid ""
"subscription. Your subscription token is:"
msgstr ""
"Претплатата е одобрена, но не е зададена обратна URL-адреÑа. Проверете ги "
-"инÑтрукциите на веб-Ñтраницата за да дознаете како Ñе одобрува претплата. "
+"инÑтрукциите на мрежното меÑто за да дознаете како Ñе одобрува претплата. "
"Жетонот на Вашата претплата е:"
#: actions/userauthorization.php:266
@@ -4394,7 +4680,7 @@ msgid ""
"subscription."
msgstr ""
"Претплатата е одбиена, но не е зададена обратна URL-адреÑа. Проверете ги "
-"инÑтрукциите на веб-Ñтраницата за да дознаете како Ñе одбива претплата во "
+"инÑтрукциите на мрежното меÑто за да дознаете како Ñе одбива претплата во "
"потполноÑÑ‚."
#: actions/userauthorization.php:303
@@ -4448,64 +4734,70 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Добар апетит!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Групи %1$s, ÑÑ‚Ñ€. %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Пребарај уште групи"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s не членува во ниедна група."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Обидете Ñе Ñо [пребарување на групи](%%action.groupsearch%%) и придружете им "
"Ñе."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Подновувања од %1$s на %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-"Оваа веб-Ñтраница работи на %1$s верзија %2$s, ÐвторÑки права 2008-2010 "
+"Ова мрежно меÑто работи на %1$s верзија %2$s, ÐвторÑки права 2008-2010 "
"StatusNet, Inc. и учеÑници."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "УчеÑници"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
"Software Foundation, either version 3 of the License, or (at your option) "
"any later version. "
msgstr ""
-"StatusNet е Ñлободен ÑофтверÑки програм: можете да го редиÑтрибуирате и/или "
-"менувате под уÑловите на Општата јавна лиценца ГÐУ Ðферо Ñпоред одредбите на "
-"Фондацијата за Ñлободен Ñофтвер, верзија 3 на лиценцата, или (по Ваш избор) "
-"било која подоцнежна верзија. "
+"StatusNet е Ñлободен програм: можете да го редиÑтрибуирате и/или менувате "
+"под уÑловите на Општата јавна лиценца ГÐУ Ðферо Ñпоред одредбите на "
+"Фондацијата за Ñлободна програмÑка опрема, верзија 3 на лиценцата, или (по "
+"Ваш избор) било која подоцнежна верзија. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4517,7 +4809,7 @@ msgstr ""
"или ПОГОДÐОСТ ЗРОПРЕДЕЛЕÐРЦЕЛ. Погледајте ја Општата јавна лиценца ГÐУ "
"Ðферо за повеќе подробноÑти. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4526,92 +4818,141 @@ msgstr ""
"Треба да имате добиено примерок од Општата јавна лиценца ГÐУ Ðферо заедно Ñо "
"овој програм. Ðко ја немате, погледајте %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Приклучоци"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Верзија"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Ðвтор(и)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Ðе можам да ја обработам URL-адреÑата „%s“"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Робин миÑли дека нешто е невозможно."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Ðиедна податотека не Ñмее да биде поголема од %d бајти, а подаотеката што ја "
+"Податотеките не Ñмеат да бидат поголеми од %d бајти, а податотеката што ја "
"иÑпративте Ñодржи %d бајти. Подигнете помала верзија."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"Волку голема податотека ќе ја надмине Вашата кориÑничка квота од %d бајти."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "ВОлку голема податотека ќе ја надмине Вашата меÑечна квота од %d бајти"
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Погрешно податотечно име."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Зачленувањето во групата не уÑпеа."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Ðе е дел од групата."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Ðапуштањето на групата не уÑпеа."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Ðе можев да ја подновам локалната група."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Ðе можам да Ñоздадам најавен жетон за"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Ðикаде не е пронајдено име на базата или DSN."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Забрането Ви е иÑпраќање на директни пораки."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Ðе можев да ја иÑпратам пораката."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Ðе можев да ја подновам пораката Ñо нов URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Грешка во базата на податоци при вметнувањето на хеш-ознака: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Ðема таков профил (%1$d) за забелешката (%2$d)."
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Грешка во базата на податоци при вметнувањето на хеш-ознаката: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Проблем Ñо зачувувањето на белешката. Премногу долго."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Проблем Ñо зачувувањето на белешката. Ðепознат кориÑник."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Премногу забелњшки за прекратко време; здивнете малку и продолжете за "
"неколку минути."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4619,363 +4960,459 @@ msgstr ""
"Премногу дуплирани пораки во прекратко време; здивнете малку и продолжете за "
"неколку минути."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
-msgstr "Забрането Ви е да објавувате забелешки на оваа веб-Ñтраница."
+msgstr "Забрането Ви е да објавувате забелешки на ова мрежно меÑто."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Проблем во зачувувањето на белешката."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Ðа saveKnownGroups му е уакажан грешен тип"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Проблем при зачувувањето на групното приемно Ñандаче."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Ðе можам да му ја одземам улогата „%1$s“ на кориÑникот #%2$s. Таква улога не "
+"поÑтои."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Ðе можам да му ја одземам улогата „%1$s“ на кориÑникот #%2$d. Има грешка во "
+"базата на податоци."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "ÐедоÑтаÑува профил."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Ðе можам да ја зачувам ознаката."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Блокирани Ñте од претплаќање."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Веќе претплатено!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "КориÑникот Ве има блокирано."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Ðе Ñте претплатени!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Ðе можам да ја избришам Ñамопретплатата."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
-msgstr "Ðе можете да го избришете OMB-жетонот за претплата."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Ðе можам да го избришам OMB-жетонот за претплата."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr "Претплата не може да Ñе избрише."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr "Ðе можам да ја избришам претплатата."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Добредојдовте на %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Ðе можев да ја Ñоздадам групата."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Ðе можев да поÑтавам URI на групата."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Ðе можев да назначам членÑтво во групата."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Ðе можев да ги зачувам информациите за локалните групи."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Смени профилни нагодувања"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Подигни аватар"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Смени лозинка"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Смени ракување Ñо е-пошта"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "ÐамеÑтете изглед на Вашиот профил"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Друго"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Други нагодувања"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Друго"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Страница без наÑлов"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Главна навигација"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Личен профил и хронологија на пријатели"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Лично"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Промена на е-пошта, аватар, лозинка, профил"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Поврзи Ñе Ñо уÑлуги"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Поврзи Ñе"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr "Промена на поÑтавките на веб-Ñтраницата"
+msgstr "Промена на поÑтавките на мрежното меÑто"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Ðдмин"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Поканете пријатели и колеги да Ви Ñе придружат на %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Покани"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Одјава"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Одјава"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Создај Ñметка"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "РегиÑтрација"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Ðајава"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Ðајава"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Ðапомош!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Помош"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Пребарајте луѓе или текÑÑ‚"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Барај"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr "Ðапомена за веб-Ñтраницата"
+msgstr "Ðапомена за мрежното меÑто"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Локални прегледи"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Ðапомена за Ñтраницата"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Споредна навигација"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Помош"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "За"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "ЧПП"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "УÑлови"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "ПриватноÑÑ‚"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Изворен код"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Контакт"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Значка"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Лиценца на програмот StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-"**%%site.name%%** е ÑÐµÑ€Ð²Ð¸Ñ Ð·Ð° микроблогирање што ви го овозможува [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"**%%site.name%%** е уÑлуга за микроблогирање обозможена од [%%site.broughtby%"
+"%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** е ÑÐµÑ€Ð²Ð¸Ñ Ð·Ð° микроблогирање."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
"s, available under the [GNU Affero General Public License](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-"Работи на [StatusNet](http://status.net/) Ñофтверот за микроблогирање, "
-"верзија %s, доÑтапен пд [GNU Affero General Public License](http://www.fsf."
-"org/licensing/licenses/agpl-3.0.html)."
+"Работи на [StatusNet](http://status.net/) - програмÑка опрема за "
+"микроблогирање, верзија %s, доÑтапна под [GNU Affero General Public License]"
+"(http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
-msgstr "Лиценца на Ñодржините на веб-Ñтраницата"
+msgstr "Лиценца на Ñодржините на мрежното меÑто"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Содржината и податоците на %1$s Ñе лични и доверливи."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"ÐвторÑките права на Ñодржината и податоците Ñе во ÑопÑтвеноÑÑ‚ на %1$s. Сите "
"права задржани."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"ÐвторÑките права на Ñодржината и податоците им припаѓаат на учеÑниците. Сите "
"права задржани."
-#: lib/action.php:847
-msgid "All "
-msgstr "Сите "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "лиценца."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Сите Ñодржини и податоци на %1$s Ñе доÑтапни под лиценцата %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Прелом на Ñтраници"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "По"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Пред"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Се очекува коренÑки каналÑки елемент, но добив цел XML документ."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
-msgstr "Сè уште не е поддржана обработката на оддалечена Ñодржина."
+msgstr "Сè уште не е поддржана обработката на далечинÑка Ñодржина."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Сè уште не е поддржана обработката на XML Ñодржина."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Сè уште не е доÑтапна обработката на вметната Base64 Ñодржина."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
-msgstr "Ðе можете да ја менувате оваа веб-Ñтраница."
+msgstr "Ðе можете да врште измени на ова мрежно меÑто."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Менувањето на тој алатник не е дозволено."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() не е имплементирано."
@@ -4985,154 +5422,192 @@ msgstr "showForm() не е имплементирано."
msgid "saveSettings() not implemented."
msgstr "saveSettings() не е имплементирано."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Ðе можам да ги избришам нагодувањата за изглед."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
-msgstr "ОÑновни нагодувања на веб-Ñтраницата"
+msgstr "ОÑновни нагодувања на мрежното меÑто"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
-msgstr "Веб-Ñтраница"
+msgstr "Мреж. меÑто"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
-msgstr "Конфигурација на изгледот"
+msgstr "ПоÑтавки на изгледот"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Изглед"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Конфигурација на кориÑник"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "КориÑник"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Конфигурација на приÑтапот"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Конфигурација на патеки"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Конфигурација на ÑеÑиите"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Уреди објава за веб-Ñтраницата"
+msgstr "Уреди објава за мрежното меÑто"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "ПоÑтавки за Ñнимки"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"API-реÑурÑот бара да може и да чита и да запишува, а вие можете Ñамо да "
"читате."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr "ÐеуÑпешен обид за API-заверка, прекар = %1$s, прокÑи = %2$s, IP = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Уреди програм"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Икона за овој програм"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Опишете го програмот Ñо %d знаци"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Опишете го Вашиот програм"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Изворна URL-адреÑа"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL на Ñтраницата на програмот"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Изворна URL-адреÑа"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Организацијата одговорна за овој програм"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL на Ñтраницата на организацијата"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL за пренаÑочување по заверката"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "ПрелиÑтувач"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Работна површина"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Тип на програм, прелиÑтувач или работна површина"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Само читање"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Читање-пишување"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"ОÑновно-зададен приÑтап за овој програм: Ñамо читање, или читање-пишување"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Откажи"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "читање-пишување"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "Ñамо читање"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Одобрено %1$s - „%2$s“ приÑтап."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Одземи"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Прилози"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Ðвтор"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Обезбедувач"
@@ -5144,45 +5619,64 @@ msgstr "Забелешки кадешто Ñе јавува овој прилоÐ
msgid "Tags for this attachment"
msgstr "Ознаки за овој прилог"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Менувањето на лозинката не уÑпеа"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Менувањето на лозинка не е дозволено"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Резултати од наредбата"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Ðаредбата е завршена"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Ðаредбата не уÑпеа"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Жалиме, оваа наредба Ñè уште не е имплементирана."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Ðе поÑтои забелешка Ñо таков id"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "КориÑникот нема поÑледна забелешка"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Ðе можев да пронајдам кориÑник Ñо прекар %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Ðе можев да пронајдам локален кориÑник Ñо прекар %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Жалиме, оваа наредба Ñè уште не е имплементирана."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Ðема баш логика да Ñе подбуцнувате Ñами ÑебеÑи."
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "ИÑпратено подбуцнување на %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5193,198 +5687,204 @@ msgstr ""
"Претплатници: %2$s\n"
"Забелешки: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Ðе поÑтои забелешка Ñо таков id"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "КориÑникот нема поÑледна забелешка"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Забелешката е обележана како омилена."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Веќе членувате во таа група"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Ðе можев да го зачленам кориÑникот %s во групата %s"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s Ñе зачлени во групата %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Ðе можев да го отÑтранам кориÑникот %s од групата %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Ðе можев да го зачленам кориÑникот %1$s во групата %2$s"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s ја напушти групата %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Ðе можев да го отÑтранам кориÑникот %1$s од групата %2$s."
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Име и презиме: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Локација: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Домашна Ñтраница: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "За: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-"Пораката е предолга - дозволени Ñе највеќе %d знаци, а вие иÑпративте %d"
+"%s е далечинÑки профил; можете да праќате директни пораки Ñамо до кориÑници "
+"на иÑтиот опÑлужувач."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Пораката е предолга - дозволени Ñе највеќе %1$d знаци, а вие иÑпративте %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Директната порака до %s е иÑпратена"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Грашка при иÑпаќањето на директната порака."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Ðе можете да повторувате ÑопÑтвени забалешки"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Оваа забелешка е веќе повторена"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Забелешката од %s е повторена"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Грешка при повторувањето на белешката."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
"Забелешката е предолга - треба да нема повеќе од %d знаци, а Вие иÑпративте %"
"d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Одговорот на %s е иÑпратен"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Грешка при зачувувањето на белешката."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Ðазначете го името на кориÑникот на којшто Ñакате да Ñе претплатите"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Ðема таков кориÑник"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Ðе можете да Ñе претплаќате на OMB профили по наредба."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Претплатено на %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Ðазначете го името на кориÑникот од кого откажувате претплата."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Претплатата на %s е откажана"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Ðаредбата Ñè уште не е имплементирана."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "ИзвеÑтувањето е иÑклучено."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Ðе можам да иÑклучам извеÑтување."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "ИзвеÑтувањето е вклучено."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Ðе можам да вклучам извеÑтување."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Ðаредбата за најава е оневозможена"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr "Оваа врÑка може да Ñе употреби Ñамо еднаш, и трае Ñамо 2 минути: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Откажана претплата на %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Ðе Ñте претплатени никому."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ðе ни го иÑпративте тој профил."
msgstr[1] "Ðе ни го иÑпративте тој профил."
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ðикој не е претплатен на ВаÑ."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Оддалечена претплата"
msgstr[1] "Оддалечена претплата"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Ðе членувате во ниедна група."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Ðе ни го иÑпративте тој профил."
msgstr[1] "Ðе ни го иÑпративте тој профил."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5430,9 +5930,9 @@ msgstr ""
"off - иÑклучи извеÑтувања\n"
"help - прикажи ја оваа помош\n"
"follow <nickname> - претплати Ñе на кориÑник\n"
-"groups - лиÑта на групи кадешто членувате\n"
-"subscriptions - лиÑта на луѓе кои ги Ñледите\n"
-"subscribers - лиÑта на луѓе кои ве Ñледат\n"
+"groups - ÑпиÑок на групи кадешто членувате\n"
+"subscriptions - ÑпиÑок на луѓе кои ги Ñледите\n"
+"subscribers - ÑпиÑок на луѓе кои ве Ñледат\n"
"leave <nickname> - откажи претплата на кориÑник\n"
"d <nickname> <text> - директна порака за кориÑник\n"
"get <nickname> - прикажи поÑледна забелешка на кориÑник\n"
@@ -5444,7 +5944,7 @@ msgstr ""
"reply #<notice_id> - одговори на забелешка Ñо даден id\n"
"reply <nickname> - одговори на поÑледна забелешка на кориÑник\n"
"join <group> - зачлени Ñе во група\n"
-"login - Дај врÑка за најавување на веб-интерфејÑот\n"
+"login - Дај врÑка за најавување на поÑредникот\n"
"drop <group> - напушти група\n"
"stats - прикажи мои ÑтатиÑтики\n"
"stop - иÑто што и 'off'\n"
@@ -5463,19 +5963,19 @@ msgstr ""
"tracks - Ñè уште не е имплементирано.\n"
"tracking - Ñè уште не е имплементирано.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Ðема пронајдено конфигурациÑка податотека. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Побарав конфигурациони податотеки на Ñледниве меÑта: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Препорачуваме да го пуштите инÑталатерот за да го поправите ова."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Оди на инÑталаторот."
@@ -5568,7 +6068,7 @@ msgstr "Ознака"
#: lib/galleryaction.php:141
msgid "Choose a tag to narrow list"
-msgstr "Одберете ознака за да ја уточните лиÑтата"
+msgstr "Одберете ознака за да го ограничите ÑпиÑокот"
#: lib/galleryaction.php:143
msgid "Go"
@@ -5649,53 +6149,54 @@ msgstr "Групи Ñо највеќе објави"
msgid "Tags in %s group's notices"
msgstr "Ознаки во забелешките на групата %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Оваа Ñтраница не е доÑтапна во форматот кој Вие го прифаќате."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Ðеподдржан фомрат на Ñлики."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Ова е предолго. МакÑималната должина е 140 знаци."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Делумно подигање."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "СиÑтемÑка грешка при подигањето на податотеката."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Ðе е Ñлика или податотеката е пореметена."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Ðеподдржан фомрат на Ñлики."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Податотеката е изгубена."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Ðепознат тип на податотека"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "МБ"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "кб"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Ðепознат извор на приемна пошта %d."
@@ -5716,11 +6217,13 @@ msgstr "Ðајава Ñо кориÑничко име и лозинка"
msgid "Sign up for a new account"
msgstr "Создај нова Ñметка"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Потврдување на адреÑата"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5750,12 +6253,24 @@ msgstr ""
"Ви благодариме за потрошеното време, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s Ñега ги Ñледи Вашите забелешки на %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Доколку Ñметате дека Ñметкава Ñе злоупотребува, тогаш можете да ја блокирате "
+"од ÑпиÑокот на претплатници и да ја пријавите како Ñпам кај админиÑтраторите "
+"на %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5781,17 +6296,20 @@ msgstr ""
"Изменете Ñи ја е-поштенÑката адреÑа или ги нагодувањата за извеÑтувања на %8"
"$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Биографија: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ðова е-поштенÑка адреÑа за објавување на %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5812,21 +6330,31 @@ msgstr ""
"Со иÑкрена почит,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð½Ð° %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Потврда за СМС"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: потврдете го како Ñвој телефонÑкиов број Ñо Ñледниов код:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s Ве подбуцна"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5853,12 +6381,14 @@ msgstr ""
"Со почит,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ðова приватна порака од %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5891,12 +6421,14 @@ msgstr ""
"Со почит,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) додаде Ваша забелешка како омилена"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5927,19 +6459,32 @@ msgstr ""
"\n"
"%4$s\n"
"\n"
-"Погледнете лиÑта на омилените забелешки на %1$s тука:\n"
+"Погледнете ÑпиÑок на омилените забелешки на %1$s тука:\n"
"\n"
"%5$s\n"
"\n"
"Со иÑкрена почит,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Целиот разговор може да Ñе проÑледи тука:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) Ви иÑпрати забелешка што Ñака да ја прочитате"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5952,18 +6497,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) штотуку Ви иÑпрати забелешка што Ñака да ја видите („@-"
-"одговор“) на %2$s.\n"
+"%1$s (@%9$s) штотуку Ви даде на знаење за забелешката ('@-одговор') на %2"
+"$s.\n"
"\n"
-"Забелешката ќе ја најдете тука:\n"
+"Еве ја забелешката:\n"
"\n"
"%3$s\n"
"\n"
-"ГлаÑи:\n"
+"Таа глаÑи:\n"
"\n"
"%4$s\n"
"\n"
+"%5$sМожете да одговорите на неа тука:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Еве ÑпиÑок на Ñите @-одговори за ваÑ:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Со почит,\n"
+"%2$s\n"
+"\n"
+"П.С. Можете да ги иÑклучите овие извеÑтувања по е-пошта тука: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5978,7 +6547,7 @@ msgstr ""
"впуштите во разговор Ñо други кориÑници. Луѓето можат да ви иÑпраќаат пораки "
"што ќе можете да ги видите Ñамо Вие."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "од"
@@ -6039,27 +6608,27 @@ msgstr "Податотеката не може да Ñе запише на диÑ
msgid "File upload stopped by extension."
msgstr "Подигањето на податотеката е запрено од проширувањето."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Податотеката ја надминува квотата на кориÑникот."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Податотеката не може да Ñе премеÑти во целниот директориум."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Ðе можев да го утврдам mime-типот на податотеката."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Обидете Ñе Ñо друг формат на %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
-msgstr "%s не е поддржан тип на податотека на овој Ñервер."
+msgstr "%s не е поддржан тип на податотека на овој опÑлужувач."
#: lib/messageform.php:120
msgid "Send a direct notice"
@@ -6093,7 +6662,7 @@ msgstr "Приложи"
#: lib/noticeform.php:196
msgid "Attach a file"
-msgstr "Прикажи податотека"
+msgstr "Приложи податотека"
#: lib/noticeform.php:212
msgid "Share my location"
@@ -6111,48 +6680,52 @@ msgstr ""
"Жалиме, но добивањето на Вашата меÑтоположба трае подолго од очекуваното. "
"Обидете Ñе подоцна."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "С"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "Ј"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "И"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "З"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "во"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "во контекÑÑ‚"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Повторено од"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Одговори на забелешкава"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Одговор"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Забелешката е повторена"
@@ -6176,9 +6749,13 @@ msgstr "Грешка во внеÑувањето на новиот профил"
msgid "Error inserting avatar"
msgstr "Грешка во внеÑувањето на аватарот"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Грешка во подновувањето на далечинÑкиот профил"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
-msgstr "Грешка во внеÑувањето на оддалечениот профил"
+msgstr "Грешка во внеÑувањето на далечинÑкиот профил"
#: lib/oauthstore.php:345
msgid "Duplicate notice"
@@ -6221,11 +6798,11 @@ msgstr "Ваши иÑпратени пораки"
msgid "Tags in %s's notices"
msgstr "Ознаки во забелешките на %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Ðепознато"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Претплати"
@@ -6233,31 +6810,32 @@ msgstr "Претплати"
msgid "All subscriptions"
msgstr "Сите претплати"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Претплатници"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Сите претплатници"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "КориÑнички ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Член од"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Дневен проÑек"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Сите групи"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Ðема return-to аргументи."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Ðеимплементиран метод."
@@ -6281,11 +6859,19 @@ msgstr "Избрани"
msgid "Popular"
msgstr "Популарно"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Ðема return-to аргументи."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Да ја повторам белешкава?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Да"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Повтори ја забелешкава"
@@ -6294,7 +6880,7 @@ msgstr "Повтори ја забелешкава"
msgid "Revoke the \"%s\" role from this user"
msgstr "Одземи му ја улогата „%s“ на кориÑников"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Ðе е зададен кориÑник за еднокориÑничкиот режим."
@@ -6308,7 +6894,7 @@ msgstr "Стави го кориÑников во пеÑочен режим"
#: lib/searchaction.php:120
msgid "Search site"
-msgstr "Пребарај по веб-Ñтраницата"
+msgstr "Пребарај по мрежното меÑто"
#: lib/searchaction.php:126
msgid "Keyword(s)"
@@ -6328,7 +6914,7 @@ msgstr "Луѓе"
#: lib/searchgroupnav.php:81
msgid "Find people on this site"
-msgstr "Пронајдете луѓе на оваа веб-Ñтраница"
+msgstr "Пронајдете луѓе на ова мрежно меÑто"
#: lib/searchgroupnav.php:83
msgid "Find content of notices"
@@ -6336,7 +6922,7 @@ msgstr "Пронајдете Ñодржини на забелешките"
#: lib/searchgroupnav.php:85
msgid "Find groups on this site"
-msgstr "Пронајдете групи на оваа веб-Ñтраница"
+msgstr "Пронајдете групи на ова мрежно меÑто"
#: lib/section.php:89
msgid "Untitled section"
@@ -6392,6 +6978,52 @@ msgstr "Облак од ознаки за луѓе"
msgid "None"
msgstr "Без ознаки"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"ОпÑлужувачот не може да Ñе Ñправи Ñо подигања на изгледи без ZIP-поддршка."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Податотеката за изгледот недоÑтаÑува или подигањето не уÑпеало."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Зачувувањето на мотивот не уÑпеа."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Ðеважечки изглед: лош ÑоÑтав на папката."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Подигнатиот изглед е преголем; мора да биде помал од %d бајти (незбиен)."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Ðеважечки архив за изглеедот: недоÑтаÑува податотеката css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Изгледот Ñодржи неважечки назив на податотека или папка. Дозволени Ñе Ñамо "
+"ASCII-букви, бројки, долна црта и знак за минуÑ."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Изгледот Ñодржи податотека од типот „.%s“, која не е дозволена."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Грешка при отворањето на архивот за мотив."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Ðајактивни објавувачи"
@@ -6420,89 +7052,108 @@ msgstr "Откажи претплата од овој корÑиник"
msgid "Unsubscribe"
msgstr "Откажи ја претплатата"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "КориÑникот %s (%d) нема профилен запиÑ."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Уреди аватар"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "КориÑнички дејÑтва"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Бришењето на кориÑникот е во тек..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Уреди нагодувања на профилот"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Уреди"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "ИÑпрати му директна порака на кориÑников"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Порака"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Модерирај"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "КориÑничка улога"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "ÐдминиÑтратор"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Модератор"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "пред неколку Ñекунди"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "пред една минута"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "пред %d минути"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "пред еден чаÑ"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "пред %d чаÑа"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "пред еден ден"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
-msgstr "пред %d денови"
+msgstr "пред %d дена"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "пред еден меÑец"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "пред %d меÑеца"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "пред една година"
@@ -6516,7 +7167,7 @@ msgstr "%s не е важечка боја!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s не е важечка боја! КориÑтете 3 или 6 шеÑнаеÑетни (hex) знаци."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/nb/LC_MESSAGES/statusnet.po b/locale/nb/LC_MESSAGES/statusnet.po
index b687e445e..ab0506e34 100644
--- a/locale/nb/LC_MESSAGES/statusnet.po
+++ b/locale/nb/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-08 21:11:29+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:47+0000\n"
"Language-Team: Norwegian (bokmål)‬\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63415); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: no\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +22,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Tilgang"
@@ -72,84 +72,89 @@ msgstr "Lukket"
msgid "Save access settings"
msgstr "Lagre tilgangsinnstillinger"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Lagre"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Ingen slik side"
+msgid "No such page."
+msgstr "Ingen slik side."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Ingen slik bruker"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s og venner, side %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s og venner"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Mating for venner av %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Mating for venner av %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Mating for venner av %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "Dette er tidslinjen for %s og venner, men ingen har postet noe enda."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -159,83 +164,85 @@ msgstr ""
"eller post noe selv."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Du kan prøve å [knuffe %1$s](../%2$s) fra dennes profil eller [poste noe for "
"å få hans eller hennes oppmerksomhet](%%%%action.newnotice%%%%?"
"status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Hvorfor ikke [opprette en konto](%%%%action.register%%%%) og så knuff %s "
"eller post en notis for å få hans eller hennes oppmerksomhet."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Du og venner"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Oppdateringer fra %1$s og venner på %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "API-metode ikke funnet!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Denne metoden krever en POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
-msgstr "Du må angi en verdi for parameteren 'device' med en av: sms, im, none"
+"none."
+msgstr "Du må angi en verdi for parameteren 'device' med en av: sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Klarte ikke å oppdatere bruker."
@@ -245,7 +252,7 @@ msgstr "Klarte ikke å oppdatere bruker."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Brukeren har ingen profil."
@@ -256,9 +263,9 @@ msgid "Could not save profile."
msgstr "Klarte ikke å lagre profil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -317,47 +324,47 @@ msgstr "Direktemeldinger til %s"
msgid "All the direct messages sent to %s"
msgstr "Alle direktemeldinger sendt til %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Ingen meldingstekst!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Dette er for langt. Meldingen kan bare være %d tegn lang."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Fant ikke mottakeren."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Kan ikke sende direktemeldinger til brukere du ikke er venn med."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Fant ingen status med den ID-en."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Denne statusen er allerede en favoritt."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Kunne ikke opprette favoritt."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Den statusen er ikke en favoritt."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Kunne ikke slette favoritt."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Kunne ikke følge brukeren: Fant ikke brukeren."
+msgid "Could not follow user: profile not found."
+msgstr "Kunne ikke følge brukeren: fant ikke profilen."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -372,9 +379,9 @@ msgstr "Kunne ikke slutte å følge brukeren: Fant ikke brukeren."
msgid "You cannot unfollow yourself."
msgstr "Du kan ikke slutte å følge deg selv."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "To bruker ID-er eller kallenavn må oppgis."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "To gyldige ID-er eller screen_names må oppgis."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -384,115 +391,128 @@ msgstr "Kunne ikke bestemme kildebruker."
msgid "Could not find target user."
msgstr "Kunne ikke finne målbruker."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Kallenavn kan kun ha små bokstaver og tall og ingen mellomrom."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Det nicket er allerede i bruk. Prøv et annet."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ugyldig nick."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Hjemmesiden er ikke en gyldig URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Beklager, navnet er for langt (max 250 tegn)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Beskrivelsen er for lang (maks %d tegn)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Plassering er for lang (maks 255 tegn)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "For mange alias! Maksimum %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ugyldig alias: «%s»"
+msgid "Invalid alias: \"%s\"."
+msgstr "Ugyldig alias: «%s»."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Aliaset «%s» er allerede i bruk. Prøv et annet."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias kan ikke være det samme som kallenavn."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Gruppe ikke funnet!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Gruppe ikke funnet."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Du er allerede medlem av den gruppen."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Du har blitt blokkert fra den gruppen av administratoren."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Kunne ikke legge bruker %1$s til gruppe %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Du er ikke et medlem av denne gruppen."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Kunne ikke fjerne bruker %1$s fra gruppe %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s sine grupper"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s grupper %2$s er et medlem av."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s grupper"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "grupper på %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Last opp fil"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Ingen verdi for oauth_token er oppgitt."
@@ -502,17 +522,17 @@ msgid "Invalid token."
msgstr "Ugyldig symbol."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -543,12 +563,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Uventet skjemainnsending."
@@ -571,20 +594,22 @@ msgstr ""
"<strong>%3$s</strong> dine %4$s-kontodata. Du bør bare gi tilgang til din %4"
"$s-konto til tredjeparter du stoler på."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Konto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Nick"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Passord"
@@ -600,11 +625,11 @@ msgstr "Tillat"
msgid "Allow or deny access to your account information."
msgstr "Tillat eller nekt tilgang til din kontoinformasjon."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Denne metoden krever en POST eller DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Du kan ikke slette statusen til en annen bruker."
@@ -621,59 +646,63 @@ msgstr "Kan ikke gjenta din egen notis."
msgid "Already repeated that notice."
msgstr "Allerede gjentatt den notisen."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status slettet."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ingen status med den ID-en funnet."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Det er for langt. Maks notisstørrelse er %d tegn."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Ikke funnet"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ikke funnet."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "Maks notisstørrelse er %d tegn, inklusive vedleggs-URL."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formatet støttes ikke."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoritter fra %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s oppdateringer markert som favoritt av %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Oppdateringer som nevner %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s oppdateringer som svarer på oppdateringer fra %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s offentlig tidslinje"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s oppdateringer fra alle sammen!"
@@ -688,19 +717,19 @@ msgstr "Gjentatt til %s"
msgid "Repeats of %s"
msgstr "Repetisjoner av %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notiser merket med %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Oppdateringer merket med %1$s på %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ikke funnet."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-metode under utvikling."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -721,8 +750,9 @@ msgstr "Ingen størrelse."
msgid "Invalid size."
msgstr "Ugyldig størrelse"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Brukerbilde"
@@ -732,10 +762,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Du kan laste opp en personlig avatar. Maks filstørrelse er %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Bruker uten samsvarende profil"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Bruker uten samsvarende profil."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -745,7 +775,7 @@ msgstr "Avatarinnstillinger"
#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
#: actions/grouplogo.php:202 actions/grouplogo.php:262
msgid "Original"
-msgstr "Original"
+msgstr "Opprinnelig"
#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
#: actions/grouplogo.php:213 actions/grouplogo.php:274
@@ -753,7 +783,7 @@ msgid "Preview"
msgstr "Forhåndsvis"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Slett"
@@ -765,23 +795,27 @@ msgstr "Last opp"
msgid "Crop"
msgstr "Beskjær"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Ingen fil lastet opp."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Velg et kvadratisk utsnitt av bildet som din avatar."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Mistet våre fildata."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Brukerbildet har blitt oppdatert."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Oppdatering av avatar mislyktes."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar slettet."
@@ -789,11 +823,11 @@ msgstr "Avatar slettet."
msgid "You already blocked that user."
msgstr "Du har allerede blokkert den brukeren."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Blokker brukeren"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -803,27 +837,42 @@ msgstr ""
"lenger abbonere på deg, vil ikke kunne abbonere på deg i fremtiden og du vil "
"ikke bli varslet om @-svar fra dem."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Nei"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Ikke blokker denne brukeren"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ja"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Blokker denne brukeren"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Kunne ikke lagre blokkeringsinformasjon."
@@ -836,8 +885,8 @@ msgstr "Kunne ikke lagre blokkeringsinformasjon."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Ingen slik gruppe."
@@ -867,9 +916,11 @@ msgstr "Opphev blokkering"
msgid "Unblock this user"
msgstr "Opphev blokkering av denne brukeren"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Post til "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Post til %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -883,33 +934,43 @@ msgstr "Fant ikke bekreftelseskode."
msgid "That confirmation code is not for you!"
msgstr "Den bekreftelseskoden er ikke til deg."
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Ukjent adressetype %s"
+msgid "Unrecognized address type %s."
+msgstr "Ukjent adressetype %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Den adressen har allerede blitt bekreftet."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Klarte ikke å oppdatere bruker."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Kunne ikke slette e-postbekreftelse."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Bekreft adresse"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Adressen «%s» har blitt bekreftet for din konto."
@@ -919,7 +980,7 @@ msgid "Conversation"
msgstr "Samtale"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notiser"
@@ -938,7 +999,7 @@ msgstr "Du er ikke eieren av dette programmet."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -956,21 +1017,23 @@ msgstr ""
"data om programmet fra databasen, inkludert alle eksisterende "
"brukertilkoblinger."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ikke slett dette programmet"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Slett dette programmet"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ikke logget inn."
@@ -995,11 +1058,13 @@ msgstr "Slett notis"
msgid "Are you sure you want to delete this notice?"
msgstr "Er du sikker på at du vil slette denne notisen?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ikke slett denne notisen"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Slett denne notisen"
@@ -1023,58 +1088,69 @@ msgstr ""
"Er du sikker på at du vil slette denne brukeren? Dette vil slette alle data "
"om brukeren fra databasen, uten sikkerhetskopi."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Slett denne brukeren"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
-msgstr ""
+msgstr "Utseende"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
-msgstr ""
+msgstr "Utseendeinnstillinger for dette StatusNet-nettstedet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Ugyldig logo-URL."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema ikke tilgjengelig: %s"
+msgid "Theme not available: %s."
+msgstr "Tema ikke tilgjengelig: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Endre logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Nettstedslogo"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Endre tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Nettstedstema"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema for nettstedet."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Egendefinert tema"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Du kan laste opp et egendefinert StatusNet-tema som et .ZIP-arkiv."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Endre bakgrunnsbilde"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Bakgrunn"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1082,70 +1158,78 @@ msgid ""
msgstr ""
"Du kan laste opp et bakgrunnsbilde for nettstedet. Maks filstørrelse er %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "PÃ¥"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Av"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Slå på eller av bakgrunnsbilde."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Gjenta bakgrunnsbildet"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Endre farger"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Innhold"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
-#, fuzzy
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
-msgstr "Søk"
+msgstr "Sidelinje"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Tekst"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Lenker"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avansert"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Egendefinert CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Bruk standard"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
-msgstr ""
+msgstr "Gjenopprett standardutseende"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Tilbakestill til standardverdier"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Lagre"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
-msgstr ""
+msgstr "Lagre utseende"
#: actions/disfavor.php:81
msgid "This notice is not a favorite!"
@@ -1215,11 +1299,11 @@ msgstr "Hjemmeside for organisasjon kreves."
#: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long."
-msgstr ""
+msgstr "Anrop er for langt."
#: actions/editapplication.php:225 actions/newapplication.php:215
msgid "Callback URL is not valid."
-msgstr ""
+msgstr "Anrops-URL er ikke gyldig."
#: actions/editapplication.php:258
msgid "Could not update application."
@@ -1248,11 +1332,17 @@ msgstr "Bruk dette skjemaet for å redigere gruppen."
msgid "description is too long (max %d chars)."
msgstr "beskrivelse er for lang (maks %d tegn)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ugyldig alias: «%s»"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Kunne ikke oppdatere gruppe."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Kunne ikke opprette alias."
@@ -1260,31 +1350,42 @@ msgstr "Kunne ikke opprette alias."
msgid "Options saved."
msgstr "Lagret valg."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-postinnstillinger"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Velg hvordan du mottar e-post fra %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresse"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-postadresse"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Nåværende bekreftede e-postadresse"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Fjern"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1292,106 +1393,136 @@ msgstr ""
"Venter på bekreftelse av adressen. Sjekk innboksen din (og søppelboksen) for "
"melding med videre veiledning."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Avbryt"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-postadresse"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-postadresse («brukernavn@eksempel.org»)"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Legg til"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "innkommende e-post"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Send e-post til denne adressen for å poste nye notiser."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Angi en ny e-postadresse for å poste til; fjerner den gamle."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Ny"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Innstillinger"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "E-postinnstillinger"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
-msgstr ""
+msgstr "Send meg varsler om nye abonnementer gjennom e-post."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Send meg en e-post når noen legger min notis til som favoritt."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Send meg en e-post når noen sender meg en privat melding."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Send meg en e-post når noen sender meg et «@-svar»."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
-msgstr ""
+msgstr "Tillat venner å knuffe meg og sende meg en e-post."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Jeg vil poste notiser med e-post."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publiser en MicroID for min e-postadresse."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Innstillinger lagret."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "E-postinnstillinger lagret."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ingen e-postadresse."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Klarer ikke normalisere epostadressen"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ugyldig e-postadresse."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Det er allerede din e-postadresse."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Den e-postadressen tilhører allerede en annen bruker."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Kunne ikke sette inn bekreftelseskode."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1399,43 +1530,53 @@ msgstr ""
"En bekreftelseskode ble sendt til epostadressen du la til. Sjekk innboksen "
"din (og søppelboksen) for koden, og hvordan du skal bruke den."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
-msgstr ""
+msgstr "Ingen ventende bekreftelse å avbryte."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Det er feil IM-adresse."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Dette er feil e-postadresse."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Bekreftelse avbrutt."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "E-postbekreftelse avbrutt."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Det er ikke din e-postadresse."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Adressen ble fjernet."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "E-postadressen ble fjernet."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ingen innkommende e-postadresse."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
-msgstr ""
+msgstr "Kunne ikke oppdatere brukeroppføring."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
-msgstr ""
+msgstr "Inkommende e-postadresse fjernet."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Ny innkommende e-postadresse lagt til."
@@ -1459,17 +1600,21 @@ msgstr "Populære notiser, side %d"
#: actions/favorited.php:79
msgid "The most popular notices on the site right now."
-msgstr ""
+msgstr "De mest populære notisene på nettstedet akkurat nå."
#: actions/favorited.php:150
msgid "Favorite notices appear on this page but no one has favorited one yet."
msgstr ""
+"Favorittnotiser vises på denne siden, men det er ingen som har noen "
+"favoritter ennå."
#: actions/favorited.php:153
msgid ""
"Be the first to add a notice to your favorites by clicking the fave button "
"next to any notice you like."
msgstr ""
+"Vær den første til å legge en notis til dine favoritter ved å klikke på "
+"favoritt-knappen ved siden av notisen du liker."
#: actions/favorited.php:156
#, php-format
@@ -1477,32 +1622,34 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to add a "
"notice to your favorites!"
msgstr ""
+"Hvorfor ikke [registrere en konto](%%action.register%%) og vær den første "
+"til å legge notisen til dine favoritter."
#: actions/favoritesrss.php:111 actions/showfavorites.php:77
#: lib/personalgroupnav.php:115
#, php-format
msgid "%s's favorite notices"
-msgstr ""
+msgstr "%s sine favorittnotiser"
#: actions/favoritesrss.php:115
#, php-format
msgid "Updates favored by %1$s on %2$s!"
-msgstr ""
+msgstr "Oppdateringer markert som favoritt av %1$s på %2$s!"
#: actions/featured.php:69 lib/featureduserssection.php:87
#: lib/publicgroupnav.php:89
msgid "Featured users"
-msgstr ""
+msgstr "Profilerte brukere"
#: actions/featured.php:71
#, php-format
msgid "Featured users, page %d"
-msgstr ""
+msgstr "Profilerte brukere, side %d"
#: actions/featured.php:99
#, php-format
msgid "A selection of some great users on %s"
-msgstr ""
+msgstr "Et utvalg av noen store brukere på %s"
#: actions/file.php:34
msgid "No notice ID."
@@ -1522,19 +1669,19 @@ msgstr "Ingen opplastede vedlegg."
#: actions/finishremotesubscribe.php:69
msgid "Not expecting this response!"
-msgstr ""
+msgstr "Forventet ikke denne responsen!"
#: actions/finishremotesubscribe.php:80
msgid "User being listened to does not exist."
-msgstr ""
+msgstr "Brukeren som lyttes til finnes ikke."
#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
msgid "You can use the local subscription!"
-msgstr ""
+msgstr "Du kan bruke det lokale abonnementet!"
#: actions/finishremotesubscribe.php:99
msgid "That user has blocked you from subscribing."
-msgstr ""
+msgstr "Brukeren har blokkert deg fra å abonnere."
#: actions/finishremotesubscribe.php:110
msgid "You are not authorized."
@@ -1546,11 +1693,11 @@ msgstr ""
#: actions/finishremotesubscribe.php:118
msgid "Remote service uses unknown version of OMB protocol."
-msgstr ""
+msgstr "Fjerntjeneste bruker ukjent versjon av OMB-protokollen."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr ""
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Feil ved oppdatering av fjernprofil."
#: actions/getfile.php:79
msgid "No such file."
@@ -1578,13 +1725,13 @@ msgstr "Bruker har allerede denne rollen."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ingen profil oppgitt."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ingen profil med den ID'en."
@@ -1595,40 +1742,44 @@ msgstr "Ingen gruppe oppgitt."
#: actions/groupblock.php:91
msgid "Only an admin can block group members."
-msgstr ""
+msgstr "Bare en admin kan blokkere gruppemedlemmer."
#: actions/groupblock.php:95
-#, fuzzy
msgid "User is already blocked from group."
-msgstr "Du er allerede logget inn!"
+msgstr "Bruker er allerede blokkert fra gruppe."
#: actions/groupblock.php:100
msgid "User is not a member of group."
msgstr "Bruker er ikke et medlem av gruppa."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Blokker bruker fra gruppe"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
"will be removed from the group, unable to post, and unable to subscribe to "
"the group in the future."
msgstr ""
+"Er du sikker på at du vil blokkere brukeren «%1$s» fra gruppen «%2$s»? De vil "
+"bli fjernet fra gruppen, kan ikke poste og kan ikke abonnere på gruppen i "
+"fremtiden."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Ikke blokker denne brukeren fra denne gruppa"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
-msgstr ""
+msgstr "Blokker denne brukeren fra denne gruppen"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
-msgstr ""
+msgstr "Databasefeil ved blokkering av bruker fra gruppe."
#: actions/groupbyid.php:74 actions/userbyid.php:70
msgid "No ID."
@@ -1636,27 +1787,28 @@ msgstr "Ingen ID."
#: actions/groupdesignsettings.php:68
msgid "You must be logged in to edit a group."
-msgstr ""
+msgstr "Du må være logget inn for å redigere en gruppe."
#: actions/groupdesignsettings.php:144
msgid "Group design"
-msgstr ""
+msgstr "Gruppeutseende"
#: actions/groupdesignsettings.php:155
msgid ""
"Customize the way your group looks with a background image and a colour "
"palette of your choice."
msgstr ""
+"Tilpass hvordan gruppen din ser ut med et bakgrunnsbilde og en fargepalett "
+"av ditt valg."
#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
#: lib/designsettings.php:391 lib/designsettings.php:413
-#, fuzzy
msgid "Couldn't update your design."
-msgstr "Klarte ikke å oppdatere bruker."
+msgstr "Kunne ikke oppdatere utseende."
#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
msgid "Design preferences saved."
-msgstr ""
+msgstr "Utseende lagret."
#: actions/grouplogo.php:142 actions/grouplogo.php:195
msgid "Group logo"
@@ -1666,16 +1818,11 @@ msgstr "Gruppelogo"
#, php-format
msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
-msgstr ""
-
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Brukeren har ingen profil."
+msgstr "Du kan laste opp en logo for gruppen din. Maks filstørrelse er %s."
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
-msgstr ""
+msgstr "Velg et kvadratisk område av bildet som skal bli logoen."
#: actions/grouplogo.php:399
msgid "Logo updated."
@@ -1703,34 +1850,38 @@ msgstr "En liste over brukerne i denne gruppen."
msgid "Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blokkér"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Gjør brukeren til en administrator for gruppen"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Gjør til administrator"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Gjør denne brukeren til administrator"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s tidslinje"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Oppdateringer fra medlemmer av %1$s på %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupper"
@@ -1749,8 +1900,13 @@ msgid ""
"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
"%%%%)"
msgstr ""
+"%%%%site.name%%%%-grupper lar deg finne og snakke med mennesker med lignende "
+"interesser. Etter at du blir med i en gruppe kan du sende meldinger til alle "
+"andre medlemmer med syntaksen «!gruppenavn». Ser du ikke en gruppe du liker? "
+"Prøv å [søke etter en](%%%%action.groupsearch%%%%) eller [start din egen.](%%"
+"%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Opprett en ny gruppe"
@@ -1760,6 +1916,8 @@ msgid ""
"Search for groups on %%site.name%% by their name, location, or description. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
+"Søk etter grupper på %%site.name%% etter navn, lokasjon eller beskrivelse. "
+"Skill nøkkelord med mellomrom; de må være minst 3 tegn eller lengre."
#: actions/groupsearch.php:58
msgid "Group search"
@@ -1776,6 +1934,8 @@ msgid ""
"If you can't find the group you're looking for, you can [create it](%%action."
"newgroup%%) yourself."
msgstr ""
+"Om du ikke finner gruppen du søker etter kan du [opprette den](%%action."
+"newgroup%%) selv."
#: actions/groupsearch.php:85
#, php-format
@@ -1783,40 +1943,56 @@ msgid ""
"Why not [register an account](%%action.register%%) and [create the group](%%"
"action.newgroup%%) yourself!"
msgstr ""
+"Hvorfor ikke [registrere en konto](%%action.register%%) og [opprette gruppen]"
+"(%%action.newgroup%%) selv!"
#: actions/groupunblock.php:91
msgid "Only an admin can unblock group members."
-msgstr ""
+msgstr "Bare en admin kan oppheve blokkering av gruppemedlemmer."
#: actions/groupunblock.php:95
msgid "User is not blocked from group."
-msgstr ""
+msgstr "Bruker er ikke blokkert fra gruppe."
#: actions/groupunblock.php:128 actions/unblock.php:86
msgid "Error removing the block."
msgstr "Feil under oppheving av blokkering."
-#: actions/imsettings.php:59
-#, fuzzy
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
-msgstr "Innstillinger for IM"
+msgstr "Innstillinger for direktemeldinger"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
+"Du kan sende og motta notiser gjennom Jabber/GTalk [direktemeldinger](%%doc."
+"im%%). Konfigurer adresse og innstillinger under."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
-msgstr ""
+msgstr "Direktemeldinger ikke tilgjengelig."
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Direktemeldingsadresse"
-#: actions/imsettings.php:106
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Nåværende bekreftede Jabber/GTak-adresse."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1825,55 +2001,75 @@ msgstr ""
"Venter på godkjenning. Sjekk din Jabber/GTalk-konto for en melding med "
"instruksjoner (la du %s til vennelisten din?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM-adresse"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
+"Jabber- og GTalk-adresse, som «brukernavn@example.org». Husk å legge %s til "
+"vennelisten din i direktemeldingsklienten din eller på GTalk."
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Direktemeldingsinnstillinger"
-#: actions/imsettings.php:143
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
-msgstr ""
+msgstr "Send meg notiser gjennom Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
-msgstr ""
+msgstr "Post en notis når min Jabber/Gtalk-status endres."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
-msgstr ""
+msgstr "Send meg svar gjennom Jabber/GTalk fra personer jeg ikke abonnerer på."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publiser en MicroID for min Jabber/Gtalk-adresse."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Innstillinger lagret."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ingen Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Klarer ikke normalisere Jabber-IDen"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ugyldig Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Det er allerede din Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
-msgstr ""
+msgstr "Jabber-ID tilhører allerede en annen bruker."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1882,10 +2078,32 @@ msgstr ""
"En bekreftelseskode ble sendt til lynmeldingsadressen du la til. Du må "
"godkjenne %s for å sende meldinger til deg."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Det er feil IM-adresse."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Kunne ikke slette direktemeldingsbekreftelse."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Direktemeldingsbekreftelse avbrutt."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Det er ikke din Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Direktemeldingsadressen ble fjernet."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1899,6 +2117,7 @@ msgstr "Innboks for %s"
#: actions/inbox.php:115
msgid "This is your inbox, which lists your incoming private messages."
msgstr ""
+"Dette er innboksen din som innholder dine innkommende private meldinger."
#: actions/invite.php:39
msgid "Invites have been disabled."
@@ -1906,8 +2125,8 @@ msgstr "Invitasjoner har blitt deaktivert."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Du må være innlogget for å invitere andre brukere til å bruke %s."
#: actions/invite.php:72
#, php-format
@@ -1924,9 +2143,11 @@ msgstr "Inviter nye brukere"
#: actions/invite.php:128
msgid "You are already subscribed to these users:"
-msgstr ""
+msgstr "Du abonnerer allerede på disse brukerne:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1935,6 +2156,7 @@ msgstr "%1$s (%2$s)"
msgid ""
"These people are already users and you were automatically subscribed to them:"
msgstr ""
+"Disse personene er allerede brukere og du ble automatisk abonnent på dem:"
#: actions/invite.php:144
msgid "Invitation(s) sent to the following people:"
@@ -1945,11 +2167,15 @@ msgid ""
"You will be notified when your invitees accept the invitation and register "
"on the site. Thanks for growing the community!"
msgstr ""
+"Du vil bli varslet når dine inviterte aksepterer invitasjonen og registrerer "
+"seg på nettstedet. Takk for at du hjelper oss å vokse!"
#: actions/invite.php:162
msgid ""
"Use this form to invite your friends and colleagues to use this service."
msgstr ""
+"Bruk dette skjemaet for å invitere dine venner og kollegaer til å bruke "
+"denne tjenesten."
#: actions/invite.php:187
msgid "Email addresses"
@@ -1965,7 +2191,7 @@ msgstr "Personlig melding"
#: actions/invite.php:194
msgid "Optionally add a personal message to the invitation."
-msgstr ""
+msgstr "Om du vil kan du legge til en personlig melding i invitasjonen."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
@@ -1973,12 +2199,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Send"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s har invitert deg til %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2038,115 +2266,122 @@ msgstr "Du må være innlogget for å bli med i en gruppe."
msgid "No nickname or ID."
msgstr "ngen kallenavn eller ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
-msgstr ""
+msgstr "%1$s ble med i gruppen %2$s"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
-msgstr ""
+msgstr "Du må være innlogget for å forlate en gruppe."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
-msgstr ""
+msgstr "Du er ikke et medlem av den gruppen."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s forlot gruppe %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Allerede innlogget."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Feil brukernavn eller passord"
-#: actions/login.php:132 actions/otp.php:120
-#, fuzzy
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
-msgstr "Ikke autorisert."
+msgstr "Feil ved innstilling av bruker. Du er mest sannsynlig kke autorisert."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Logg inn"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
-msgstr ""
+msgstr "Logg inn på nettstedet"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Husk meg"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Logg inn automatisk i framtiden. Ikke for datamaskiner du deler med andre!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Mistet eller glemt passordet?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
+"Av sikkerhetsmessige årsaker, skriv inn brukernavn og passord på nytt før du "
+"endrer innstillingene dine."
+
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Logg inn med brukernavn og passord."
-#: actions/login.php:270
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
+"Har du ikke et brukernavn ennå? [Opprett](%%action.register%%) en ny konto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
-msgstr ""
+msgstr "Bare en administrator kan gjøre en annen bruker til administrator."
#: actions/makeadmin.php:96
-#, fuzzy, php-format
+#, php-format
msgid "%1$s is already an admin for group \"%2$s\"."
-msgstr "Du er allerede logget inn!"
+msgstr "%1$s er allerede en administrator for gruppen «%2$s»."
#: actions/makeadmin.php:133
-#, fuzzy, php-format
+#, php-format
msgid "Can't get membership record for %1$s in group %2$s."
-msgstr "Klarte ikke å oppdatere bruker."
+msgstr "Kan ikke hente medlemsoppføring for %$1s i gruppen %2$s."
#: actions/makeadmin.php:146
-#, fuzzy, php-format
+#, php-format
msgid "Can't make %1$s an admin for group %2$s."
-msgstr "Gjør brukeren til en administrator for gruppen"
+msgstr "Kan ikke gjøre %1$s til administrator for gruppen %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Ingen nåværende status"
+msgid "No current status."
+msgstr "Ingen nåværende status."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "Ingen slik side"
+msgstr "Nytt program"
#: actions/newapplication.php:64
msgid "You must be logged in to register an application."
-msgstr ""
+msgstr "Du må være logget inn for å registrere et program."
#: actions/newapplication.php:143
msgid "Use this form to register a new application."
-msgstr ""
+msgstr "Bruk dette skjemaet for å registrere et nytt program."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr ""
+msgstr "Nettadresse til kilde kreves."
#: actions/newapplication.php:258 actions/newapplication.php:267
-#, fuzzy
msgid "Could not create application."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke opprette program."
#: actions/newgroup.php:53
msgid "New group"
@@ -2160,12 +2395,12 @@ msgstr "Bruk dette skjemaet for å opprette en ny gruppe."
msgid "New message"
msgstr "Ny melding"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Du kan ikke sende en melding til denne brukeren."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Inget innhold."
@@ -2173,21 +2408,22 @@ msgstr "Inget innhold."
msgid "No recipient specified."
msgstr "Ingen mottaker oppgitt."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
+"Ikke send en melding til degselv; bare hvisk det stille til degselv istedet."
#: actions/newmessage.php:181
msgid "Message sent"
msgstr "Melding sendt"
#: actions/newmessage.php:185
-#, fuzzy, php-format
+#, php-format
msgid "Direct message to %s sent."
-msgstr "Direktemeldinger til %s"
+msgstr "Direktemelding til %s sendt."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax-feil"
@@ -2195,7 +2431,7 @@ msgstr "Ajax-feil"
msgid "New notice"
msgstr "Ny notis"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Notis postet"
@@ -2205,15 +2441,17 @@ msgid ""
"Search for notices on %%site.name%% by their contents. Separate search terms "
"by spaces; they must be 3 characters or more."
msgstr ""
+"Søk i notiser på %%site.name%% etter deres innhold. Separer nøkkelord med "
+"mellomrom; de må være minst 3 tegn lange."
#: actions/noticesearch.php:78
msgid "Text search"
msgstr "Tekst-søk"
#: actions/noticesearch.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Search results for \"%1$s\" on %2$s"
-msgstr "Søkestrøm for «%s»"
+msgstr "Søkeresultat for «%1$s» på %2$s"
#: actions/noticesearch.php:121
#, php-format
@@ -2221,6 +2459,8 @@ msgid ""
"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
"status_textarea=%s)!"
msgstr ""
+"Vær den første til å [poste om dette emnet](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
#: actions/noticesearch.php:124
#, php-format
@@ -2228,21 +2468,26 @@ msgid ""
"Why not [register an account](%%%%action.register%%%%) and be the first to "
"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
msgstr ""
+"Hvorfor ikke [registrere en konto](%%%%action.register%%%%) og vær den "
+"første til å [poste om dette emnet](%%%%action.newnotice%%%%?status_textarea="
+"%s)!"
#: actions/noticesearchrss.php:96
#, php-format
msgid "Updates with \"%s\""
-msgstr ""
+msgstr "Oppdateringer med «%s»"
#: actions/noticesearchrss.php:98
-#, fuzzy, php-format
+#, php-format
msgid "Updates matching search term \"%1$s\" on %2$s!"
-msgstr "Alle oppdateringer for søket: «%s»"
+msgstr "Oppdateringer som samsvarer søkestrengen «%1$s» på %2$s."
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
+"Denne brukeren tillater ikke knuffing eller har ikke bekreftet eller angitt "
+"sin e-post ennå."
#: actions/nudge.php:94
msgid "Nudge sent"
@@ -2254,76 +2499,80 @@ msgstr "Knuff sendt!"
#: actions/oauthappssettings.php:59
msgid "You must be logged in to list your applications."
-msgstr ""
+msgstr "Du må være logget inn for å liste opp programmene dine."
#: actions/oauthappssettings.php:74
msgid "OAuth applications"
-msgstr ""
+msgstr "OAuth-program"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "Program du har registrert"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "Du har ikke registrert noen program ennå."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "Tilkoblede program"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "Du har tillatt følgende programmer å få tilgang til den konto."
#: actions/oauthconnectionssettings.php:175
-#, fuzzy
msgid "You are not a user of that application."
-msgstr "Du er allerede logget inn!"
+msgstr "Du er ikke bruker av dette programmet."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr ""
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Kunne ikke tilbakekalle tilgang for programmet: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
-msgstr ""
+msgstr "Du har ikke tillatt noen programmer å bruke din konto."
#: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications "
-msgstr ""
+msgstr "Utviklere kan redigere registreringsinnstillingene for sine program "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Notisen har ingen profil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s sin status på %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "innholdstype "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Innholdstypen %s støttes ikke."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Bare "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Bare %s-nettadresser over vanlig HTTP."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
-msgstr ""
+msgstr "Ikke et støttet dataformat."
#: actions/opensearch.php:64
msgid "People Search"
-msgstr ""
+msgstr "Personsøk"
#: actions/opensearch.php:67
msgid "Notice Search"
-msgstr ""
+msgstr "Notissøk"
#: actions/othersettings.php:60
msgid "Other settings"
@@ -2331,7 +2580,7 @@ msgstr "Andre innstillinger"
#: actions/othersettings.php:71
msgid "Manage various other options."
-msgstr ""
+msgstr "HÃ¥ndter diverse andre alternativ."
#: actions/othersettings.php:108
msgid " (free service)"
@@ -2339,29 +2588,27 @@ msgstr " (gratis tjeneste)"
#: actions/othersettings.php:116
msgid "Shorten URLs with"
-msgstr ""
+msgstr "Forkort nettadresser med"
#: actions/othersettings.php:117
msgid "Automatic shortening service to use."
-msgstr ""
+msgstr "Automatisk fortkortelsestjeneste å bruke."
#: actions/othersettings.php:122
msgid "View profile designs"
-msgstr ""
+msgstr "Vis profilutseender"
#: actions/othersettings.php:123
msgid "Show or hide profile designs."
-msgstr ""
+msgstr "Vis eller skjul profilutseender."
#: actions/othersettings.php:153
-#, fuzzy
msgid "URL shortening service is too long (max 50 chars)."
-msgstr "Bioen er for lang (max 140 tegn)"
+msgstr "Navnet på nettadresseforkortelsestjenesten er for lang (maks 50 tegn)."
#: actions/otp.php:69
-#, fuzzy
msgid "No user ID specified."
-msgstr "Nytt nick"
+msgstr "Ingen bruker-ID spesifisert."
#: actions/otp.php:83
#, fuzzy
@@ -2420,7 +2667,7 @@ msgid "6 or more characters"
msgstr "6 eller flere tegn"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Bekreft"
@@ -2432,11 +2679,11 @@ msgstr "Samme som passord ovenfor"
msgid "Change"
msgstr "Endre"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Passord må være minst 6 tegn."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Passordene var ikke like."
@@ -2446,9 +2693,9 @@ msgstr "Feil gammelt passord"
#: actions/passwordsettings.php:181
msgid "Error saving user; invalid."
-msgstr ""
+msgstr "Feil ved lagring av bruker; ugyldig."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Klarer ikke å lagre nytt passord."
@@ -2457,41 +2704,41 @@ msgid "Password saved."
msgstr "Passordet ble lagret"
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
-msgstr ""
+msgstr "Stier"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
-msgstr ""
+msgstr "Sti- og tjenerinnstillinger for dette StatusNet-nettstedet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr ""
+msgid "Theme directory not readable: %s."
+msgstr "Temamappe ikke lesbar: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+msgid "Avatar directory not writable: %s."
+msgstr "Avatarmappe ikke skrivbar: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+msgid "Background directory not writable: %s."
+msgstr "Bakgrunnsmappe ikke skrivbar: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+msgid "Locales directory not readable: %s."
+msgstr "Lokaliseringsmappe ikke lesbar: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
-msgstr ""
+msgstr "Ugyldig SSL-tjener. Maks lengde er 255 tegn."
#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
msgid "Site"
-msgstr ""
+msgstr "Nettsted"
#: actions/pathsadminpanel.php:238
msgid "Server"
@@ -2499,83 +2746,79 @@ msgstr "Tjener"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
-msgstr ""
+msgstr "Vertsnavn for nettstedets tjener."
#: actions/pathsadminpanel.php:242
msgid "Path"
-msgstr ""
+msgstr "Sti"
#: actions/pathsadminpanel.php:242
msgid "Site path"
-msgstr ""
+msgstr "Nettstedssti"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
-msgstr ""
+msgstr "Lokaliseringssti"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
-msgstr ""
+msgstr "Lokaliseringsmappesti"
#: actions/pathsadminpanel.php:250
msgid "Fancy URLs"
-msgstr ""
+msgstr "Pyntede nettadresser"
#: actions/pathsadminpanel.php:252
msgid "Use fancy (more readable and memorable) URLs?"
-msgstr ""
+msgstr "Bruk pyntede (mer lesbare og lettere å huske) nettadresser?"
#: actions/pathsadminpanel.php:259
msgid "Theme"
-msgstr ""
+msgstr "Tema"
#: actions/pathsadminpanel.php:264
msgid "Theme server"
-msgstr ""
+msgstr "Tematjener"
#: actions/pathsadminpanel.php:268
msgid "Theme path"
-msgstr ""
+msgstr "Temasti"
#: actions/pathsadminpanel.php:272
msgid "Theme directory"
-msgstr ""
+msgstr "Temamappe"
#: actions/pathsadminpanel.php:279
-#, fuzzy
msgid "Avatars"
-msgstr "Brukerbilde"
+msgstr "Avatarer"
#: actions/pathsadminpanel.php:284
-#, fuzzy
msgid "Avatar server"
-msgstr "Innstillinger for IM"
+msgstr "Avatartjener"
#: actions/pathsadminpanel.php:288
-#, fuzzy
msgid "Avatar path"
-msgstr "Brukerbildet har blitt oppdatert."
+msgstr "Avatarsti"
#: actions/pathsadminpanel.php:292
-#, fuzzy
msgid "Avatar directory"
-msgstr "Brukerbildet har blitt oppdatert."
+msgstr "Avatarmappe"
#: actions/pathsadminpanel.php:301
msgid "Backgrounds"
-msgstr ""
+msgstr "Bakgrunner"
#: actions/pathsadminpanel.php:305
msgid "Background server"
-msgstr ""
+msgstr "Bakgrunnstjener"
#: actions/pathsadminpanel.php:309
msgid "Background path"
-msgstr ""
+msgstr "Bakgrunnssti"
#: actions/pathsadminpanel.php:313
msgid "Background directory"
-msgstr ""
+msgstr "Bakgrunnsmappe"
#: actions/pathsadminpanel.php:320
msgid "SSL"
@@ -2599,20 +2842,19 @@ msgstr "Bruk SSL"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
-msgstr ""
+msgstr "NÃ¥r SSL skal brukes"
#: actions/pathsadminpanel.php:335
-#, fuzzy
msgid "SSL server"
-msgstr "Gjenopprett"
+msgstr "SSL-tjener"
#: actions/pathsadminpanel.php:336
msgid "Server to direct SSL requests to"
-msgstr ""
+msgstr "Tjener SSL-forespørsler skal vises til"
#: actions/pathsadminpanel.php:352
msgid "Save paths"
-msgstr ""
+msgstr "Lagre stier"
#: actions/peoplesearch.php:52
#, php-format
@@ -2620,94 +2862,98 @@ msgid ""
"Search for people on %%site.name%% by their name, location, or interests. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
+"Søk etter personer på %%site.name%% etter deres navn, lokasjon eller "
+"interesser. Skill nøkkelord med mellomrom; de må være 3 tegn eller lengre."
#: actions/peoplesearch.php:58
msgid "People search"
-msgstr ""
+msgstr "Personsøk"
-#: actions/peopletag.php:70
-#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Ugyldig e-postadresse"
+#: actions/peopletag.php:68
+#, php-format
+msgid "Not a valid people tag: %s."
+msgstr "Ikke en gyldig personmerkelapp: %s."
-#: actions/peopletag.php:144
-#, fuzzy, php-format
+#: actions/peopletag.php:142
+#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
-msgstr "Mikroblogg av %s"
+msgstr "Brukere som har merket seg selv med %1$s - side %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr ""
+msgid "Invalid notice content."
+msgstr "Ugyldig notisinnhold."
#: actions/postnotice.php:101
#, php-format
msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
-msgstr ""
+msgstr "Notislisensen ‘%1$s’ er ikke kompatibel med nettstedslisensen ‘%2$s’."
#: actions/profilesettings.php:60
msgid "Profile settings"
-msgstr ""
+msgstr "Profilinnstillinger"
#: actions/profilesettings.php:71
msgid ""
"You can update your personal profile info here so people know more about you."
msgstr ""
+"Du kan oppdater din personlige profilinformasjon slik at personer får vite "
+"mer om deg."
#: actions/profilesettings.php:99
msgid "Profile information"
-msgstr ""
+msgstr "Profilinformasjon"
#: actions/profilesettings.php:108 lib/groupeditform.php:154
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 små bokstaver eller nummer, ingen punktum eller mellomrom"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Fullt navn"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Hjemmesiden"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL til din hjemmeside, blogg, eller profil på annen nettside."
-#: actions/profilesettings.php:122 actions/register.php:461
-#, fuzzy, php-format
+#: actions/profilesettings.php:122 actions/register.php:468
+#, php-format
msgid "Describe yourself and your interests in %d chars"
-msgstr "Beskriv degselv og dine interesser med 140 tegn"
+msgstr "Beskriv degselv og dine interesser med %d tegn"
-#: actions/profilesettings.php:125 actions/register.php:464
-#, fuzzy
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
-msgstr "Beskriv degselv og dine interesser med 140 tegn"
+msgstr "Beskriv degselv og dine interesser"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Om meg"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
-msgstr ""
+msgstr "Plassering"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
-msgstr ""
+msgstr "Hvor du er, for eksempel «By, fylke (eller region), land»"
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
-msgstr ""
+msgstr "Del min nåværende plassering når jeg poster notiser"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Tagger"
@@ -2715,6 +2961,8 @@ msgstr "Tagger"
msgid ""
"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
msgstr ""
+"Merkelapper for degselv (bokstaver, nummer, -, ., og _), adskilt med komma "
+"eller mellomrom"
#: actions/profilesettings.php:151
msgid "Language"
@@ -2738,7 +2986,7 @@ msgid ""
msgstr ""
"Abonner automatisk på de som abonnerer på meg (best for ikke-mennesker)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "«Om meg» er for lang (maks %d tegn)."
@@ -2752,63 +3000,60 @@ msgid "Language is too long (max 50 chars)."
msgstr "Språk er for langt (maks 50 tegn)."
#: actions/profilesettings.php:253 actions/tagother.php:178
-#, fuzzy, php-format
+#, php-format
msgid "Invalid tag: \"%s\""
-msgstr "Ugyldig hjemmeside '%s'"
+msgstr "Ugyldig merkelapp: «%s»"
#: actions/profilesettings.php:306
msgid "Couldn't update user for autosubscribe."
-msgstr ""
+msgstr "Kunne ikke oppdatere bruker for autoabonnering."
#: actions/profilesettings.php:363
-#, fuzzy
msgid "Couldn't save location prefs."
-msgstr "Klarte ikke å lagre profil."
+msgstr "Kunne ikke lagre plasseringsinnstillinger."
#: actions/profilesettings.php:375
msgid "Couldn't save profile."
msgstr "Klarte ikke å lagre profil."
#: actions/profilesettings.php:383
-#, fuzzy
msgid "Couldn't save tags."
-msgstr "Klarte ikke å lagre profil."
+msgstr "Kunne ikke lagre merkelapper."
#. TRANS: Message after successful saving of administrative settings.
#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
msgid "Settings saved."
-msgstr ""
+msgstr "Innstillinger lagret."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr ""
+msgid "Beyond the page limit (%s)."
+msgstr "Over sidegrensen (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
-msgstr ""
+msgstr "Kunne ikke hente offentlig strøm."
#: actions/public.php:130
#, php-format
msgid "Public timeline, page %d"
-msgstr ""
+msgstr "Offentlig tidslinje, side %d"
#: actions/public.php:132 lib/publicgroupnav.php:79
msgid "Public timeline"
-msgstr ""
+msgstr "Offentlig tidslinje"
#: actions/public.php:160
msgid "Public Stream Feed (RSS 1.0)"
-msgstr ""
+msgstr "Offentlig strømmating (RSS 1.0)"
#: actions/public.php:164
msgid "Public Stream Feed (RSS 2.0)"
-msgstr ""
+msgstr "Offentlig strømmating (RSS 2.0)"
#: actions/public.php:168
-#, fuzzy
msgid "Public Stream Feed (Atom)"
-msgstr "%s offentlig strøm"
+msgstr "Offentlig strømmating (Atom)"
#: actions/public.php:188
#, php-format
@@ -2816,16 +3061,20 @@ msgid ""
"This is the public timeline for %%site.name%% but no one has posted anything "
"yet."
msgstr ""
+"Dette er den offentlige tidslinjen for %%site.name%% men ingen har postet "
+"noe ennå."
#: actions/public.php:191
msgid "Be the first to post!"
-msgstr ""
+msgstr "Vær den første til å poste!"
#: actions/public.php:195
#, php-format
msgid ""
"Why not [register an account](%%action.register%%) and be the first to post!"
msgstr ""
+"Hvorfor ikke [registrere en konto](%%action.register%%) og vær den første "
+"til å poste!"
#: actions/public.php:242
#, php-format
@@ -2835,6 +3084,10 @@ msgid ""
"tool. [Join now](%%action.register%%) to share notices about yourself with "
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
+"Dette er %%site.name%%, en [mikroblogg](http://no.wikipedia.org/wiki/"
+"Mikroblogg)tjeneste basert på det frie programvareverktøyet [StatusNet]"
+"(http://status.net). [Bli med nå](%%action.register%%) for å dele notiser om "
+"degselv med venner, familie og kollegaer! ([Les mer](%%doc.help%%))"
#: actions/public.php:247
#, php-format
@@ -2843,15 +3096,18 @@ msgid ""
"blogging) service based on the Free Software [StatusNet](http://status.net/) "
"tool."
msgstr ""
+"Dette er %%site.name%%, en [mikroblogg](http://no.wikipedia.org/wiki/"
+"Mikroblogg)tjeneste basert på det frie programvareverktøyet [StatusNet]"
+"(http://status.net)."
#: actions/publictagcloud.php:57
msgid "Public tag cloud"
-msgstr ""
+msgstr "Offentlig merkelappsky"
#: actions/publictagcloud.php:63
#, php-format
msgid "These are most popular recent tags on %s "
-msgstr ""
+msgstr "Dette er de siste mest populære merkelappene på %s "
#: actions/publictagcloud.php:69
#, php-format
@@ -2860,7 +3116,7 @@ msgstr ""
#: actions/publictagcloud.php:72
msgid "Be the first to post one!"
-msgstr ""
+msgstr "Vær den første til å poste en!"
#: actions/publictagcloud.php:75
#, php-format
@@ -2868,10 +3124,12 @@ msgid ""
"Why not [register an account](%%action.register%%) and be the first to post "
"one!"
msgstr ""
+"Hvorfor ikke [registrere en konto](%%action.register%%) og vær den første "
+"til å poste en!"
#: actions/publictagcloud.php:134
msgid "Tag cloud"
-msgstr ""
+msgstr "Merkelappsky"
#: actions/recoverpassword.php:36
msgid "You are already logged in!"
@@ -2879,23 +3137,23 @@ msgstr "Du er allerede logget inn!"
#: actions/recoverpassword.php:62
msgid "No such recovery code."
-msgstr ""
+msgstr "Ingen slik gjenopprettingskode."
#: actions/recoverpassword.php:66
msgid "Not a recovery code."
-msgstr ""
+msgstr "Ikke en gjenopprettingskode."
#: actions/recoverpassword.php:73
msgid "Recovery code for unknown user."
-msgstr ""
+msgstr "Gjenopprettingskode for ukjent bruker."
#: actions/recoverpassword.php:86
msgid "Error with confirmation code."
-msgstr ""
+msgstr "Bekreftelseskodefeil."
#: actions/recoverpassword.php:97
msgid "This confirmation code is too old. Please start again."
-msgstr ""
+msgstr "Denne bekreftelseskoden er for gammel. Start på nytt."
#: actions/recoverpassword.php:111
msgid "Could not update user with confirmed email address."
@@ -2906,22 +3164,24 @@ msgid ""
"If you have forgotten or lost your password, you can get a new one sent to "
"the email address you have stored in your account."
msgstr ""
+"Om du har glemt eller mistet passordet ditt kan du få et nytt tilsendt på e-"
+"postadressen du har lagret på kontoen din."
#: actions/recoverpassword.php:158
msgid "You have been identified. Enter a new password below. "
-msgstr ""
+msgstr "Du har blitt identifisert. Skriv inn et nytt passord nedenfor. "
#: actions/recoverpassword.php:188
msgid "Password recovery"
-msgstr ""
+msgstr "Passordgjenoppretting"
#: actions/recoverpassword.php:191
msgid "Nickname or email address"
-msgstr ""
+msgstr "Kallenavn eller e-postadresse"
#: actions/recoverpassword.php:193
msgid "Your nickname on this server, or your registered email address."
-msgstr ""
+msgstr "Ditt kallenavn på denne tjeneren eller din registrerte e-postadresse."
#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
msgid "Recover"
@@ -2929,19 +3189,19 @@ msgstr "Gjenopprett"
#: actions/recoverpassword.php:208
msgid "Reset password"
-msgstr ""
+msgstr "Tilbakestill passord"
#: actions/recoverpassword.php:209
msgid "Recover password"
-msgstr ""
+msgstr "Gjenopprett passord"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
-msgstr ""
+msgstr "Passordgjenoppretting forespurt"
#: actions/recoverpassword.php:213
msgid "Unknown action"
-msgstr ""
+msgstr "Ukjent handling"
#: actions/recoverpassword.php:236
msgid "6 or more characters, and don't forget it!"
@@ -2953,21 +3213,21 @@ msgstr "Nullstill"
#: actions/recoverpassword.php:252
msgid "Enter a nickname or email address."
-msgstr ""
+msgstr "Skriv inn et kallenavn eller en e-postadresse."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
-msgstr ""
+msgstr "Ingen bruker med den e-postadressen eller det kallenavnet."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
-msgstr ""
+msgstr "Ingen registrert e-postadresse for den brukeren."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
-msgstr ""
+msgstr "Feil ved lagring av adressebekreftelse."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -2975,107 +3235,125 @@ msgstr ""
"Instruksjoner om hvordan du kan gjenopprette ditt passord har blitt sendt "
"til din registrerte e-postadresse."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
-msgstr ""
+msgstr "Uventet tilbakestilling av passord."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Passordet må bestå av 6 eller flere tegn."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
-msgstr ""
+msgstr "Passord og bekreftelse samsvarer ikke."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
-msgstr ""
+msgstr "Feil ved innstilling av bruker."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
-msgstr ""
+msgstr "Nytt passord ble lagret. Du er nå logget inn."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
-msgstr ""
+msgstr "Beklager, kun inviterte personer kan registrere seg."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
-msgstr ""
+msgstr "Beklager, ugyldig invitasjonskode."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
-msgstr ""
+msgstr "Registrering vellykket"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
-msgstr ""
+msgstr "Registrer"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
-msgstr ""
+msgstr "Registrering ikke tillatt."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
-msgstr ""
+msgstr "Du kan ikke registrere deg om du ikke godtar lisensvilkårene."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "E-postadressen finnes allerede."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ugyldig brukernavn eller passord"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
+"Med dette skjemaet kan du opprette en ny konto. Du kan så poste notiser og "
+"knytte deg til venner og kollegaer. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 små bokstaver eller nummer, ingen punktum eller mellomrom. Påkrevd."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 eller flere tegn. PÃ¥krevd."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Samme som passord over. Kreves."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-post"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
-msgstr ""
+msgstr "Kun brukt for oppdateringer, kunngjøringer og passordgjenoppretting"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Lengre navn, helst ditt \"ekte\" navn"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Teksten og filene mine er tilgjengelig under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Navngivelse 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" utenom disse private dataene: passord, e-postadresse, lynmeldingsadresse "
-"og telefonnummer."
+"Mine tekster og filer er tilgjengelig under %s med unntak av disse private "
+"dataene: passord, e-postadresse, direktemeldingsadresse og telefonnummer."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3108,7 +3386,7 @@ msgstr ""
"\n"
"Takk for at du registrerte deg og vi håper du kommer til å like tjenesten."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3123,47 +3401,54 @@ msgid ""
"register%%) a new account. If you already have an account on a [compatible "
"microblogging site](%%doc.openmublog%%), enter your profile URL below."
msgstr ""
+"For å abonnere kan du [logge inn](%%action.login%%) eller [registrere](%%"
+"action.register%%) en ny konto. Om du allerede har en konto på et "
+"[kompatibelt mikrobloggingsnettsted](%%doc.openmublog%%), skriv inn "
+"profilnettadressen din nedenfor."
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
-msgstr ""
+msgstr "Fjernabonner"
#: actions/remotesubscribe.php:124
msgid "Subscribe to a remote user"
-msgstr ""
+msgstr "Abonner på en fjernbruker"
#: actions/remotesubscribe.php:129
msgid "User nickname"
-msgstr ""
+msgstr "Brukerens kallenavn"
#: actions/remotesubscribe.php:130
msgid "Nickname of the user you want to follow"
-msgstr ""
+msgstr "Kallenavn på brukeren du vil følge"
#: actions/remotesubscribe.php:133
msgid "Profile URL"
-msgstr ""
+msgstr "Profilnettadresse"
#: actions/remotesubscribe.php:134
msgid "URL of your profile on another compatible microblogging service"
msgstr ""
+"Nettadresse til profilen din på en annen kompatibel mikrobloggingstjeneste"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
-msgstr ""
+msgstr "Abonner"
#: actions/remotesubscribe.php:159
msgid "Invalid profile URL (bad format)"
-msgstr ""
+msgstr "Ugyldig profilnettadresse (dårlig format)"
#: actions/remotesubscribe.php:168
msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
msgstr ""
+"Ikke en gyldig profilnettadresse (inget YADIS-dokument eller ugyldig XRDS "
+"definert)."
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "Det er en lokal profil! Logg inn for å abonnere."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
@@ -3171,23 +3456,21 @@ msgstr ""
#: actions/repeat.php:57
msgid "Only logged-in users can repeat notices."
-msgstr ""
+msgstr "Bare innloggede brukere kan repetere notiser."
#: actions/repeat.php:64 actions/repeat.php:71
-#, fuzzy
msgid "No notice specified."
-msgstr "Nytt nick"
+msgstr "Ingen notis spesifisert."
#: actions/repeat.php:76
msgid "You can't repeat your own notice."
-msgstr ""
+msgstr "Du kan ikke gjenta din egen notis."
#: actions/repeat.php:90
-#, fuzzy
msgid "You already repeated that notice."
-msgstr "Du er allerede logget inn!"
+msgstr "Du har allerede gjentatt den notisen."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Gjentatt"
@@ -3225,8 +3508,10 @@ msgstr "Svarstrøm for %s (Atom)"
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
-msgstr "Dette er tidslinjen for %s og venner, men ingen har postet noe enda."
+"notice to them yet."
+msgstr ""
+"Dette er tidslinjen som viser svar til %1$s men %2$s har ikke mottat en "
+"notis for hans oppmerksomhet ennå."
#: actions/replies.php:204
#, php-format
@@ -3234,16 +3519,17 @@ msgid ""
"You can engage other users in a conversation, subscribe to more people or "
"[join groups](%%action.groups%%)."
msgstr ""
+"Du kan engasjere andre brukere i en samtale, abonnere på flere personer "
+"eller [bli med i grupper](%%action.groups%%)."
#: actions/replies.php:206
#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Du kan prøve å [knuffe %s](../%s) fra dennes profil eller [post noe for å få "
-"hans eller hennes oppmerksomhet](%%%%action.newnotice%%%%?status_textarea=%"
-"s)."
+"Du kan prøve å [knuffe %1$s](../%2$s) eller [post noe for å få hans eller "
+"hennes oppmerksomhet](%%%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3251,89 +3537,88 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Svar til %1$s på %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "Du er allerede logget inn!"
+msgstr "Du kan ikke trekke tilbake brukerroller på dette nettstedet."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Brukeren har ingen profil."
+msgstr "Brukeren har ikke denne rollen."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
#: actions/sandbox.php:65 actions/unsandbox.php:65
-#, fuzzy
msgid "You cannot sandbox users on this site."
-msgstr "Du er allerede logget inn!"
+msgstr "Du kan ikke flytte brukere til sandkassen på dette nettstedet."
#: actions/sandbox.php:72
-#, fuzzy
msgid "User is already sandboxed."
-msgstr "Du er allerede logget inn!"
+msgstr "Brukeren er allerede i sandkassen."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
-msgstr ""
+msgstr "Økter"
#: actions/sessionsadminpanel.php:65
msgid "Session settings for this StatusNet site."
-msgstr ""
+msgstr "Øktinnstillinger for dette StatusNet-nettstedet."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
-msgstr ""
+msgstr "Håndter økter"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
-msgstr ""
+msgstr "Hvorvidt økter skal håndteres av oss selv."
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
-msgstr ""
+msgstr "Øktfeilsøking"
#: actions/sessionsadminpanel.php:183
msgid "Turn on debugging output for sessions."
-msgstr ""
+msgstr "Slå på feilsøkingsutdata for økter."
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
#: actions/useradminpanel.php:294
-#, fuzzy
msgid "Save site settings"
-msgstr "Innstillinger for IM"
+msgstr "Lagre nettstedsinnstillinger"
#: actions/showapplication.php:82
msgid "You must be logged in to view an application."
-msgstr ""
+msgstr "Du må være innlogget for å se et program."
#: actions/showapplication.php:157
msgid "Application profile"
-msgstr ""
+msgstr "Programprofil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Ikon"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Navn"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisasjon"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Beskrivelse"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistikk"
@@ -3344,23 +3629,23 @@ msgstr "Opprettet av %1$s - %2$s standardtilgang - %3$d brukere"
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "Programhandlinger"
#: actions/showapplication.php:236
msgid "Reset key & secret"
-msgstr ""
+msgstr "Tilbakestill nøkkel & hemmelighet"
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Programinformasjon"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Forbrukernøkkel"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Forbrukerhemmelighet"
#: actions/showapplication.php:273
msgid "Request token URL"
@@ -3379,135 +3664,141 @@ msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method."
msgstr ""
+"Merk: Vi støtter HMAC-SHA1-signaturer. Vi støtter ikke metoden for "
+"klartekstsignatur."
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "Er du sikker på at du vil slette denne notisen?"
+msgstr ""
+"Er du sikker på at du vil tilbakestille din forbrukernøkkel og -hemmelighet?"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "%s og venner"
+msgstr "%1$s sine favorittnotiser, side %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
-msgstr ""
+msgstr "Kunne ikke hente favorittnotiser."
#: actions/showfavorites.php:171
-#, fuzzy, php-format
+#, php-format
msgid "Feed for favorites of %s (RSS 1.0)"
-msgstr "Feed for %s sine venner"
+msgstr "Mating for favoritter av %s (RSS 1.0)"
#: actions/showfavorites.php:178
-#, fuzzy, php-format
+#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr "Feed for %s sine venner"
+msgstr "Mating for favoritter av %s (RSS 2.0)"
#: actions/showfavorites.php:185
-#, fuzzy, php-format
+#, php-format
msgid "Feed for favorites of %s (Atom)"
-msgstr "Feed for %s sine venner"
+msgstr "Mating for favoritter av %s (Atom)"
#: actions/showfavorites.php:206
msgid ""
"You haven't chosen any favorite notices yet. Click the fave button on "
"notices you like to bookmark them for later or shed a spotlight on them."
msgstr ""
+"Du har ikke valgt en favorittnotis ennå. Klikk på favorittknappen på notiser "
+"du liker for å bokmerke dem for senere eller for å kaste et søkelys på dem."
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
+"%s har ikke lagt til noen favorittnotiser ennå. Post noe interessant som de "
+"vil legge til sine favoritter :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%s har ikke lagt til noen favorittnotiser ennå. Hvorfor ikke [registrere en "
+"konto](%%%%action.register%%%%) og post noe interessant som de vil legge til "
+"sine favoritter :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
-msgstr ""
+msgstr "Dette er en måte å dele det du liker."
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
msgid "%s group"
-msgstr ""
+msgstr "%s gruppe"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "Alle abonnementer"
+msgstr "%1$s gruppe, side %2$d"
-#: actions/showgroup.php:226
-#, fuzzy
+#: actions/showgroup.php:227
msgid "Group profile"
-msgstr "Klarte ikke å lagre profil."
+msgstr "Gruppeprofil"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
-msgstr ""
+msgstr "Nettadresse"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
-msgstr ""
+msgstr "Merk"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
-msgstr ""
+msgstr "Alias"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
-msgstr ""
+msgstr "Gruppehandlinger"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
-msgstr ""
+msgstr "Notismating for %s gruppe (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
-msgstr ""
+msgstr "Notismating for %s gruppe (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
-msgstr ""
+msgstr "Notismating for %s gruppe (Atom)"
-#: actions/showgroup.php:354
-#, fuzzy, php-format
+#: actions/showgroup.php:355
+#, php-format
msgid "FOAF for %s group"
-msgstr "Klarte ikke å lagre profil."
+msgstr "FOAF for gruppen %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
-#, fuzzy
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
-msgstr "Medlem siden"
+msgstr "Medlemmer"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
-msgstr ""
+msgstr "(Ingen)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
-msgstr ""
+msgstr "Alle medlemmer"
-#: actions/showgroup.php:441
-#, fuzzy
+#: actions/showgroup.php:439
msgid "Created"
-msgstr "Opprett"
+msgstr "Opprettet"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3516,8 +3807,14 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** er en brukergruppe på %%%%site.name%%%%, en [mikrobloggingstjeneste]"
+"(http://no.wikipedia.org/wiki/Mikroblogg) basert på det frie "
+"programvareverktøyet [StatusNet](http://status.net/). Dets medlemmer deler "
+"korte meldinger om deres liv og interesser. [Bli med nå](%%%%action.register%"
+"%%%) for å bli medlem av denne gruppen og mange fler. ([Les mer](%%%%doc.help"
+"%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3525,88 +3822,93 @@ msgid ""
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
msgstr ""
+"**%s** er en brukergruppe på %%%%site.name%%%%, en [mikrobloggingstjeneste]"
+"(http://no.wikipedia.org/wiki/Mikroblogg) basert på det frie "
+"programvareverktøyet [StatusNet](http://status.net/). Dets medlemmer deler "
+"korte meldinger om deres liv og interesser. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
-msgstr ""
+msgstr "Administratorer"
#: actions/showmessage.php:81
msgid "No such message."
-msgstr ""
+msgstr "Ingen slik melding."
#: actions/showmessage.php:98
msgid "Only the sender and recipient may read this message."
-msgstr ""
+msgstr "Kun senderen og mottakeren kan lese denne meldingen."
#: actions/showmessage.php:108
#, php-format
msgid "Message to %1$s on %2$s"
-msgstr ""
+msgstr "Melding til %1$s på %2$s"
#: actions/showmessage.php:113
#, php-format
msgid "Message from %1$s on %2$s"
-msgstr ""
+msgstr "Melding fra %1$s på %2$s"
#: actions/shownotice.php:90
msgid "Notice deleted."
-msgstr ""
+msgstr "Notis slettet."
#: actions/showstream.php:73
-#, fuzzy, php-format
+#, php-format
msgid " tagged %s"
-msgstr "Tagger"
+msgstr " merket %s"
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "%s og venner"
+msgstr "%1$s, side %2$d"
#: actions/showstream.php:122
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr "Feed for taggen %s"
+msgstr "Notismating for %1$s merket %2$s (RSS 1.0)"
#: actions/showstream.php:129
#, php-format
msgid "Notice feed for %s (RSS 1.0)"
-msgstr ""
+msgstr "Notismating for %s (RSS 1.0)"
#: actions/showstream.php:136
#, php-format
msgid "Notice feed for %s (RSS 2.0)"
-msgstr ""
+msgstr "Notismating for %s (RSS 2.0)"
#: actions/showstream.php:143
#, php-format
msgid "Notice feed for %s (Atom)"
-msgstr ""
+msgstr "Notismating for %s (Atom)"
#: actions/showstream.php:148
-#, fuzzy, php-format
+#, php-format
msgid "FOAF for %s"
-msgstr "Feed for taggen %s"
+msgstr "FOAF for %s"
#: actions/showstream.php:200
-#, fuzzy, php-format
+#, php-format
msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
-msgstr "Dette er tidslinjen for %s og venner, men ingen har postet noe enda."
+msgstr "Dette er tidslinjen for %1$s men %2$s har ikke postet noe ennå."
#: actions/showstream.php:205
msgid ""
"Seen anything interesting recently? You haven't posted any notices yet, now "
"would be a good time to start :)"
msgstr ""
+"Sett noe interessant nylig? Du har ikke postet noen notiser ennå, så hvorfor "
+"ikke begynne nå? :)"
#: actions/showstream.php:207
#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Du kan prøve å [knuffe %s](../%s) fra dennes profil eller [post noe for å få "
-"hans eller hennes oppmerksomhet](%%%%action.newnotice%%%%?status_textarea=%"
-"s)."
+"Du kan prøve å knuffe %1$s eller [poste noe for å få hans eller hennes "
+"oppmerksomhet](%%%%action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3616,6 +3918,11 @@ msgid ""
"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** har en konto på %%%%site.name%%%%, en [mikrobloggingstjeneste] "
+"(http://no.wikipedia.org/wiki/Mikroblogg) basert på det frie "
+"programvareverktøyet [StatusNet](http://status.net/). [Bli med nå](%%%%"
+"action.register%%%%) for å følge **%s** og mange flere sine notiser. ([Les "
+"mer](%%%%doc.help%%%%))"
#: actions/showstream.php:248
#, php-format
@@ -3624,58 +3931,59 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
+"**%s** har en konto på %%%%site.name%%%%, en [mikrobloggingstjeneste] "
+"(http://no.wikipedia.org/wiki/Mikroblogg) basert på det frie "
+"programvareverktøyet [StatusNet](http://status.net/). "
#: actions/showstream.php:305
-#, fuzzy, php-format
+#, php-format
msgid "Repeat of %s"
-msgstr "Svar til %s"
+msgstr "Repetisjon av %s"
#: actions/silence.php:65 actions/unsilence.php:65
msgid "You cannot silence users on this site."
-msgstr ""
+msgstr "Du kan ikke bringe brukere til taushet på dette nettstedet."
#: actions/silence.php:72
-#, fuzzy
msgid "User is already silenced."
-msgstr "Du er allerede logget inn!"
+msgstr "Bruker er allerede brakt til taushet."
#: actions/siteadminpanel.php:69
msgid "Basic settings for this StatusNet site"
-msgstr ""
+msgstr "Grunninnstillinger for dette StatusNet-nettstedet"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
-msgstr ""
+msgstr "Nettstedsnavnet må være minst ett tegn langt."
#: actions/siteadminpanel.php:141
-#, fuzzy
msgid "You must have a valid contact email address."
-msgstr "Ugyldig e-postadresse"
+msgstr "Du må ha en gyldig e-postadresse."
#: actions/siteadminpanel.php:159
#, php-format
msgid "Unknown language \"%s\"."
-msgstr ""
+msgstr "Ukjent språk «%s»."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr ""
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Minste tekstgrense er 0 (ubegrenset)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
msgid "General"
-msgstr ""
+msgstr "Generell"
#: actions/siteadminpanel.php:224
msgid "Site name"
-msgstr ""
+msgstr "Nettstedsnavn"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr ""
+msgstr "Navnet på nettstedet ditt, for eksempel «Foretaksnavn mikroblogg»"
#: actions/siteadminpanel.php:229
msgid "Brought by"
@@ -3695,24 +4003,23 @@ msgstr ""
#: actions/siteadminpanel.php:239
msgid "Contact email address for your site"
-msgstr ""
+msgstr "Kontakte-postadresse for nettstedet ditt"
#: actions/siteadminpanel.php:245
msgid "Local"
-msgstr ""
+msgstr "Lokal"
#: actions/siteadminpanel.php:256
msgid "Default timezone"
-msgstr ""
+msgstr "Standard tidssone"
#: actions/siteadminpanel.php:257
msgid "Default timezone for the site; usually UTC."
-msgstr ""
+msgstr "Standard tidssone for nettstedet; vanligvis UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Foretrukket språk"
+msgstr "Standardspråk"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
@@ -3720,156 +4027,210 @@ msgstr ""
#: actions/siteadminpanel.php:271
msgid "Limits"
-msgstr ""
+msgstr "Grenser"
#: actions/siteadminpanel.php:274
msgid "Text limit"
-msgstr ""
+msgstr "Tekstgrense"
#: actions/siteadminpanel.php:274
msgid "Maximum number of characters for notices."
-msgstr ""
+msgstr "Maks antall tegn for notiser."
#: actions/siteadminpanel.php:278
msgid "Dupe limit"
-msgstr ""
+msgstr "Duplikatsgrense"
#: actions/siteadminpanel.php:278
msgid "How long users must wait (in seconds) to post the same thing again."
msgstr ""
+"Hvor lenge en bruker må vente (i sekund) for å poste den samme tingen igjen."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Notiser"
+msgstr "Nettstedsnotis"
#: actions/sitenoticeadminpanel.php:67
msgid "Edit site-wide message"
msgstr ""
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Kunne ikke lagre dine innstillinger for utseende."
+msgstr "Kunne ikke lagre nettstedsnotis."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Slett notis"
+msgstr "Tekst for nettstedsnotis"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
msgstr ""
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Innstillinger for IM"
+msgstr "Lagre nettstedsnotis"
-#: actions/smssettings.php:58
-#, fuzzy
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
-msgstr "Innstillinger for SMS"
+msgstr "SMS-innstillinger"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
-msgstr ""
+msgstr "Du kan motta SMS-meldinger gjennom e-post fra %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
-msgstr ""
+msgstr "SMS er ikke tilgjengelig."
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-adresse"
-#: actions/smssettings.php:112
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Nåværende bekreftede telefonnummer med mulighet for å motta SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Venter på bekreftelse for dette telefonnummeret."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Bekreftelseskode"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
-msgstr ""
+msgstr "Skriv inn koden du mottok på telefonen din."
-#: actions/smssettings.php:138
-#, fuzzy
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Bekreft"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Telefonnummer for SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
-msgstr ""
+msgstr "Telefonnummer, ingen tegnsetting eller mellomrom, med retningsnummer"
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS-innstillinger"
-#: actions/smssettings.php:174
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
+"Send meg notiser via SMS; jeg forstår at dette kan føre til kostnader fra "
+"min teleoperatør."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "SMS-innstillinger lagret."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
-msgstr ""
+msgstr "Ingen telefonnummer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
-msgstr ""
+msgstr "Ingen operatør valgt."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Det er allerede din ditt telefonnummer."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
-msgstr ""
+msgstr "Telefonnummeret tilhører allerede en annen bruker."
-#: actions/smssettings.php:347
-#, fuzzy
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr ""
-"En bekreftelseskode ble sendt til telefonnummeret du la til. Sjekk innboksen "
-"din for koden, og hvordan du skal bruke den."
+"En bekreftelseskode ble sendt til telefonnummeret du la til. Sjekk telefonen "
+"din for koden og hvordan du skal bruke den."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
-msgstr ""
+msgstr "Dette er feil bekreftelsesnummer."
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS-bekreftelse avbrutt."
-#: actions/smssettings.php:405
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Det er ikke ditt telefonnummer."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Telefonnummeret for SMS ble fjernet."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
-msgstr ""
+msgstr "Mobiloperatør"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
-msgstr ""
+msgstr "Velg en operatør"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
+"Mobiloperatør for din telefon. Om du kjenner til en operatør som kan motta "
+"SMS via e-post men som ikke er listet opp her, send en e-post til %s og "
+"fortell oss."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
-msgstr ""
+msgstr "Ingen kode skrevet inn"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3890,7 +4251,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3907,7 +4268,7 @@ msgstr ""
#: actions/snapshotadminpanel.php:217
msgid "Frequency"
-msgstr ""
+msgstr "Frekvens"
#: actions/snapshotadminpanel.php:218
msgid "Snapshots will be sent once every N web hits"
@@ -3930,8 +4291,8 @@ msgstr "Innstillinger for IM"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "Klarte ikke å lagre avatar-informasjonen"
@@ -3941,9 +4302,8 @@ msgid "This action only accepts POST requests."
msgstr ""
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "Ingen slik fil."
+msgstr "Ingen slik profil."
#: actions/subscribe.php:117
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
@@ -3965,12 +4325,12 @@ msgstr "Alle abonnementer"
#: actions/subscribers.php:63
msgid "These are the people who listen to your notices."
-msgstr ""
+msgstr "Dette er personene som lytter til dine notiser."
#: actions/subscribers.php:67
#, php-format
msgid "These are the people who listen to %s's notices."
-msgstr ""
+msgstr "Dette er personene som lytter til %ss notiser."
#: actions/subscribers.php:108
msgid ""
@@ -4002,12 +4362,12 @@ msgstr "Alle abonnementer"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
-msgstr ""
+msgstr "Dette er personene hvis notiser du lytter til."
#: actions/subscriptions.php:69
#, php-format
msgid "These are the people whose notices %s listens to."
-msgstr ""
+msgstr "Dette er personene hvis notiser %s lytter til."
#: actions/subscriptions.php:126
#, php-format
@@ -4020,18 +4380,17 @@ msgid ""
msgstr ""
#: actions/subscriptions.php:128 actions/subscriptions.php:132
-#, fuzzy, php-format
+#, php-format
msgid "%s is not listening to anyone."
-msgstr "%1$s lytter nå til dine notiser på %2$s."
+msgstr "%s lytter ikke til noen."
-#: actions/subscriptions.php:199
-#, fuzzy
+#: actions/subscriptions.php:208
msgid "Jabber"
-msgstr "Ingen Jabber ID."
+msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
-msgstr ""
+msgstr "SMS"
#: actions/tag.php:69
#, fuzzy, php-format
@@ -4041,41 +4400,39 @@ msgstr "Mikroblogg av %s"
#: actions/tag.php:87
#, php-format
msgid "Notice feed for tag %s (RSS 1.0)"
-msgstr ""
+msgstr "Notismating for merkelapp %s (RSS 1.0)"
#: actions/tag.php:93
#, php-format
msgid "Notice feed for tag %s (RSS 2.0)"
-msgstr ""
+msgstr "Notismating for merkelapp %s (RSS 2.0)"
#: actions/tag.php:99
-#, fuzzy, php-format
+#, php-format
msgid "Notice feed for tag %s (Atom)"
-msgstr "Feed for taggen %s"
+msgstr "Notismating for merkelapp %s (Atom)"
#: actions/tagother.php:39
msgid "No ID argument."
msgstr ""
#: actions/tagother.php:65
-#, fuzzy, php-format
+#, php-format
msgid "Tag %s"
-msgstr "Tagger"
+msgstr "Merk %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
-#, fuzzy
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
-msgstr "Klarte ikke å lagre profil."
+msgstr "Brukerprofil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
-msgstr ""
+msgstr "Foto"
#: actions/tagother.php:141
-#, fuzzy
msgid "Tag user"
-msgstr "Tagger"
+msgstr "Merk bruker"
#: actions/tagother.php:151
msgid ""
@@ -4089,9 +4446,8 @@ msgid ""
msgstr ""
#: actions/tagother.php:200
-#, fuzzy
msgid "Could not save tags."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke lagre merkelapper."
#: actions/tagother.php:236
msgid "Use this form to add tags to your subscribers or subscriptions."
@@ -4101,14 +4457,9 @@ msgstr ""
msgid "No such tag."
msgstr ""
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-metode under utvikling."
-
#: actions/unblock.php:59
-#, fuzzy
msgid "You haven't blocked that user."
-msgstr "Du er allerede logget inn!"
+msgstr "Du har ikke blokkert den brukeren."
#: actions/unsandbox.php:72
msgid "User is not sandboxed."
@@ -4119,8 +4470,9 @@ msgid "User is not silenced."
msgstr ""
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+#, fuzzy
+msgid "No profile ID in request."
+msgstr "Ingen profil med den ID'en."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4136,74 +4488,70 @@ msgstr ""
#: actions/useradminpanel.php:59
msgctxt "TITLE"
msgid "User"
-msgstr ""
+msgstr "Bruker"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
-msgstr ""
+msgstr "Brukerinnstillinger for dette StatusNet-nettstedet."
#: actions/useradminpanel.php:149
msgid "Invalid bio limit. Must be numeric."
-msgstr ""
+msgstr "Ugyldig biografigrense. Må være numerisk."
#: actions/useradminpanel.php:155
msgid "Invalid welcome text. Max length is 255 characters."
-msgstr ""
+msgstr "Ugyldig velkomsttekst. Maks lengde er 255 tegn."
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
-msgstr ""
+msgstr "Ugyldig standardabonnement: '%1$s' er ikke bruker."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
#: actions/useradminpanel.php:222
msgid "Bio Limit"
-msgstr ""
+msgstr "Biografigrense"
#: actions/useradminpanel.php:223
msgid "Maximum length of a profile bio in characters."
-msgstr ""
+msgstr "Maks lengde på en profilbiografi i tegn."
#: actions/useradminpanel.php:231
-#, fuzzy
msgid "New users"
-msgstr "slett"
+msgstr "Nye brukere"
#: actions/useradminpanel.php:235
msgid "New user welcome"
-msgstr ""
+msgstr "Velkomst av ny bruker"
#: actions/useradminpanel.php:236
msgid "Welcome text for new users (Max 255 chars)."
-msgstr ""
+msgstr "Velkomsttekst for nye brukere (Maks 255 tegn)."
#: actions/useradminpanel.php:241
-#, fuzzy
msgid "Default subscription"
-msgstr "Alle abonnementer"
+msgstr "Standardabonnement"
#: actions/useradminpanel.php:242
-#, fuzzy
msgid "Automatically subscribe new users to this user."
-msgstr ""
-"Abonner automatisk på de som abonnerer på meg (best for ikke-mennesker)"
+msgstr "Legger automatisk til et abonnement på denne brukeren til nye brukere."
#: actions/useradminpanel.php:251
-#, fuzzy
msgid "Invitations"
-msgstr "Bekreftelseskode"
+msgstr "Invitasjoner"
#: actions/useradminpanel.php:256
msgid "Invitations enabled"
-msgstr ""
+msgstr "Invitasjoner aktivert"
#: actions/useradminpanel.php:258
msgid "Whether to allow users to invite new users."
-msgstr ""
+msgstr "Hvorvidt brukere tillates å invitere nye brukere."
#: actions/userauthorization.php:105
msgid "Authorize subscription"
@@ -4216,9 +4564,9 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
-msgstr ""
+msgstr "Lisens"
#: actions/userauthorization.php:217
msgid "Accept"
@@ -4227,16 +4575,15 @@ msgstr "Godta"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr ""
+msgstr "Abonner på denne brukeren"
#: actions/userauthorization.php:219
msgid "Reject"
-msgstr ""
+msgstr "Avvis"
#: actions/userauthorization.php:220
-#, fuzzy
msgid "Reject this subscription"
-msgstr "Alle abonnementer"
+msgstr "Avvis dette abonnementet"
#: actions/userauthorization.php:232
msgid "No authorization request!"
@@ -4290,9 +4637,9 @@ msgid "Avatar URL ‘%s’ is not valid."
msgstr ""
#: actions/userauthorization.php:350
-#, fuzzy, php-format
+#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr "Kan ikke lese brukerbilde-URL «%s»"
+msgstr "Kan ikke lese avatar-URL ‘%s’"
#: actions/userauthorization.php:355
#, php-format
@@ -4312,50 +4659,58 @@ msgstr ""
#: actions/userdesignsettings.php:282
msgid "Enjoy your hotdog!"
-msgstr ""
+msgstr "Bon appétit."
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "Alle abonnementer"
+msgstr "%1$s grupper, side %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
-msgstr ""
+msgstr "Søk etter flere grupper"
-#: actions/usergroups.php:157
-#, fuzzy, php-format
+#: actions/usergroups.php:159
+#, php-format
msgid "%s is not a member of any group."
-msgstr "Du er allerede logget inn!"
+msgstr "%s er ikke medlem av noen gruppe."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
-msgstr ""
+msgstr "Prøv å [søke etter grupper](%%action.groupsearch%%) og bli med i dem."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Oppdateringar fra %1$s på %2$s!"
-#: actions/version.php:73
-#, fuzzy, php-format
+#: actions/version.php:75
+#, php-format
msgid "StatusNet %s"
-msgstr "Statistikk"
+msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
+"Dette nettstedet drives av %1$s versjon %2$s, Copyright 2008-2010 StatusNet, "
+"Inc. og andre bidragsytere."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
-msgstr ""
+msgstr "Bidragsytere"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4363,7 +4718,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4371,397 +4726,518 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
-msgstr ""
+msgstr "Programtillegg"
-#: actions/version.php:196 lib/action.php:767
-#, fuzzy
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
-msgstr "Personlig"
+msgstr "Versjon"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
+msgstr "Forfatter(e)"
+
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ugyldig filnavn."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Klarte ikke å lagre profil."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Klarte ikke å oppdatere bruker."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Klarte ikke å lagre profil."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Kunne ikke oppdatere gruppe."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Klarte ikke å lagre avatar-informasjonen"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
-msgstr ""
+msgstr "Kunne ikke sette inn melding."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
-msgstr ""
+msgstr "Kunne ikke oppdatere melding med ny nettadresse."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Databasefeil ved innsetting av bruker i programmet OAuth."
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
-msgstr ""
+msgstr "Problem ved lagring av notis. For lang."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
-msgstr ""
+msgstr "Problem ved lagring av notis. Ukjent bruker."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
+msgstr "Problem ved lagring av notis."
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
msgstr ""
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr ""
+msgstr "Problem ved lagring av gruppeinnboks."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
+msgstr "RT @%1$s %2$s"
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Brukeren har ingen profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Kunne ikke lagre nettstedsnotis."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
-msgstr ""
+msgstr "Bruker har blokkert deg."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Alle abonnementer"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Klarte ikke å lagre avatar-informasjonen"
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Klarte ikke å lagre avatar-informasjonen"
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
-msgstr ""
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
+msgstr "Klarte ikke å lagre avatar-informasjonen"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
-msgstr ""
+msgstr "Velkommen til %1$s, @%2$s."
-#: classes/User_group.php:477
-#, fuzzy
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke opprette gruppe."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke stille inn gruppe-URI."
-#: classes/User_group.php:507
-#, fuzzy
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke stille inn gruppemedlemskap."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Klarte ikke å lagre avatar-informasjonen"
+msgstr "Kunne ikke lagre lokal gruppeinformasjon."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Endre profilinnstillingene dine"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
-msgstr ""
+msgstr "Last opp en avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Endre passordet ditt"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Endre eposthåndtering"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Klarte ikke å lagre profil."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr ""
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
-msgstr ""
+msgstr "Andre valg"
-#: lib/action.php:144
-#, fuzzy, php-format
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Andre"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
msgid "%1$s - %2$s"
-msgstr "%1$s sin status på %2$s"
+msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
-msgstr ""
+msgstr "Side uten tittel"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personlig"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Endre passordet ditt"
+msgstr "Endre e-posten, avateren, passordet og profilen din"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
-msgstr "Koble til"
+msgstr "Koble til tjenester"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Koble til"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr ""
+msgstr "Endre nettstedskonfigurasjon"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administrator"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
-msgstr ""
+msgstr "Inviter venner og kollegaer til å bli med deg på %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Inviter"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Logg ut fra nettstedet"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Logg ut"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Opprett en konto"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrer"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Log inn på nettstedet"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Logg inn"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hjelp meg."
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Hjelp"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Søk etter personer eller tekst"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Søk"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr ""
+msgstr "Nettstedsnotis"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
-msgstr ""
+msgstr "Lokale visninger"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
-msgstr ""
+msgstr "Sidenotis"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hjelp"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Om"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "OSS/FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr ""
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Kilde"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
-msgstr ""
+msgstr "Programvarelisens for StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-"**%%site.name%%** er en mikrobloggingtjeneste av [%%site.broughtby%%](%%site."
-"broughtbyurl%%). "
+"**%%site.name%%** er en mikrobloggingtjeneste brakt til deg av [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** er en mikrobloggingtjeneste. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** er en mikrobloggingtjeneste."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4769,485 +5245,550 @@ msgid ""
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr ""
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Alle "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "lisens."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Etter"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Før"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Du kan ikke gjøre endringer på dette nettstedet."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
-msgstr ""
+msgstr "showForm() ikke implementert."
#. TRANS: Client error message
#: lib/adminpanelaction.php:259
msgid "saveSettings() not implemented."
-msgstr ""
+msgstr "saveSettings() ikke implementert."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr ""
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
-msgstr "Nettstedslogo"
+msgstr "Nettsted"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr ""
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
-msgstr "Personlig"
+msgstr "Utseende"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr ""
+msgstr "Brukerkonfigurasjon"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
-msgstr ""
+msgstr "Bruker"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr ""
+msgstr "Tilgangskonfigurasjon"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
-msgstr ""
+msgstr "Stikonfigurasjon"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Slett notis"
+msgstr "Rediger nettstedsnotis"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr ""
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
-msgstr ""
+msgstr "Rediger program"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Ikon for dette programmet"
-#: lib/applicationeditform.php:204
-#, fuzzy, php-format
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
msgid "Describe your application in %d characters"
-msgstr "Beskriv degselv og dine interesser med 140 tegn"
+msgstr "Beskriv programmet ditt med %d tegn"
-#: lib/applicationeditform.php:207
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr "Beskriv degselv og dine interesser med 140 tegn"
+msgstr "Beskriv programmet ditt"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Kilde"
-
-#: lib/applicationeditform.php:218
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
-msgstr "URL til din hjemmeside, blogg, eller profil på annen nettside."
+msgstr "Nettadresse til hjemmesiden for dette programmet"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Nettadresse til kilde"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr "URL til din hjemmeside, blogg, eller profil på annen nettside."
+msgstr "URL til organisasjonens hjemmeside"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
-msgstr ""
+msgstr "Nettleser"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "Skrivebord"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "Type program, nettleser eller skrivebord"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Skrivebeskyttet"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Les og skriv"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
+"Standardtilgang for dette programmet: skrivebeskyttet eller lese- og "
+"skrivetilgang"
-#: lib/applicationlist.php:154
-#, fuzzy
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Avbryt"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "les og skriv"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "skrivebeskyttet"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr "Fjern"
+msgstr "Tilbakekall"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
-msgstr ""
+msgstr "Vedlegg"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
-msgstr ""
+msgstr "Forfatter"
-#: lib/attachmentlist.php:278
-#, fuzzy
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
-msgstr "Profil"
+msgstr "Leverandør"
#: lib/attachmentnoticesection.php:67
msgid "Notices where this attachment appears"
-msgstr ""
+msgstr "Notiser hvor dette vedlegget forekommer"
#: lib/attachmenttagcloudsection.php:48
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
-#, fuzzy
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
-msgstr "Passordet ble lagret"
+msgstr "Endring av passord mislyktes"
-#: lib/authenticationplugin.php:235
-#, fuzzy
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
-msgstr "Passordet ble lagret"
+msgstr "Endring av passord er ikke tillatt"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
-msgstr ""
+msgstr "Kommandoresultat"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
-msgstr ""
+msgstr "Kommando fullført"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
-msgstr ""
+msgstr "Kommando feilet"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Notis med den id'en finnes ikke"
-#: lib/command.php:88
-#, fuzzy, php-format
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Bruker har ingen siste notis"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
msgid "Could not find a user with nickname %s"
-msgstr "Klarte ikke å oppdatere bruker med bekreftet e-post."
+msgstr "Fant ingen bruker med kallenavn %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Fant ingen lokal bruker med kallenavn %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Beklager, denne kommandoen er ikke implementert ennå."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
-msgstr ""
+msgstr "Det gir ikke så mye mening å knuffe seg selv."
-#: lib/command.php:99
-#, fuzzy, php-format
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
msgid "Nudge sent to %s"
-msgstr "Svar til %s"
+msgstr "Knuff sendt til %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
"Subscribers: %2$s\n"
"Notices: %3$s"
msgstr ""
+"Abonnement: %1$s\n"
+"Abonnenter: %2$s\n"
+"Notiser: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr ""
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "Brukeren har ingen profil."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
-msgstr ""
+msgstr "Notis markert som favoritt."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Du er allerede medlem av den gruppen."
-#: lib/command.php:231
-#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Klarte ikke å oppdatere bruker."
-
-#: lib/command.php:236
-#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%1$s sin status på %2$s"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Klarte ikke å oppdatere bruker."
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Kunne ikke legge bruker %1$s til gruppe %2$s."
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%1$s sin status på %2$s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Kunne ikke fjerne bruker %1$s fra gruppe %2$s"
-#: lib/command.php:309
-#, fuzzy, php-format
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
+#, php-format
msgid "Fullname: %s"
-msgstr "Fullt navn"
+msgstr "Fullt navn: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
-msgstr ""
+msgstr "Posisjon: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
-msgstr ""
+msgstr "Hjemmeside: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
-msgstr ""
+msgstr "Om: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-#: lib/command.php:367
-#, fuzzy, php-format
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Melding for lang - maks er %1$d tegn, du sendte %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
msgid "Direct message to %s sent"
-msgstr "Direktemeldinger til %s"
+msgstr "Direktemelding til %s sendt"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
-msgstr ""
+msgstr "Feil ved sending av direktemelding."
-#: lib/command.php:413
-#, fuzzy
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
-msgstr "Kan ikke slette notisen."
+msgstr "Kan ikke gjenta din egen notis"
-#: lib/command.php:418
-#, fuzzy
+#: lib/command.php:519
msgid "Already repeated that notice"
-msgstr "Kan ikke slette notisen."
+msgstr "Allerede gjentatt den notisen"
-#: lib/command.php:426
-#, fuzzy, php-format
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
msgid "Notice from %s repeated"
-msgstr "Nytt nick"
+msgstr "Notis fra %s repetert"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
-msgstr ""
+msgstr "Feil ved repetering av notis."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
-msgstr ""
+msgstr "Notis for lang - maks er %d tegn, du sendte %d"
-#: lib/command.php:491
-#, fuzzy, php-format
+#: lib/command.php:571
+#, php-format
msgid "Reply to %s sent"
-msgstr "Svar til %s"
+msgstr "Svar til %s sendt"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
-msgstr ""
+msgstr "Feil ved lagring av notis."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "Ingen slik bruker"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Svar til %s"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Ikke autorisert."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ikke autorisert."
msgstr[1] "Ikke autorisert."
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Svar til %s"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Svar til %s"
msgstr[1] "Svar til %s"
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Du er allerede logget inn!"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Du er allerede logget inn!"
msgstr[1] "Du er allerede logget inn!"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5289,20 +5830,19 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
-#, fuzzy
+#: lib/common.php:135
msgid "No configuration file found. "
-msgstr "Fant ikke bekreftelseskode."
+msgstr "Ingen konfigurasjonsfil funnet. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "Jeg så etter konfigurasjonfiler på følgende seter: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5316,12 +5856,11 @@ msgstr ""
#: lib/connectsettingsaction.php:116
msgid "Updates by SMS"
-msgstr ""
+msgstr "Oppdatert med SMS"
#: lib/connectsettingsaction.php:120
-#, fuzzy
msgid "Connections"
-msgstr "Koble til"
+msgstr "Tilkoblinger"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
@@ -5329,12 +5868,11 @@ msgstr ""
#: lib/dberroraction.php:60
msgid "Database error"
-msgstr ""
+msgstr "Databasefeil"
#: lib/designsettings.php:105
-#, fuzzy
msgid "Upload file"
-msgstr "Last opp"
+msgstr "Last opp fil"
#: lib/designsettings.php:109
msgid ""
@@ -5359,23 +5897,23 @@ msgstr ""
#: lib/feed.php:85
msgid "RSS 1.0"
-msgstr ""
+msgstr "RSS 1.0"
#: lib/feed.php:87
msgid "RSS 2.0"
-msgstr ""
+msgstr "RSS 2.0"
#: lib/feed.php:89
msgid "Atom"
-msgstr ""
+msgstr "Atom"
#: lib/feed.php:91
msgid "FOAF"
-msgstr ""
+msgstr "Venn av en venn"
#: lib/feedlist.php:64
msgid "Export data"
-msgstr ""
+msgstr "Eksporter data"
#: lib/galleryaction.php:121
#, fuzzy
@@ -5384,7 +5922,7 @@ msgstr "Feed for taggen %s"
#: lib/galleryaction.php:131
msgid "All"
-msgstr ""
+msgstr "Alle"
#: lib/galleryaction.php:139
msgid "Select tag to filter"
@@ -5401,12 +5939,12 @@ msgstr ""
#: lib/galleryaction.php:143
msgid "Go"
-msgstr ""
+msgstr "GÃ¥"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Innvilg denne brukeren rollen «%s»"
#: lib/groupeditform.php:163
#, fuzzy
@@ -5478,53 +6016,54 @@ msgstr "Grupper med flest innlegg"
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Denne siden er ikke tilgjengelig i en mediatype du aksepterer"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Bildefilformatet støttes ikke."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Filen er for stor. Maks filstørrelse er %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Delvis opplasting."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Systemfeil ved opplasting av fil."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Ikke et bilde eller en korrupt fil."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Bildefilformatet støttes ikke."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Mistet filen vår."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Ukjent filtype"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Ukjent innbokskilde %d."
@@ -5545,11 +6084,13 @@ msgstr "Logg inn med brukernavn og passord"
msgid "Sign up for a new account"
msgstr "Registrer deg for en ny konto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Bekreftelse av e-postadresse"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5578,12 +6119,21 @@ msgstr ""
"Takk for tiden din,\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s lytter nå til dine notiser på %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5608,17 +6158,20 @@ msgstr ""
"----\n"
"Endre e-postadressen din eller dine varslingsvalg på %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Biografi: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ny e-postadresse for posting til %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5639,21 +6192,31 @@ msgstr ""
"Vennlig hilsen,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS-bekreftelse"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: bekreft telefonnummeret ditt med denne koden:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Du har blitt knuffet av %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5680,12 +6243,14 @@ msgstr ""
"Med vennlig hilsen,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ny privat melding fra %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5718,12 +6283,14 @@ msgstr ""
"Med vennlig hilsen,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s /@%s) la din notis til som en favoritt"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5760,12 +6327,25 @@ msgstr ""
"Vennlig hilsen,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Hele samtalen kan leses her:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) sendte en notis for din oppmerksomhet"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5778,18 +6358,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) sendte deg akkurat en notis for din oppmerksomhet (et '@-svar') "
+"%1$s (@%9$s) sendte deg akkurat varsel for din oppmerksomhet (et '@-svar') "
"på %2$s.\n"
"\n"
"Notisen er her:\n"
"\n"
"%3$s\n"
"\n"
-"Den lyder:\n"
+"Det lyder:\n"
"\n"
"%4$s\n"
"\n"
+"%5$sDu kan svare her:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Listen over alle @-svar til deg finner du her:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Vennlig hilsen,\n"
+"%2$s\n"
+"\n"
+"P.S. Du kan slå av disse e-postvarslene her: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5804,7 +6408,7 @@ msgstr ""
"engasjere andre brukere i en samtale. Personer kan sende deg meldinger som "
"bare du kan se."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "fra"
@@ -5859,24 +6463,24 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr "Filopplasting stoppet grunnet filendelse."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Fil overgår brukers kvote."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Filen kunne ikke flyttes til målmappen."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Kunne ikke avgjøre filens MIME-type."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Prøv å bruke et annet %s-format."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "filtypen %s støttes ikke på denne tjeneren."
@@ -5931,48 +6535,52 @@ msgstr ""
"Beklager, henting av din geoposisjon tar lenger tid enn forventet, prøv "
"igjen senere"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "Ø"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "V"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
-msgstr ""
+msgstr "på"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr ""
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repetert av"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Svar på denne notisen"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Svar"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Notis repetert"
@@ -5996,6 +6604,10 @@ msgstr ""
msgid "Error inserting avatar"
msgstr ""
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr ""
@@ -6041,11 +6653,11 @@ msgstr "Dine sendte meldinger"
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Ukjent"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonnement"
@@ -6053,31 +6665,32 @@ msgstr "Abonnement"
msgid "All subscriptions"
msgstr "Alle abonnementer"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abonnenter"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Alle abonnenter"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Bruker-ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Medlem siden"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Daglig gjennomsnitt"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Alle grupper"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr ""
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Ikke-implementert metode."
@@ -6102,11 +6715,19 @@ msgstr ""
msgid "Popular"
msgstr ""
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Repeter denne notisen?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ja"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repeter denne notisen"
@@ -6115,7 +6736,7 @@ msgstr "Repeter denne notisen"
msgid "Revoke the \"%s\" role from this user"
msgstr ""
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6215,6 +6836,50 @@ msgstr ""
msgid "None"
msgstr "Ingen"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Oppdatering av avatar mislyktes."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Feil ved oppdatering av fjernprofil."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6245,90 +6910,109 @@ msgstr ""
msgid "Unsubscribe"
msgstr ""
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Brukeren har ingen profil."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Brukerbilde"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr ""
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Endre profilinnstillinger"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Rediger"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Send en direktemelding til denne brukeren"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Melding"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderer"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Brukerrolle"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "noen få sekunder siden"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "omtrent ett minutt siden"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "omtrent %d minutter siden"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "omtrent én time siden"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "omtrent %d timer siden"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "omtrent én dag siden"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "omtrent %d dager siden"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "omtrent én måned siden"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "omtrent %d måneder siden"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "omtrent ett år siden"
@@ -6342,7 +7026,7 @@ msgstr "%s er ikke en gyldig farge."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s er ikke en gyldig farge. Bruk 3 eller 6 heksadesimale tegn."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Melding for lang - maks er %1$d tegn, du sendte %2$d."
diff --git a/locale/nl/LC_MESSAGES/statusnet.po b/locale/nl/LC_MESSAGES/statusnet.po
index c73771f84..8c432b7b1 100644
--- a/locale/nl/LC_MESSAGES/statusnet.po
+++ b/locale/nl/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Dutch
#
+# Author@translatewiki.net: Brion
# Author@translatewiki.net: Itavero
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Siebrand
@@ -10,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:33+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:50+0000\n"
"Language-Team: Dutch\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: nl\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Toegang"
@@ -73,78 +74,83 @@ msgstr "Gesloten"
msgid "Save access settings"
msgstr "Toegangsinstellingen opslaan"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Opslaan"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Deze pagina bestaat niet"
+msgid "No such page."
+msgstr "Deze pagina bestaat niet."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Onbekende gebruiker."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s en vrienden, pagina %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s en vrienden"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Feed voor vrienden van %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Feed voor vrienden van %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Feed voor vrienden van %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -152,7 +158,7 @@ msgstr ""
"Dit is de tijdlijn voor %s en vrienden, maar niemand heeft nog mededelingen "
"geplaatst."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -162,84 +168,86 @@ msgstr ""
"groups%%) of plaats zelf berichten."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"U kunt proberen [%1$s te porren](../%2$s) op de eigen profielpagina of [een "
+"U kunt proberen [%1$s te porren](../%2$s) op de eigen profielpagina of [een "
"bericht voor die gebruiker plaatsen](%%%%action.newnotice%%%%?"
"status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"U kunt een [gebruiker aanmaken](%%%%action.register%%%%) en %s dan porren of "
"een bericht sturen."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "U en vrienden"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Updates van %1$s en vrienden op %2$s."
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "De API-functie is niet aangetroffen."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Deze methode vereist een POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
"U moet een parameter met de naam \"device\" opgeven met een van de volgende "
-"waardes: sms, im, none"
+"waardes: sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Het was niet mogelijk de gebruiker bij te werken."
@@ -248,7 +256,7 @@ msgstr "Het was niet mogelijk de gebruiker bij te werken."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Deze gebruiker heeft geen profiel."
@@ -258,9 +266,9 @@ msgid "Could not save profile."
msgstr "Het was niet mogelijk het profiel op te slaan."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,49 +326,49 @@ msgstr "Privéberichten aan %s"
msgid "All the direct messages sent to %s"
msgstr "Alle privéberichten aan %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Het bericht is leeg!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Dat is te lang. De maximale berichtlengte is %d tekens."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "De ontvanger is niet aangetroffen."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"U kunt geen privéberichten sturen aan gebruikers die niet op uw "
"vriendenlijst staan."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Er is geen status gevonden met dit ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Deze mededeling staat al in uw favorietenlijst."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Het was niet mogelijk een favoriet aan te maken."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Deze mededeling staat niet in uw favorietenlijst."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr ""
"Het was niet mogelijk deze mededeling van uw favorietenlijst te verwijderen."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+msgid "Could not follow user: profile not found."
msgstr "U kunt deze gebruiker niet volgen, omdat deze niet bestaat."
#: actions/apifriendshipscreate.php:118
@@ -378,9 +386,10 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "U kunt het abonnement op uzelf niet opzeggen."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Er moeten twee gebruikersnamen of ID's opgegeven worden."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr ""
+"Er moeten twee gebruikersnamen (screen_names) of ID's opgegeven worden."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -390,118 +399,130 @@ msgstr "Het was niet mogelijk de brongebruiker te bepalen."
msgid "Could not find target user."
msgstr "Het was niet mogelijk de doelgebruiker te vinden."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"De gebruikersnaam mag alleen kleine letters en cijfers bevatten. Spaties "
"zijn niet toegestaan."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr ""
"De opgegeven gebruikersnaam is al in gebruik. Kies een andere gebruikersnaam."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ongeldige gebruikersnaam!"
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "De thuispagina is geen geldige URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "De volledige naam is te lang (maximaal 255 tekens)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "De beschrijving is te lang (maximaal %d tekens)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Locatie is te lang (maximaal 255 tekens)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Te veel aliassen! Het maximale aantal is %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ongeldige alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Ongeldige alias: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "De alias \"%s\" wordt al gebruikt. Geef een andere alias op."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Een alias kan niet hetzelfde zijn als de gebruikersnaam."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "De groep is niet aangetroffen!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "De groep is niet aangetroffen."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "U bent al lid van die groep."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Een beheerder heeft ingesteld dat u geen lid mag worden van die groep."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Het was niet mogelijk gebruiker %1$s toe te voegen aan de groep %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "U bent geen lid van deze groep."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Het was niet mogelijk gebruiker %1$s uit de group %2$s te verwijderen."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Groepen van %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Groepen op de site %1$s waar %2$s lid van is."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s groepen"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "groepen op %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Uploaden is mislukt."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Er is geen oauth_token parameter opgegeven."
@@ -511,17 +532,17 @@ msgid "Invalid token."
msgstr "Ongeldig token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -560,12 +581,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Het verzoektoken %s is geweigerd en ingetrokken."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Het formulier is onverwacht ingezonden."
@@ -588,20 +612,22 @@ msgstr ""
"van het type \"<strong>%3$s</strong> tot uw gebruikersgegevens. Geef alleen "
"toegang tot uw gebruiker bij %4$s aan derde partijen die u vertrouwt."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Gebruiker"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Gebruikersnaam"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Wachtwoord"
@@ -617,11 +643,11 @@ msgstr "Toestaan"
msgid "Allow or deny access to your account information."
msgstr "Toegang tot uw gebruikersgegevens toestaan of ontzeggen."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Deze methode vereist een POST of DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "U kunt de status van een andere gebruiker niet verwijderen."
@@ -638,61 +664,65 @@ msgstr "U kunt uw eigen mededeling niet herhalen."
msgid "Already repeated that notice."
msgstr "U hebt die mededeling al herhaald."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "De status is verwijderd."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Er is geen status gevonden met dit ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "De client moet een parameter \"status\" met een waarde opgeven."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "De mededeling is te lang. Gebruik maximaal %d tekens."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Niet gevonden"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Niet aangetroffen."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"De maximale mededelingenlengte is %d tekens, inclusief de URL voor de "
"bijlage."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Niet-ondersteund bestandsformaat."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favorieten van %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s updates op de favorietenlijst geplaatst door %2$s / %3$s"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Updates over %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s updates die een reactie zijn op updates van %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s publieke tijdlijn"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s updates van iedereen"
@@ -707,19 +737,19 @@ msgstr "Herhaald naar %s"
msgid "Repeats of %s"
msgstr "Herhaald van %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Mededelingen met het label %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Updates met het label %1$s op %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Niet aangetroffen."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "De API-functie is in bewerking."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -740,8 +770,9 @@ msgstr "Geen afmeting."
msgid "Invalid size."
msgstr "Ongeldige afmetingen."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -752,10 +783,10 @@ msgstr ""
"U kunt een persoonlijke avatar uploaden. De maximale bestandsgrootte is %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Gebruiker zonder bijbehorend profiel"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Gebruiker zonder bijbehorend profiel."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -773,7 +804,7 @@ msgid "Preview"
msgstr "Voorvertoning"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Verwijderen"
@@ -785,24 +816,28 @@ msgstr "Uploaden"
msgid "Crop"
msgstr "Uitsnijden"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Er is geen bestand geüpload."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
"Selecteer een vierkant in de afbeelding om deze als uw avatar in te stellen"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Ons bestand is verloren gegaan."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "De avatar is bijgewerkt."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Het bijwerken van de avatar is mislukt."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "De avatar is verwijderd."
@@ -810,11 +845,11 @@ msgstr "De avatar is verwijderd."
msgid "You already blocked that user."
msgstr "U hebt deze gebruiker reeds geblokkeerd."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Gebruiker blokkeren"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -824,27 +859,42 @@ msgstr ""
"niet meer volgen en u wordt niet op de hoogte gebracht van \"@\"-antwoorden "
"van deze gebruiker."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Nee"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Gebruiker niet blokkeren"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ja"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Deze gebruiker blokkeren"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Het was niet mogelijk om de blokkadeinformatie op te slaan."
@@ -857,8 +907,8 @@ msgstr "Het was niet mogelijk om de blokkadeinformatie op te slaan."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "De opgegeven groep bestaat niet."
@@ -888,9 +938,11 @@ msgstr "Deblokkeer"
msgid "Unblock this user"
msgstr "Deblokkeer deze gebruiker."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Verzenden naar "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Verzenden naar %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -904,33 +956,43 @@ msgstr "De bevestigingscode niet gevonden."
msgid "That confirmation code is not for you!"
msgstr "Dit is niet uw bevestigingscode!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Onbekend adrestype %s"
+msgid "Unrecognized address type %s."
+msgstr "Onbekend adrestype %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Dit adres is al bevestigd."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "De gebruiker kon gebruiker niet bijwerkt worden."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "De e-mailbevestiging kon niet verwijderd worden."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Adres bevestigen"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Het adres \"%s\" is voor uw gebruiker bevestigd."
@@ -940,7 +1002,7 @@ msgid "Conversation"
msgstr "Dialoog"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Mededelingen"
@@ -959,7 +1021,7 @@ msgstr "U bent niet de eigenaar van deze applicatie."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Er is een probleem met uw sessietoken."
@@ -977,21 +1039,23 @@ msgstr ""
"worden alle gegevens van deze applicatie uit de database verwijderd, "
"inclusief alle bestaande gebruikersverbindingen."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Deze applicatie niet verwijderen"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Deze applicatie verwijderen"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Niet aangemeld."
@@ -1016,11 +1080,13 @@ msgstr "Mededeling verwijderen"
msgid "Are you sure you want to delete this notice?"
msgstr "Weet u zeker dat u deze aankondiging wilt verwijderen?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Deze mededeling niet verwijderen"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Deze mededeling verwijderen"
@@ -1045,58 +1111,69 @@ msgstr ""
"worden alle gegevens van deze gebruiker uit de database verwijderd. Het is "
"niet mogelijk ze terug te zetten."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Gebruiker verwijderen"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Uiterlijk"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Instellingen voor de vormgeving van deze StatusNet-website."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "De logo-URL is ongeldig."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "De vormgeving is niet beschikbaar: %s"
+msgid "Theme not available: %s."
+msgstr "De vormgeving is niet beschikbaar: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Logo wijzigen"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Websitelogo"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Vormgeving wijzigen"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Vormgeving website"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Mogelijke vormgevingen voor deze website."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Aangepaste vormgeving"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "U kunt een vormgeving voor StatusNet uploaden als ZIP-archief."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Achtergrondafbeelding wijzigen"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Achtergrond"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1105,67 +1182,76 @@ msgstr ""
"Hier kunt u een achtergrondafbeelding voor de website uploaden. De maximale "
"bestandsgrootte is %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Aan"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Uit"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Achtergrondafbeelding inschakelen of uitschakelen."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Achtergrondafbeelding naast elkaar"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Kleuren wijzigen"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Inhoud"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Menubalk"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Tekst"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Verwijzingen"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Uitgebreid"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Aangepaste CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Standaardinstellingen gebruiken"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Standaardontwerp toepassen"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Standaardinstellingen toepassen"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Opslaan"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Ontwerp opslaan"
@@ -1270,11 +1356,17 @@ msgstr "Gebruik dit formulier om de groep te bewerken."
msgid "description is too long (max %d chars)."
msgstr "de beschrijving is te lang (maximaal %d tekens)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ongeldige alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Het was niet mogelijk de groep bij te werken."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Het was niet mogelijk de aliassen aan te maken."
@@ -1282,31 +1374,42 @@ msgstr "Het was niet mogelijk de aliassen aan te maken."
msgid "Options saved."
msgstr "De instellingen zijn opgeslagen."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-mailvoorkeuren"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Uw e-mailinstellingen op %%site.name%% beheren."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adres"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-mailadres"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Huidige bevestigde e-mailadres"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Verwijderen"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1314,108 +1417,138 @@ msgstr ""
"Er wordt gewacht op bevestiging van dit adres. Controleer uw inbox (en uw "
"ongewenste berichten/spam) voor een bericht met nadere instructies."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Annuleren"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-mailadres"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-mailadres, zoals \"gebruikersnaam@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Toevoegen"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Inkomende e-mail"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Stuur een email naar dit adres om een nieuw bericht te posten"
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Stelt een nieuw e-mailadres in voor het ontvangen van berichten. Het "
"bestaande e-mailadres wordt verwijderd."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Nieuw"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Voorkeuren"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "E-mailvoorkeuren"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Mij e-mailen bij nieuwe abonnementen."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Mij e-mailen als iemand mijn mededeling als favoriet instelt."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Mij e-mailen als iemand mij een privébericht zendt."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Mij e-mailen als iemand mij een antwoord met \"@\" erin stuurt."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Vrienden mogen me porren en e-mailen."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Ik wil mededelingen per e-mail plaatsen."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Een MicroID voor mijn e-mailadres publiceren."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Uw voorkeuren zijn opgeslagen."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "De e-mailvoorkeuren zijn opgeslagen."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Geen e-mailadres"
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Kan het emailadres niet normaliseren"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Geen geldig e-mailadres."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "U hebt dit e-mailadres als ingesteld als uw e-mailadres."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Dit e-mailadres is al geregistreerd door een andere gebruiker."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "De bevestigingscode kon niet ingevoegd worden."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1424,43 +1557,53 @@ msgstr ""
"toegevoegd. Controleer uw inbox (en spam box!) Voor de code en instructies "
"hoe het te gebruiken."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Er is geen openstaand bevestigingsverzoek om te annuleren."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Dat is het verkeerde IM-adres."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Dat is het verkeerde e-mailadres."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Bevestiging geannuleerd."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "E-mailbevestiging geannuleerd."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Dit is niet uw e-mailadres."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Het adres is verwijderd."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Het e-mailadres is verwijderd."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Geen binnenkomend e-mailadres"
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Kan de gebruikersgegevens niet vernieuwen"
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Het e-mailadres voor inkomende mail is verwijderd."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Het nieuwe binnenkomende e-mailadres is toegevoegd."
@@ -1583,8 +1726,8 @@ msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
"De diensten op afstand gebruiken een onbekende versie van het OMB-protocol."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
msgstr ""
"Er is een fout opgetreden tijdens het bijwerken van het profiel op afstand."
@@ -1614,13 +1757,13 @@ msgstr "Deze gebruiker heeft deze rol al."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Er is geen profiel opgegeven."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Er is geen profiel met dat ID."
@@ -1641,11 +1784,11 @@ msgstr "Deze gebruiker is al de toegang tot de groep ontzegd."
msgid "User is not a member of group."
msgstr "De gebruiker is geen lid van de groep."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Gebruiker toegang tot de groep blokkeren"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1656,15 +1799,17 @@ msgstr ""
"gebruiker wordt dan uit de groep verwijderd, kan er geen berichten meer "
"plaatsen en kan zich in de toekomst ook niet meer op de groep abonneren."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Deze gebruiker niet de toegang tot deze groep ontzeggen"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Deze gebruiker de toegang tot deze groep ontzeggen"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
"Er is een databasefout opgetreden bij het uitsluiten van de gebruiker van de "
@@ -1711,10 +1856,6 @@ msgstr ""
"Hier kunt u een logo voor uw groep uploaden. De maximale bestandsgrootte is %"
"s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Gebruiker zonder bijbehorend profiel."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Selecteer een vierkant uit de afbeelding die het logo wordt."
@@ -1745,34 +1886,38 @@ msgstr "Ledenlijst van deze groep"
msgid "Admin"
msgstr "Beheerder"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blokkeren"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Deze gebruiker groepsbeheerder maken"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Beheerder maken"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Deze gebruiker beheerder maken"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s tijdlijn"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Updates voor leden van %1$s op %2$s."
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Groepen"
@@ -1798,7 +1943,7 @@ msgstr ""
"[doorzoek dan de groepen](%%%%action.groupsearch%%%%) of [start zelf een "
"groep!](%%%%action.newgroup%%%%)."
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Nieuwe groep aanmaken"
@@ -1851,11 +1996,15 @@ msgstr "De gebruiker is niet de toegang tot de groep ontzegd."
msgid "Error removing the block."
msgstr "Er is een fout opgetreden bij het verwijderen van de blokkade."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM-instellingen"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1864,15 +2013,24 @@ msgstr ""
"U kunt berichten verzenden en ontvangen via Jabber/GTalk [\"onmiddellijke "
"berichten\"](%%doc.im%%). Maak hieronder uw instellingen."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM is niet beschikbaar."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM-adres"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Huidige bevestigde Jabber/GTalk adres."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1882,11 +2040,9 @@ msgstr ""
"gebruiker op een bericht met nadere instructies. Hebt u %s aan uw "
"contactenlijst toegevoegd?"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM-adres"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1895,45 +2051,66 @@ msgstr ""
"Jabber-ID of GTalk-adres, zoals \"gebruiker@example.org\". Zorg ervoor dat u "
"%s eerst aan uw contactenlijst in uw IM-programma of in GTalk toevoegt."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM-voorkeuren"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Mij berichten sturen via Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Een mededeling versturen als mijn Jabber/GTalk-status wijzigt."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Mij antwoorden sturen via Jabber/GTalk van gebruikers op wie ik niet "
"geabonneerd ben."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Een MicroID voor mijn Jabber/GTalk-adres publiceren."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Uw voorkeuren zijn opgeslagen."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Geen Jabber-ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Het was niet mogelijk om het Jabber-ID te normaliseren"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Geen geldige Jabber-ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "U hebt dit al ingesteld als uw Jabber-ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Het Jabber-ID wordt al gebruikt door een andere gebruiker."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1942,10 +2119,32 @@ msgstr ""
"Er is een bevestigingscode verstuurd naar het opgegeven IM-adres. U moet "
"ermee akkoord gaan dat %s berichten aan u verzendt."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Dat is het verkeerde IM-adres."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "De IM-bevestiging kon niet verwijderd worden."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "IM-bevestiging geannuleerd."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Dit is niet uw Jabber-ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Het IM-adres is verwijderd."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1966,9 +2165,10 @@ msgstr "Het is niet mogelijk uitnodigingen te verzenden."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"U moet aangemeld zijn om anderen te kunnen uitnodigen gebruik te maken van %s"
+"U moet aangemeld zijn om anderen te kunnen uitnodigen gebruik te maken van %"
+"s."
#: actions/invite.php:72
#, php-format
@@ -1987,7 +2187,9 @@ msgstr "Nieuwe gebruikers uitnodigen"
msgid "You are already subscribed to these users:"
msgstr "U bent als geabonneerd op deze gebruikers:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2041,12 +2243,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Verzenden"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s heeft u uitgenodigd voor %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2111,7 +2315,9 @@ msgstr "U moet aangemeld zijn om lid te worden van een groep."
msgid "No nickname or ID."
msgstr "Geen gebruikersnaam of ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s is lid geworden van de groep %2$s"
@@ -2120,50 +2326,52 @@ msgstr "%1$s is lid geworden van de groep %2$s"
msgid "You must be logged in to leave a group."
msgstr "U moet aangemeld zijn om een groep te kunnen verlaten."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "U bent geen lid van deze groep"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s heeft de groep %2$s verlaten"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "U bent al aangemeld."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "De gebruikersnaam of wachtwoord is onjuist."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Er is een fout opgetreden bij het maken van de instellingen. U hebt "
"waarschijnlijk niet de juiste rechten."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Aanmelden"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Aanmelden"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Aanmeldgegevens onthouden"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Voortaan automatisch aanmelden. Niet gebruiken op gedeelde computers!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Wachtwoord kwijt of vergeten?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2171,14 +2379,17 @@ msgstr ""
"Om veiligheidsredenen moet u uw gebruikersnaam en wachtwoord nogmaals "
"invoeren alvorens u uw instellingen kunt wijzigen."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Aanmelden met uw gebruikersnaam en wachtwoord."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Meld u aan met uw gebruikersnaam en wachtwoord. Hebt u nog geen "
-"gebruikersnaam? [Registreer een nieuwe gebruiker](%%action.register%%)."
+"Hebt u nog geen gebruikersnaam? [Registreer een nieuwe gebruiker](%%action."
+"register%%)."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2200,8 +2411,8 @@ 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."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Geen huidige status"
+msgid "No current status."
+msgstr "Geen huidige status."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2235,12 +2446,12 @@ msgstr "Gebruik dit formulier om een nieuwe groep aan te maken."
msgid "New message"
msgstr "Nieuw bericht"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "U kunt geen bericht naar deze gebruiker zenden."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Geen inhoud!"
@@ -2248,7 +2459,7 @@ msgstr "Geen inhoud!"
msgid "No recipient specified."
msgstr "Er is geen ontvanger aangegeven."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Stuur geen berichten naar uzelf. Zeg het gewoon in uw hoofd."
@@ -2262,7 +2473,7 @@ msgstr "Bericht verzonden."
msgid "Direct message to %s sent."
msgstr "Het directe bericht aan %s is verzonden."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Er is een Ajax-fout opgetreden"
@@ -2270,7 +2481,7 @@ msgstr "Er is een Ajax-fout opgetreden"
msgid "New notice"
msgstr "Nieuw bericht"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "De mededeling is verzonden"
@@ -2323,10 +2534,9 @@ msgstr "Updates die overeenkomen met de zoekterm \"%1$s\" op %2$s."
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"Deze gebruiker is niet te porren of heeft zijn e-mailadres nog niet "
-"bevestigd."
+"Deze gebruiker is niet te porren of heeft nog geen bevestigd e-mailadres."
#: actions/nudge.php:94
msgid "Nudge sent"
@@ -2368,12 +2578,13 @@ msgid "You are not a user of that application."
msgstr "U bent geen gebruiker van die applicatie."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
-"Het was niet mogelijk de toegang te ontzeggen voor de volgende applicatie: "
+"Het was niet mogelijk de toegang te ontzeggen voor de volgende applicatie: %"
+"s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
"U hebt geen enkele applicatie geautoriseerd voor toegang tot uw "
@@ -2384,25 +2595,30 @@ msgid "Developers can edit the registration settings for their applications "
msgstr ""
"Ontwikkelaars kunnen de registratiegegevens voor hun applicaties bewerken "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Mededeling heeft geen profiel"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Mededeling heeft geen profiel."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Status van %1$s op %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "inhoudstype "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Inhoudstype %s wordt niet ondersteund."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Alleen "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Alleen URL's voor %s via normale HTTP alstublieft."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Geen ondersteund gegevensformaat."
@@ -2505,7 +2721,7 @@ msgid "6 or more characters"
msgstr "Zes of meer tekens"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Bevestigen"
@@ -2517,11 +2733,11 @@ msgstr "Gelijk aan het wachtwoord hierboven"
msgid "Change"
msgstr "Wijzigen"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Het wachtwoord moet zes of meer tekens bevatten."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "De wachtwoorden komen niet overeen."
@@ -2533,7 +2749,7 @@ msgstr "Het oude wachtwoord is onjuist"
msgid "Error saving user; invalid."
msgstr "Fout bij opslaan gebruiker; ongeldig."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Het was niet mogelijk het nieuwe wachtwoord op te slaan."
@@ -2542,7 +2758,7 @@ msgid "Password saved."
msgstr "Het wachtwoord is opgeslagen."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Paden"
@@ -2552,23 +2768,23 @@ msgstr "Pad- en serverinstellingen voor de StatusNet-website."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Er kan niet uit de vormgevingmap gelezen worden: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Er kan niet uit de vormgevingmap gelezen worden: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Er kan niet in de avatarmap geschreven worden: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Er kan niet in de avatarmap geschreven worden: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Er kan niet in de achtergrondmap geschreven worden: %s"
+msgid "Background directory not writable: %s."
+msgstr "Er kan niet in de achtergrondmap geschreven worden: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Er kan niet uit de talenmap gelezen worden: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Er kan niet uit de talenmap gelezen worden: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2708,19 +2924,19 @@ msgstr ""
msgid "People search"
msgstr "Gebruikers zoeken"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Geen geldig gebruikerslabel: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Geen geldig gebruikerslabel: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Gebruikers die zichzelf met %1$s hebben gelabeld - pagina %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Ongeldige mededelinginhoud"
+msgid "Invalid notice content."
+msgstr "Ongeldige mededelinginhoud."
#: actions/postnotice.php:101
#, php-format
@@ -2748,42 +2964,43 @@ msgstr "Profielinformatie"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Volledige naam"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Thuispagina"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "De URL van uw thuispagina, blog of profiel bij een andere website"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Geef een beschrijving van uzelf en uw interesses in %d tekens"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Beschrijf uzelf en uw interesses"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Beschrijving"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Locatie"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Waar u bent, bijvoorbeeld \"woonplaats, land\" of \"postcode, land\""
@@ -2793,7 +3010,7 @@ msgstr "Mijn huidige locatie weergeven bij het plaatsen van mededelingen"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Labels"
@@ -2827,7 +3044,7 @@ msgstr ""
"Automatisch abonneren bij abonnement op mij (beste voor automatische "
"processen)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "De beschrijving is te lang (maximaal %d tekens)."
@@ -2870,8 +3087,8 @@ msgstr "De instellingen zijn opgeslagen."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Meer dan de paginalimiet (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Meer dan de paginalimiet (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3042,7 +3259,7 @@ msgstr "Wachtwoord herstellen"
msgid "Recover password"
msgstr "Wachtwoord herstellen"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Wachtwoordherstel aangevraagd"
@@ -3062,21 +3279,21 @@ msgstr "Herstellen"
msgid "Enter a nickname or email address."
msgstr "Voer een gebruikersnaam of e-mailadres in."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
"Er bestaat geen gebruiker met het opgegeven e-mailadres of de opgegeven "
"gebruikersnaam."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Die gebruiker heeft geen e-mailadres geregistreerd."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Er is een fout opgetreden bij het opslaan van de adresbevestiging."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3084,108 +3301,126 @@ msgstr ""
"De instructies om uw wachtwoord te herstellen zijn verstuurd naar het e-"
"mailadres dat voor uw gebruiker is geregistreerd."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Het wachtwoord is onverwacht opnieuw ingesteld."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Het wachtwoord moet uit zes of meer tekens bestaan."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Het wachtwoord en de bevestiging komen niet overeen."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Er is een fout opgetreden tijdens het instellen van de gebruiker."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Het nieuwe wachtwoord is opgeslagen. U bent nu aangemeld."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "U kunt zich alleen registreren als u wordt uitgenodigd."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Sorry. De uitnodigingscode is ongeldig."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "De registratie is voltooid"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registreren"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registratie is niet toegestaan."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "U kunt zich niet registreren als u niet met de licentie akkoord gaat."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Het e-mailadres bestaat al."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ongeldige gebruikersnaam of wachtwoord."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Via dit formulier kunt u een nieuwe gebruiker aanmaken. Daarna kunt u "
"mededelingen uitsturen en contact maken met vrienden en collega's. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1-64 kleine letters of cijfers, geen leestekens of spaties. Verplicht."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "Zes of meer tekens. Verplicht"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Gelijk aan het wachtwoord hierboven. Verplicht"
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Alleen gebruikt voor updates, aankondigingen en wachtwoordherstel"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Een langere naam, mogelijk uw echte naam"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Mijn teksten en bestanden zijn beschikbaar onder "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Ik begrijp dat inhoud en gegevens van %1$s persoonlijk en vertrouwelijk zijn."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Naamsvermelding 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Voor mijn teksten en bestanden rust het auteursrecht bij %1$s."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Ik ben de rechthebbende voor mijn teksten en bestanden."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Alle rechten voorbehouden."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" behalve de volgende privégegevens: wachtwoord, e-mailadres, IM-adres, "
+"Mijn teksten en bestanden zijn beschikbaar onder %s, \n"
+"behalve de volgende privégegevens: wachtwoord, e-mailadres, IM-adres, "
"telefoonnummer."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3219,7 +3454,7 @@ msgstr ""
"Dank u wel voor het registreren en we hopen dat deze dienst u biedt wat u "
"ervan verwacht."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3264,7 +3499,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "De URL van uw profiel bij een andere, compatibele microblogdienst"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Abonneren"
@@ -3302,7 +3537,7 @@ msgstr "U kunt uw eigen mededeling niet herhalen."
msgid "You already repeated that notice."
msgstr "U hent die mededeling al herhaald."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Herhaald"
@@ -3340,9 +3575,9 @@ msgstr "Antwoordenfeed voor %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
-"Dit is de tijdlijn met de antwoorden aan %1$s, maar %2$s heeft nog geen "
+"Dit is de tijdlijn met antwoorden aan %1$s, maar %2$s heeft nog geen "
"antwoorden ontvangen."
#: actions/replies.php:204
@@ -3357,8 +3592,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"U kunt proberen [%1$s te porren](../%2$s) of [een bericht voor die gebruiker "
"plaatsen](%%%%action.newnotice%%%%?status_textarea=%3$s)."
@@ -3376,7 +3611,7 @@ msgstr "U kunt geen gebruikersrollen intrekken op deze website."
msgid "User doesn't have this role."
msgstr "Deze gebruiker heeft deze rol niet."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3390,7 +3625,7 @@ msgstr "Deze gebruiker is al in de zandbak geplaatst."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessies"
@@ -3427,26 +3662,30 @@ msgstr "U moet aangemeld zijn om een applicatie te kunnen bekijken."
msgid "Application profile"
msgstr "Applicatieprofiel"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Icoon"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Naam"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisatie"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Beschrijving"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistieken"
@@ -3536,22 +3775,22 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
-"%s heeff nog geen mededelingen op de eigen favorietenlijst geplaatst. Plaats "
+"%s heeft nog geen mededelingen op de eigen favorietenlijst geplaatst. Plaats "
"een interessant bericht, en dan komt u misschien wel op de "
"favorietenlijst. :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
-"%s heeft nog geen favorietenlijst. U kunt een [gebruiker registeren](%%%%"
-"action.register%%%%) en dan interessante mededelingen plaatsten die "
+"%s heeft nog geen favoriete mededelingen. U kunt een [gebruiker registeren](%"
+"%%%action.register%%%%) en dan interessante mededelingen plaatsten die "
"misschien aan favorietenlijsten zijn toe te voegen. :)"
#: actions/showfavorites.php:243
@@ -3568,67 +3807,67 @@ msgstr "%s groep"
msgid "%1$s group, page %2$d"
msgstr "Groep %1$s, pagina %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Groepsprofiel"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Opmerking"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliassen"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Groepshandelingen"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Mededelingenfeed voor groep %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Mededelingenfeed voor groep %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Mededelingenfeed voor groep %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Vriend van een vriend voor de groep %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Leden"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(geen)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Alle leden"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Aangemaakt"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3644,7 +3883,7 @@ msgstr ""
"lid te worden van deze groep en nog veel meer! [Meer lezen...](%%%%doc.help%%"
"%%)"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3657,7 +3896,7 @@ msgstr ""
"[StatusNet](http://status.net/). De leden wisselen korte mededelingen uit "
"over hun ervaringen en interesses. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Beheerders"
@@ -3735,11 +3974,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"U kunt proberen %1$s te porren of [een bericht voor die gebruiker plaatsen](%"
-"%%%action.newnotice%%%%?status_textarea=%2$s)."
+"U kunt proberen %1$s te porren of [een bericht aan die gebruiker sturen](%%%%"
+"action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3798,11 +4037,11 @@ msgid "Unknown language \"%s\"."
msgstr "De taal \"%s\" is niet bekend."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "De minimale tekstlimiet is 140 tekens."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "De minimale tekstlimiet is 0 tekens (ongelimiteerd)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "De duplicaatlimiet moet één of meer seconden zijn."
#: actions/siteadminpanel.php:221
@@ -3898,8 +4137,8 @@ msgid "Unable to save site notice."
msgstr "Het was niet mogelijk om de websitebrede mededeling op te slaan."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "De maximale lengte voor de websitebrede aankondiging is 255 tekens"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "De maximale lengte voor de websitebrede aankondiging is 255 tekens."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3915,44 +4154,71 @@ msgstr ""
msgid "Save site notice"
msgstr "Websitebrede mededeling opslaan"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS-instellingen"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "U kunt SMS-berichten per e-mail ontvangen van %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS is niet beschikbaar."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-adres"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Huidige bevestigde telefoonnummer met SMS-functie."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Er wordt gewacht op bevestiging van dit telefoonnummer."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Bevestigingscode"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Voer de code in die u via uw telefoon hebt ontvangen."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Bevestigen"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "SMS-nummer"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Telefoonnummer zonder spaties of leestekens, met netnummer"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS-voorkeuren"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3960,23 +4226,33 @@ msgstr ""
"Mij mededelingen via SMS sturen. Ik begrijp dat dit exorbitante rekeningen "
"van mijn provider kan opleveren."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Uw SMS-voorkeuren zijn opgeslagen."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Geen telefoonnummer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Er is geen provider geselecteerd."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "U hebt dit al ingesteld als uw telefoonnummer."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Dit telefoonnummer is al geregistrerd door een andere gebruiker."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3984,23 +4260,40 @@ msgstr ""
"Er is een bevestigingscode verzonden naar het telefoonnummer dat u hebt "
"toegevoegd. Op uw telefoon vindt u de code en de instructies."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Dit is het verkeerde bevestigingsnummer."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS-bevestiging geannuleerd."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Dit is niet uw telefoonnummer."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Het SMS-nummer is verwijderd."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Mobiele aanbieder"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Selecteer een provider"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4010,13 +4303,14 @@ msgstr ""
"SMS ondersteunt, maar nog niet in de lijst is opgenomen, laat dit ons dan "
"via e-mail weten op het e-mailadres %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Er is geen code ingevoerd"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Snapshots"
@@ -4037,7 +4331,7 @@ msgid "Invalid snapshot report URL."
msgstr "De rapportage-URL voor snapshots is ongeldig."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Willekeurig tijdens een websitehit"
#: actions/snapshotadminpanel.php:201
@@ -4077,8 +4371,8 @@ msgstr "Snapshotinstellingen opslaan"
msgid "You are not subscribed to that profile."
msgstr "U bent niet geabonneerd op dat profiel."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Het was niet mogelijk het abonnement op te slaan."
@@ -4181,11 +4475,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s volgt niemand."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4218,12 +4512,12 @@ msgstr "Geen ID-argument."
msgid "Tag %s"
msgstr "Label %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Gebruikersprofiel"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4260,10 +4554,6 @@ msgstr ""
msgid "No such tag."
msgstr "Onbekend label."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "De API-functie is in bewerking."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "U hebt deze gebruiker niet geblokkeerd."
@@ -4277,7 +4567,7 @@ msgid "User is not silenced."
msgstr "Deze gebruiker is niet gemuilkorfd."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Het profiel-ID was niet aanwezig in het verzoek."
#: actions/unsubscribe.php:98
@@ -4315,7 +4605,8 @@ msgstr "Ongeldige welkomsttekst. De maximale lengte is 255 tekens."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Ongeldig standaardabonnement: \"%1$s\" is geen gebruiker."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profiel"
@@ -4375,7 +4666,7 @@ msgstr ""
"aangegeven dat u zich op de mededelingen van een gebruiker wilt abonneren, "
"klik dan op \"Afwijzen\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licentie"
@@ -4479,51 +4770,57 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Geniet van uw hotdog!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Groepen voor %1$s, pagina %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Meer groepen zoeken"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s is van geen enkele groep lid."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"U kunt [naar groepen zoeken](%%action.groupsearch%%) en daar lid van worden."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Updates van %1$s op %2$s."
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-"Deze website wordt aangedreven door %1$2 versie %2$s. Auteursrechten "
+"Deze website wordt aangedreven door %1$s versie %2$s. Auteursrechten "
"voorbehouden 2008-2010 Statusnet, Inc. en medewerkers."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Medewerkers"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4535,7 +4832,7 @@ msgstr ""
"zoals gepubliceerd door de Free Software Foundation, versie 3 van de "
"Licentie, of (naar uw keuze) elke latere versie. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4547,7 +4844,7 @@ msgstr ""
"GESCHIKTHEID VOOR EEN BEPAALD DOEL. Zie de GNU Affero General Public License "
"voor meer details. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4556,97 +4853,146 @@ msgstr ""
"Samen met dit programma hoort u een kopie van de GNU Affero General Public "
"License te hebben ontvangen. Zo niet, zie dan %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Plug-ins"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Versie"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Auteur(s)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Het was niet mogelijk de URL \"%s\" te verwerken."
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin denkt dat iets onmogelijk is."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Bestanden mogen niet groter zijn dan %d bytes, en uw bestand was %d bytes. "
-"Probeer een kleinere versie te uploaden."
+"Bestanden mogen niet groter zijn dan %1$d bytes, en uw bestand was %2$d "
+"bytes. Probeer een kleinere versie te uploaden."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"Een bestand van deze grootte overschijdt uw gebruikersquota van %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
"Een bestand van deze grootte overschijdt uw maandelijkse quota van %d bytes."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ongeldige bestandsnaam."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Groepslidmaatschap toevoegen is mislukt."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Geen lid van groep."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Groepslidmaatschap opzeggen is mislukt."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Het was niet mogelijk de lokale groep bij te werken."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Het was niet mogelijk een aanmeldtoken aan te maken voor %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Geen databasenaam of DSN gevonden."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "U mag geen directe berichten verzenden."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Het was niet mogelijk het bericht in te voegen."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Het was niet mogelijk het bericht bij te werken met de nieuwe URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Er is geen profiel (%1$d) te vinden bij de mededeling (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr "Er is een databasefout opgetreden bij de invoer van de hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr ""
"Er is een probleem opgetreden bij het opslaan van de mededeling. Deze is te "
"lang."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr ""
"Er was een probleem bij het opslaan van de mededeling. De gebruiker is "
"onbekend."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"U hebt te snel te veel mededelingen verstuurd. Kom even op adem en probeer "
"het over enige tijd weer."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4654,291 +5000,373 @@ msgstr ""
"Te veel duplicaatberichten te snel achter elkaar. Neem een adempauze en "
"plaats over een aantal minuten pas weer een bericht."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
"U bent geblokkeerd en mag geen mededelingen meer achterlaten op deze site."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Er is een probleem opgetreden bij het opslaan van de mededeling."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Het gegevenstype dat is opgegeven aan saveKnownGroups is onjuist"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr ""
"Er is een probleem opgetreden bij het opslaan van het Postvak IN van de "
"groep."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"De rol \"%1$s\" voor gebruiker #%2$d kan niet ingetrokken worden. Deze "
+"gebruiker bestaat niet."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"De rol \"%1$s\" voor gebruiker #%2$d kan niet ingetrokken worden. "
+"Databasefout."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Ontbrekend profiel."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Het was niet mogelijk om het label op te slaan."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "U mag zich niet abonneren."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "U bent al gebonneerd!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Deze gebruiker negeert u."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Niet geabonneerd!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr "Het was niet mogelijk het abonnement op uzelf te verwijderen."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "Kon abonnement op eigen gebruiker niet verwijderen."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
msgstr ""
"Het was niet mogelijk om het OMB-token voor het abonnement te verwijderen."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Kon abonnement niet verwijderen."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Welkom bij %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Het was niet mogelijk de groep aan te maken."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Het was niet mogelijk de groeps-URI in te stellen."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Het was niet mogelijk het groepslidmaatschap in te stellen."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Het was niet mogelijk de lokale groepsinformatie op te slaan."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Uw profielgegevens wijzigen"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Avatar uploaden"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Uw wachtwoord wijzigen"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "E-mailafhandeling wijzigen"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Uw profiel ontwerpen"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Overige"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Overige instellingen"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Overige"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Naamloze pagina"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Primaire sitenavigatie"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Persoonlijk profiel en tijdlijn van vrienden"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Persoonlijk"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Uw e-mailadres, avatar, wachtwoord of profiel wijzigen"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Met andere diensten koppelen"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Koppelen"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Websiteinstellingen wijzigen"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Beheer"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Vrienden en collega's uitnodigen om u te vergezellen op %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Uitnodigingen"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Gebruiker afmelden"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Afmelden"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Gebruiker aanmaken"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registreren"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Gebruiker aanmelden"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Aanmelden"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Help me!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Help"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Naar gebruikers of tekst zoeken"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Zoeken"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Mededeling van de website"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Lokale weergaven"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Mededeling van de pagina"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Secundaire sitenavigatie"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Help"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Over"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Veel gestelde vragen"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "Gebruiksvoorwaarden"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacy"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Broncode"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contact"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Widget"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licentie van de StatusNet-software"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** is een microblogdienst van [%%site.broughtby%%](%%site."
-"broughtbyurl%%). "
+"broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** is een microblogdienst. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** is een microblogdienst."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4949,71 +5377,86 @@ msgstr ""
"versie %s, beschikbaar onder de [GNU Affero General Public License](http://"
"www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licentie voor siteinhoud"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Inhoud en gegevens van %1$s zijn persoonlijk en vertrouwelijk."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"Auteursrechten op inhoud en gegevens rusten bij %1$s. Alle rechten "
"voorbehouden."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Auteursrechten op inhoud en gegevens rusten bij de respectievelijke "
"gebruikers. Alle rechten voorbehouden."
-#: lib/action.php:847
-msgid "All "
-msgstr "Alle "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licentie."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Alle inhoud en gegevens van %1$s zijn beschikbaar onder de licentie %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginering"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Later"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Eerder"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Verwachtte een root-feed element maar kreeg een heel XML-document."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Het is nog niet mogelijk inhoud uit andere omgevingen te verwerken."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Het is nog niet mogelijk ingebedde XML-inhoud te verwerken"
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Het is nog niet mogelijk ingebedde Base64-inhoud te verwerken"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "U mag geen wijzigingen maken aan deze website."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Wijzigingen aan dat venster zijn niet toegestaan."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() is niet geïmplementeerd."
@@ -5023,155 +5466,192 @@ msgstr "showForm() is niet geïmplementeerd."
msgid "saveSettings() not implemented."
msgstr "saveSettings() is nog niet geïmplementeerd."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Het was niet mogelijk om de ontwerpinstellingen te verwijderen."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Basisinstellingen voor de website"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Website"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Instellingen vormgeving"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Uiterlijk"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Gebruikersinstellingen"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Gebruiker"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Toegangsinstellingen"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Padinstellingen"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Sessieinstellingen"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Websitebrede mededeling opslaan"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "Snapshotinstellingen"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"Het API-programma heeft lezen-en-schrijventoegang nodig, maar u hebt alleen "
"maar leestoegang."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"De API-authenticatie is mislukt. nickname = %1$s, proxy - %2$s, ip = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Applicatie bewerken"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Icoon voor deze applicatie"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Beschrijf uw applicatie in %d tekens"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Beschrijf uw applicatie"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Bron-URL"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "De URL van de homepage van deze applicatie"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Bron-URL"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organisatie verantwoordelijk voor deze applicatie"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "De URL van de homepage van de organisatie"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL om naar door te verwijzen na authenticatie"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Browser"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Desktop"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Type applicatie; browser of desktop"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Alleen-lezen"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Lezen en schrijven"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Standaardtoegang voor deze applicatie: alleen-lezen of lezen en schrijven"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Annuleren"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "lezen en schrijven"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "alleen-lezen"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Goedgekeurd op %1$s met toegang \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Intrekken"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Bijlagen"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Auteur"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Provider"
@@ -5183,45 +5663,64 @@ msgstr "Mededelingen die deze bijlage bevatten"
msgid "Tags for this attachment"
msgstr "Labels voor deze bijlage"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Wachtwoord wijzigen is mislukt"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Wachtwoord wijzigen is niet toegestaan"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Commandoresultaten"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Het commando is uitgevoerd"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Het uitvoeren van het commando is mislukt"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Dit commando is nog niet geïmplementeerd."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Er bestaat geen mededeling met dat ID"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Deze gebruiker heeft geen laatste mededeling"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "De gebruiker %s is niet aangetroffen"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "De lokale gebruiker %s is niet aangetroffen"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Dit commando is nog niet geïmplementeerd."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Het heeft niet zoveel zin om uzelf te porren..."
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "De por naar %s is verzonden"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5232,202 +5731,209 @@ msgstr ""
"Abonnees: %2$s\n"
"Mededelingen: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Er bestaat geen mededeling met dat ID"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Deze gebruiker heeft geen laatste mededeling"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "De mededeling is op de favorietenlijst geplaatst."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "U bent al lid van deze groep"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Het was niet mogelijk om de gebruiker %s toe te voegen aan de groep %s"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s is lid geworden van de groep %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "De gebruiker %s kon niet uit de groep %s verwijderd worden"
+msgid "Could not join user %1$s to group %2$s"
+msgstr ""
+"Het was niet mogelijk om de gebruiker %1$s toe te voegen aan de groep %2$s"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s heeft de groep %s verlaten"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Het was niet mogelijk gebruiker %1$s uit de group %2$s te verwijderen."
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Volledige naam: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Locatie: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Thuispagina: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Over: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s is een profiel op afstand. U kunt alle privéberichten verzenden aan "
+"gebruikers op dezelfde server."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-"Het bericht te is lang. De maximale lengte is %d tekens. De lengte van uw "
-"bericht was %d"
+"Het bericht te is lang. De maximale lengte is %1$d tekens. De lengte van uw "
+"bericht was %2$d."
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Het directe bericht aan %s is verzonden"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Er is een fout opgetreden bij het verzonden van het directe bericht."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "U kunt uw eigen mededelingen niet herhalen."
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "U hebt die mededeling al herhaald."
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "De mededeling van %s is herhaald"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Er is een fout opgetreden bij het herhalen van de mededeling."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
"De mededeling is te lang. De maximale lengte is %d tekens. Uw mededeling "
"bevatte %d tekens"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Het antwoord aan %s is verzonden"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Er is een fout opgetreden bij het opslaan van de mededeling."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Geef de naam op van de gebruiker waarop u wilt abonneren"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "De opgegeven gebruiker bestaat niet"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Abonneren op OMB-profielen op commando is niet mogelijk."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Geabonneerd op %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
"Geef de naam op van de gebruiker waarvoor u het abonnement wilt opzeggen"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Uw abonnement op %s is opgezegd"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Dit commando is nog niet geïmplementeerd."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notificaties uitgeschakeld."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Het is niet mogelijk de mededelingen uit te schakelen."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notificaties ingeschakeld."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Het is niet mogelijk de notificatie uit te schakelen."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Het aanmeldcommando is uitgeschakeld"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Deze verwijzing kan slechts één keer gebruikt worden en is twee minuten "
"geldig: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Het abonnement van %s is opgeheven"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "U bent op geen enkele gebruiker geabonneerd."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "U bent geabonneerd op deze gebruiker:"
msgstr[1] "U bent geabonneerd op deze gebruikers:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Niemand heeft een abonnenment op u."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Deze gebruiker is op u geabonneerd:"
msgstr[1] "Deze gebruikers zijn op u geabonneerd:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "U bent lid van geen enkele groep."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "U bent lid van deze groep:"
msgstr[1] "U bent lid van deze groepen:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5509,20 +6015,20 @@ msgstr ""
"tracks - nog niet beschikbaar\n"
"tracking - nog niet beschikbaar\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Er is geen instellingenbestand aangetroffen. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Er is gezocht naar instellingenbestanden op de volgende plaatsen: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
"U kunt proberen de installer uit te voeren om dit probleem op te lossen."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Naar het installatieprogramma gaan."
@@ -5696,53 +6202,54 @@ msgstr "Groepen met de meeste berichten"
msgid "Tags in %s group's notices"
msgstr "Labels in de groepsmededelingen van %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Deze pagina is niet beschikbaar in een mediatype dat u accepteert"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Niet ondersteund beeldbestandsformaat."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Dat bestand is te groot. De maximale bestandsgrootte is %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Gedeeltelijke upload."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Er is een systeemfout opgetreden tijdens het uploaden van het bestand."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Het bestand is geen afbeelding of het bestand is beschadigd."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Niet ondersteund beeldbestandsformaat."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Het bestand is zoekgeraakt."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Onbekend bestandstype"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Onbekende bron Postvak IN %d."
@@ -5763,11 +6270,13 @@ msgstr "Aanmelden met gebruikersnaam en wachtwoord"
msgid "Sign up for a new account"
msgstr "Nieuwe gebruiker aanmaken"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "E-mailadresbevestiging"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5797,12 +6306,23 @@ msgstr ""
"Dank u wel voor uw tijd.\n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s volgt nu uw berichten %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Als u denkt dat deze gebruiker wordt misbruikt, dan kunt u deze voor uw "
+"abonnees blokkeren en als spam rapporteren naar de websitebeheerders op %s."
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5827,17 +6347,20 @@ msgstr ""
"----\n"
"Wijzig uw e-mailadres of instellingen op %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Beschrijving: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nieuw e-mailadres om e-mail te versturen aan %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5858,21 +6381,31 @@ msgstr ""
"Met vriendelijke groet,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS-bevestiging"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: bevestig dat u deze telefoon bezit met deze code:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s heeft u gepord"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5900,12 +6433,14 @@ msgstr ""
"Met vriendelijke groet,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "U hebt een nieuw privébericht van %s."
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5939,12 +6474,14 @@ msgstr ""
"Met vriendelijke groet,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) heeft uw mededeling als favoriet toegevoegd"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5982,12 +6519,25 @@ msgstr ""
"Met vriendelijke groet,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Het volledige gesprek is hier te lezen:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) heeft u een mededeling gestuurd"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6000,10 +6550,23 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) heeft u een bericht gezonden (een antwoord met \"@\") op %2$s.\n"
+"%1$s (@%9$s) heeft u zojuist een mededeling gezonden (een '@-antwoord') op %2"
+"$s.\n"
"\n"
-"De mededeling staat hier:\n"
+"De mededeling is hier te vinden:\n"
"\n"
"%3$s\n"
"\n"
@@ -6011,6 +6574,18 @@ msgstr ""
"\n"
"%4$s\n"
"\n"
+"%5$sHier kunt u antwoorden:\n"
+"\n"
+"%6$s\n"
+"\n"
+"De lijst met alle @-antwoorden aan u:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Groet,\n"
+"%2$s\n"
+"\n"
+"Ps. U kunt de e-mailmeldingen hier uitschakelen: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -6024,7 +6599,7 @@ msgstr ""
"U hebt geen privéberichten. U kunt privéberichten verzenden aan andere "
"gebruikers. Mensen kunnen u privéberichten sturen die alleen u kunt lezen."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "van"
@@ -6085,24 +6660,24 @@ msgstr "Het was niet mogelijk naar schijf te schrijven."
msgid "File upload stopped by extension."
msgstr "Het uploaden van het bestand is tegengehouden door een uitbreiding."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Met dit bestand wordt het quotum van de gebruiker overschreden."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Het bestand kon niet verplaatst worden naar de doelmap."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Het was niet mogelijk het MIME-type van het bestand te bepalen."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Probeer een ander %s-formaat te gebruiken."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "Het bestandstype %s wordt door deze server niet ondersteund."
@@ -6157,48 +6732,52 @@ msgstr ""
"Het ophalen van uw geolocatie duurt langer dan verwacht. Probeer het later "
"nog eens"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "Z"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "O"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "W"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "op"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "in context"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Herhaald door"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Op deze mededeling antwoorden"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Antwoorden"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Mededeling herhaald"
@@ -6222,6 +6801,11 @@ msgstr "Er is een fout opgetreden tijdens het invoegen van een nieuw profiel"
msgid "Error inserting avatar"
msgstr "Er is een fout opgetreden bij het toevoegen van de avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+"Er is een fout opgetreden tijdens het bijwerken van het profiel op afstand."
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr ""
@@ -6268,11 +6852,11 @@ msgstr "Uw verzonden berichten"
msgid "Tags in %s's notices"
msgstr "Labels in de mededelingen van %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Onbekend"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonnementen"
@@ -6280,31 +6864,32 @@ msgstr "Abonnementen"
msgid "All subscriptions"
msgstr "Alle abonnementen"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abonnees"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Alle abonnees"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Gebruikers-ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Lid sinds"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Dagelijks gemiddelde"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Alle groepen"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Er zijn geen \"terug naar\"-parameters opgegeven."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Methode niet geïmplementeerd."
@@ -6328,11 +6913,19 @@ msgstr "Uitgelicht"
msgid "Popular"
msgstr "Populair"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Er zijn geen \"terug naar\"-parameters opgegeven."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Deze mededeling herhalen?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ja"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Deze mededeling herhalen"
@@ -6341,7 +6934,7 @@ msgstr "Deze mededeling herhalen"
msgid "Revoke the \"%s\" role from this user"
msgstr "De gebruikersrol \"%s\" voor deze gebruiker intrekken"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Er is geen gebruiker gedefinieerd voor single-usermodus."
@@ -6439,6 +7032,58 @@ msgstr "Gebruikerslabelwolk"
msgid "None"
msgstr "Geen"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Deze server kan niet overweg met uploads van vormgevingsbestanden zonder ZIP-"
+"ondersteuning."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Het vormgevingsbestand ontbreekt of is de upload mislukt."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Het opslaan van de vormgeving is mislukt."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Ongeldige vormgeving: de mappenstructuur is onjuist."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"De toegevoegde vormgeving is te groot. Deze moet uitgepakt kleiner zijn dan %"
+"d bytes."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+"Ongeldig bestand met vormgeving: het bestand css/display.css is niet aanwezig"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"De vormgeving bevat een ongeldige bestandsnaam of mapnaam. Gebruik alleen "
+"maar ASCII-letters, getallen, liggende streepjes en het minteken."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+"De vormgeving bevat een bestand van het type \".%s\". Dit is niet toegestaan."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr ""
+"Er is een fout opgetreden tijdens het openen van het archiefbestand met de "
+"vormgeving."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Meest actieve gebruikers"
@@ -6467,89 +7112,108 @@ msgstr "Uitschrijven van deze gebruiker"
msgid "Unsubscribe"
msgstr "Abonnement opheffen"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Gebruiker %s (%d) heeft geen profielrecord."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Avatar bewerken"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Gebruikershandelingen"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Bezig met het verwijderen van de gebruiker..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Profielinstellingen bewerken"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Bewerken"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Deze gebruiker een direct bericht zenden"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Bericht"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Modereren"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Gebruikersrol"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Beheerder"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "een paar seconden geleden"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "ongeveer een minuut geleden"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "ongeveer %d minuten geleden"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "ongeveer een uur geleden"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "ongeveer %d uur geleden"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "ongeveer een dag geleden"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "ongeveer %d dagen geleden"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "ongeveer een maand geleden"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "ongeveer %d maanden geleden"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "ongeveer een jaar geleden"
@@ -6563,7 +7227,7 @@ msgstr "%s is geen geldige kleur."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s is geen geldige kleur. Gebruik drie of zes hexadecimale tekens."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/nn/LC_MESSAGES/statusnet.po b/locale/nn/LC_MESSAGES/statusnet.po
index a16e15649..08b25c9e6 100644
--- a/locale/nn/LC_MESSAGES/statusnet.po
+++ b/locale/nn/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Norwegian Nynorsk
#
+# Author@translatewiki.net: Nghtwlkr
# --
# This file is distributed under the same license as the StatusNet package.
#
@@ -7,12 +8,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:30+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:48+0000\n"
"Language-Team: Norwegian Nynorsk\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: nn\n"
"X-Message-Group: out-statusnet\n"
@@ -20,7 +21,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Godta"
@@ -77,86 +78,91 @@ msgstr "Blokkér"
msgid "Save access settings"
msgstr "Avatar-innstillingar"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Lagra"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Dette emneord finst ikkje."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Brukaren finst ikkje."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s med vener, side %d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s med vener"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Straum for vener av %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Straum for vener av %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Straum for vener av %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -164,79 +170,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s med vener"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Oppdateringar frå %1$s og vener på %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Fann ikkje API-metode."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Dette krev ein POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Kan ikkje oppdatera brukar."
@@ -246,7 +254,7 @@ msgstr "Kan ikkje oppdatera brukar."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Brukaren har inga profil."
@@ -257,9 +265,9 @@ msgid "Could not save profile."
msgstr "Kan ikkje lagra profil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,48 +326,49 @@ msgstr "Direkte meldingar til %s"
msgid "All the direct messages sent to %s"
msgstr "Alle direkte meldingar sendt til %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Inga meldingstekst!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Det er for langt. Ein notis kan berre være 140 teikn."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Kunne ikkje finne mottakar."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Kan ikkje senda direktemeldingar til brukarar som du ikkje er ven med."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Fann ingen status med den ID-en."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Denne notisen er alt ein favoritt!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Kunne ikkje lagre favoritt."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "Denne notisen er ikkje ein favoritt!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Kunne ikkje slette favoritt."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Fann ikkje brukaren, so han kan ikkje fylgjast"
#: actions/apifriendshipscreate.php:118
@@ -377,8 +386,9 @@ msgstr "Fann ikkje brukaren, so han kan ikkje fylgjast"
msgid "You cannot unfollow yourself."
msgstr "Kan ikkje oppdatera brukar."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "To brukar IDer eller kallenamn er naudsynte."
#: actions/apifriendshipsshow.php:134
@@ -391,118 +401,131 @@ msgstr "Kan ikkje hente offentleg straum."
msgid "Could not find target user."
msgstr "Kan ikkje finna einkvan status."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Kallenamn må berre ha små bokstavar og nummer, ingen mellomrom."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Kallenamnet er allereie i bruk. Prøv eit anna."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ikkje eit gyldig brukarnamn."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Heimesida er ikkje ei gyldig internettadresse."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Ditt fulle namn er for langt (maksimalt 255 teikn)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "skildringa er for lang (maks 140 teikn)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Plassering er for lang (maksimalt 255 teikn)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "Ugyldig merkelapp: %s"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Kallenamnet er allereie i bruk. Prøv eit anna."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "Fann ikkje API-metode."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "Du er allereie medlem av den gruppa"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Kunne ikkje melde brukaren %s inn i gruppa %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "Du er ikkje medlem av den gruppa."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Kunne ikkje fjerne %s fra %s gruppa "
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "%s grupper"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Grupper %s er medlem av"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s grupper"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "Gruppe handlingar"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Last opp fil"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -513,17 +536,17 @@ msgid "Invalid token."
msgstr "Ugyldig storleik."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -557,12 +580,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Uventa skjemasending."
@@ -582,20 +608,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Konto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Kallenamn"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Passord"
@@ -612,11 +640,11 @@ msgstr "Alle"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Dette krev anten ein POST eller DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Du kan ikkje sletta statusen til ein annan brukar."
@@ -635,61 +663,65 @@ msgstr "Kan ikkje slå på notifikasjon."
msgid "Already repeated that notice."
msgstr "Slett denne notisen"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "Lasta opp brukarbilete."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Fann ingen status med den ID-en."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Det er for langt! Ein notis kan berre innehalde 140 teikn."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Fann ikkje"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Finst ikkje."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Støttar ikkje bileteformatet."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s / Favorittar frå %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s oppdateringar favorisert av %s / %s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Oppdateringar som svarar til %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s oppdateringar som svarar på oppdateringar frå %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s offentleg tidsline"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s oppdateringar frå alle saman!"
@@ -704,19 +736,19 @@ msgstr "Svar til %s"
msgid "Repeats of %s"
msgstr "Svar til %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notisar merka med %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Oppdateringar frå %1$s på %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Finst ikkje."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-metoden er ikkje ferdig enno."
#: actions/attachment.php:73
#, fuzzy
@@ -738,8 +770,9 @@ msgstr "Ingen storleik."
msgid "Invalid size."
msgstr "Ugyldig storleik."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Brukarbilete"
@@ -749,9 +782,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Du kan laste opp ein personleg avatar."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "Kan ikkje finne brukar"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -770,7 +804,7 @@ msgid "Preview"
msgstr "Forhandsvis"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Slett"
@@ -782,23 +816,28 @@ msgstr "Last opp"
msgid "Crop"
msgstr "Skaler"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Ingen vald profil."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Velg eit utvalg av bildet som vil blir din avatar."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Fant ikkje igjen fil data."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Lasta opp brukarbilete."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Feil ved oppdatering av brukarbilete."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "Lasta opp brukarbilete."
@@ -808,39 +847,56 @@ msgstr "Lasta opp brukarbilete."
msgid "You already blocked that user."
msgstr "Du har allereie blokkert denne brukaren."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Blokker brukaren"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Nei"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "LÃ¥s opp brukaren"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Jau"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Blokkér denne brukaren"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Lagring av informasjon feila."
@@ -853,8 +909,8 @@ msgstr "Lagring av informasjon feila."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Denne gruppa finst ikkje."
@@ -886,9 +942,10 @@ msgstr "LÃ¥s opp"
msgid "Unblock this user"
msgstr "LÃ¥s opp brukaren"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "Bilete"
#: actions/confirmaddress.php:75
@@ -903,34 +960,44 @@ msgstr "Fann ikkje stadfestingskode."
msgid "That confirmation code is not for you!"
msgstr "Den godkjenningskoden er ikkje for deg!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Ukjend adressetype %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Den addressa har alt blitt bekrefta."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Kan ikkje oppdatera brukar."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Kan ikkje sletta e-postgodkjenning."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Stadfest adresse"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Addressa \"%s\" har blitt bekrefta for din konto."
@@ -941,7 +1008,7 @@ msgid "Conversation"
msgstr "Stadfestingskode"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notisar"
@@ -963,7 +1030,7 @@ msgstr "Du er ikkje medlem av den gruppa."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Det var eit problem med sesjons billetten din."
@@ -979,23 +1046,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Kan ikkje sletta notisen."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Slett denne notisen"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ikkje logga inn"
@@ -1021,12 +1090,14 @@ msgstr "Slett notis"
msgid "Are you sure you want to delete this notice?"
msgstr "Sikker på at du vil sletta notisen?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Kan ikkje sletta notisen."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Slett denne notisen"
@@ -1051,136 +1122,156 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Slett denne notisen"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Ugyldig storleik."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Denne sida er ikkje tilgjengleg i eit"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Endra passordet ditt"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Invitér"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Endra"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Statusmelding"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
#, fuzzy
msgid "Theme for the site."
msgstr "Logg ut or sida"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Statusmelding"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Du kan lasta opp ein logo for gruppa."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "Endra passordet ditt"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
-#, fuzzy
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
-msgstr "Kopla til"
+msgstr "Innhald"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Søk"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Tekst"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "Logg inn"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Lagra"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1297,11 +1388,17 @@ msgstr "Bruk dette skjemaet for å redigere gruppa"
msgid "description is too long (max %d chars)."
msgstr "skildringa er for lang (maks 140 teikn)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ugyldig merkelapp: %s"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Kann ikkje oppdatera gruppa."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Kunne ikkje lagre favoritt."
@@ -1310,32 +1407,45 @@ msgstr "Kunne ikkje lagre favoritt."
msgid "Options saved."
msgstr "Lagra innstillingar."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Epostinnstillingar"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Styr korleis du får epost frå %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adresse"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Epostadresser"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Godkjent epostadresse."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Fjern"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1343,109 +1453,143 @@ msgstr ""
"Ventar på godkjenning. Sjekk innboksen (og søppelpostboksen) for ei melding "
"med instruksjonar."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Avbryt"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Epostadresser"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Epostadresse («brukarnamn@example.org»)"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Legg til"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Innkomande epost"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Send epost til denne addressa for å legge til nye notisar."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Vel ny epostadresse til å oppdatera med; fjerner den gamle."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "Ny"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Brukarval"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Send meg ein notis ved nye tingingar på epost."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Send meg ein epost når nokon legg til ein av mine notisar som favoritt."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Send meg ein epost når nokon sender meg ei privat melding."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Send meg ein epost når nokon sender meg ei privat melding."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Tillat vennar å sende meg ein epost."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Eg vil senda notisar med epost."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publiser ein MicroID for epost addressa mi."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Lagra brukarval."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "Synkroniserings innstillingar blei lagra."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ingen epostadresse."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Klarar ikkje normalisera epostadressa"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ikkje ei gyldig epostadresse."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Det er alt din epost addresse"
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Den epost addressa er alt registrert hos ein annan brukar."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Kan ikkje leggja til godkjenningskode."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1453,43 +1597,56 @@ msgstr ""
"Sendte godkjenningskode til epostadressa du la til. Sjekk innboksen (og "
"søppelpostboksen) for koden og veiledning på korleis du nyttar han."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ingen ventande stadfesting å avbryta."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Det er feil lynmeldings addresse."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Stadfesting avbrutt."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Det er ikkje din epost addresse."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Addressa blei fjerna."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ingen innkomande epostadresse."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Kan ikkje oppdatera brukarinformajon."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Fjerna innkomande epostadresse."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "La til ny innkomande epostadresse."
@@ -1610,8 +1767,9 @@ msgstr "Kan ikkje konvertera spyrjebillett til tilgongsbillett."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Ukjend versjon av OMB-protokollen."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Feil ved oppdatering av ekstern profil"
#: actions/getfile.php:79
@@ -1645,13 +1803,13 @@ msgstr "Brukar har blokkert deg."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ingen vald profil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Fann ingen profil med den IDen."
@@ -1675,12 +1833,12 @@ msgstr "Brukar har blokkert deg."
msgid "User is not a member of group."
msgstr "Du er ikkje medlem av den gruppa."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Blokker brukaren"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1688,17 +1846,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "Ei liste over brukarane i denne gruppa."
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "Ei liste over brukarane i denne gruppa."
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1744,11 +1904,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "Du kan lasta opp ein logo for gruppa."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Kan ikkje finne brukar"
-
#: actions/grouplogo.php:365
#, fuzzy
msgid "Pick a square area of the image to be the logo."
@@ -1780,36 +1935,40 @@ msgstr "Ei liste over brukarane i denne gruppa."
msgid "Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blokkér"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
#, fuzzy
msgid "Make user an admin of the group"
msgstr "Du må være administrator for å redigere gruppa"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
#, fuzzy
msgid "Make Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s tidsline"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Oppdateringar frå %1$s på %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupper"
@@ -1829,7 +1988,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Opprett ei ny gruppe"
@@ -1879,12 +2038,16 @@ msgstr "Brukar har blokkert deg."
msgid "Error removing the block."
msgstr "Feil ved fjerning av blokka."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Ljonmeldinginnstillingar"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1893,16 +2056,26 @@ msgstr ""
"Du kan sende og motta meldingar gjennom Jabber/GTalk [direktemeldingar](%%"
"doc.im%%). Set opp adressa og innstillingar under."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Denne sida er ikkje tilgjengleg i eit"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "Ljonmeldingadresse"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Stadfesta Jabber/Gtalk-adresse."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1911,12 +2084,9 @@ msgstr ""
"Venter på godkjenning. Sjekk din Jabber/GTalk-konto for ei melding med "
"instruksjonar (la du %s til venelista di?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "Ljonmeldingadresse"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1925,43 +2095,65 @@ msgstr ""
"Jabber- eller GTalk-adresse, døme «brukarnamn@example.org». Hugs å fyrst "
"leggja %s til venelista di i ljonmeldingsklienten din."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Brukarval"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Send meg ein notis via Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Legg til ein notis når min Jabber/GTalk status forandrar seg."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr "Send meg svar via Jabber/GTalk fra folk eg ikkje abbonnerar på."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publiser ein MicroID for Jabber/GTalk addressene mine"
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Lagra brukarval."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Nei Jabber-ID"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Klarar ikkje normalisera Jabber-IDen"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ikkje ein gyldig Jabber-ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Det er alt din Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber-ID tilhøyrer allereie ein annan brukar."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1970,10 +2162,35 @@ msgstr ""
"Sendte godkjenningskode til ljonmeldingsadressa du la til. Du må godtaka %s "
"for å senda meldinger til deg."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Det er feil lynmeldings addresse."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Kan ikkje sletta e-postgodkjenning."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Stadfesting avbrutt."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Det er ikkje din Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Addressa blei fjerna."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1993,8 +2210,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "Du må verta logga inn for å invitera andre brukarar til %s"
#: actions/invite.php:72
@@ -2014,7 +2231,9 @@ msgstr "Invitér nye brukarar"
msgid "You are already subscribed to these users:"
msgstr "Du tingar allereie oppdatering frå desse brukarane:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2067,12 +2286,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Send"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s har invitert deg til %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2133,7 +2354,9 @@ msgstr "Du må være logga inn for å bli med i ei gruppe."
msgid "No nickname or ID."
msgstr "Ingen kallenamn."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s blei medlem av gruppe %s"
@@ -2142,49 +2365,51 @@ msgstr "%s blei medlem av gruppe %s"
msgid "You must be logged in to leave a group."
msgstr "Du må være innlogga for å melde deg ut av ei gruppe."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Du er ikkje medlem av den gruppa."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s forlot %s gruppa"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Allereie logga inn."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Feil brukarnamn eller passord"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Ikkje autorisert."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Logg inn"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Logg inn "
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Hugs meg"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Logg inn automatisk i framtidi (ikkje for delte maskiner)."
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Mista eller gløymd passord?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2192,11 +2417,15 @@ msgstr ""
"Skriv inn brukarnam og passord før du endrar innstillingar (av "
"tryggleiksomsyn)."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Log inn med brukarnamn og passord."
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Logg inn med brukarnamn og passord. Har du ikkje brukarnamn endå? [Opprett](%"
"%action.register%%) ein ny konto, eller prøv [OpenID](%%action.openidlogin%"
@@ -2222,7 +2451,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Du må være administrator for å redigere gruppa"
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "Ingen status"
#: actions/newapplication.php:52
@@ -2261,12 +2491,12 @@ msgstr "Bruk dette skjemaet for å lage ein ny gruppe."
msgid "New message"
msgstr "Ny melding"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Du kan ikkje sende melding til denne brukaren."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ingen innhald."
@@ -2274,7 +2504,7 @@ msgstr "Ingen innhald."
msgid "No recipient specified."
msgstr "Ingen mottakar spesifisert."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2291,7 +2521,7 @@ msgstr "Melding"
msgid "Direct message to %s sent."
msgstr "Direkte melding til %s sendt"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax feil"
@@ -2299,7 +2529,7 @@ msgstr "Ajax feil"
msgid "New notice"
msgstr "Ny notis"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Melding lagra"
@@ -2346,8 +2576,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Alle oppdateringer frå søket «%s»"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Denne brukaren tillét ikkje å bli dytta, eller har ikkje stadfasta eller sat "
"e-postadressa si enno."
@@ -2393,11 +2624,11 @@ msgid "You are not a user of that application."
msgstr "Du er ikkje medlem av den gruppa."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2405,26 +2636,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Notisen har ingen profil"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s sin status på %2$s"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "Kopla til"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Ikkje eit støtta dataformat."
@@ -2534,7 +2770,7 @@ msgid "6 or more characters"
msgstr "6 eller fleire teikn"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Godta"
@@ -2546,11 +2782,11 @@ msgstr "Samme passord som over"
msgid "Change"
msgstr "Endra"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Passord må være minst 6 teikn."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Passorda var ikkje like."
@@ -2562,7 +2798,7 @@ msgstr "Det gamle passordet stemmer ikkje"
msgid "Error saving user; invalid."
msgstr "Feil ved lagring av brukar; fungerer ikkje."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Klarar ikkje lagra nytt passord."
@@ -2571,7 +2807,7 @@ msgid "Password saved."
msgstr "Lagra passord."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2581,23 +2817,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Denne sida er ikkje tilgjengleg i eit"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Denne sida er ikkje tilgjengleg i eit"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Denne sida er ikkje tilgjengleg i eit"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Denne sida er ikkje tilgjengleg i eit"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2609,9 +2845,8 @@ msgid "Site"
msgstr "Invitér"
#: actions/pathsadminpanel.php:238
-#, fuzzy
msgid "Server"
-msgstr "Gjenopprett"
+msgstr "Tenar"
#: actions/pathsadminpanel.php:238
msgid "Site's server hostname."
@@ -2748,18 +2983,19 @@ msgstr ""
msgid "People search"
msgstr "Søk etter folk"
-#: actions/peopletag.php:70
-#, php-format
-msgid "Not a valid people tag: %s"
+#: actions/peopletag.php:68
+#, fuzzy, php-format
+msgid "Not a valid people tag: %s."
msgstr "Ikkje gyldig merkelapp: %s"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Brukarar sjølv-merka med %s, side %d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Ugyldig notisinnhald"
#: actions/postnotice.php:101
@@ -2787,43 +3023,44 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"1-64 små bokstavar eller tal, ingen punktum (og liknande) eller mellomrom"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Fullt namn"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Heimeside"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL til heimesida di, bloggen din, eller ein profil på ei anna side."
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Skriv om deg og interessene dine med 140 teikn"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "Skildra deg sjølv og din"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Om meg"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Plassering"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Kvar er du, t.d. «By, Fylke (eller Region), Land»"
@@ -2833,7 +3070,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Merkelappar"
@@ -2866,7 +3103,7 @@ msgid ""
msgstr ""
"Automatisk ting notisane til dei som tingar mine (best for ikkje-menneskje)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "«Om meg» er for lang (maks 140 "
@@ -2908,7 +3145,7 @@ msgstr "Lagra innstillingar."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3066,7 +3303,7 @@ msgstr "Tilbakestill passord"
msgid "Recover password"
msgstr "Hent fram passord"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Passord opphenting etterspurt"
@@ -3086,19 +3323,19 @@ msgstr "Avbryt"
msgid "Enter a nickname or email address."
msgstr "Skriv inn kallenamn eller epostadresse."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Ingen brukar med den epostadressa eller det brukarnamnet."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ingen registrert epostadresse for den brukaren."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Feil med lagring av adressestadfesting."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3106,111 +3343,126 @@ msgstr ""
"Instruksjonar for å få att passordet ditt er send til epostadressa som er "
"lagra i kontoen din."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Uventa passordnullstilling."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Passord må vera 6 tekn eller meir."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Passord og stadfesting stemmer ikkje."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Feil ved å setja brukar."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Lagra det nye passordet. Du er logga inn."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Beklage, men kun inviterte kan registrere seg."
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Feil med stadfestingskode."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registreringa gikk bra"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrér"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registrering ikkje tillatt."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Du kan ikkje registrera deg om du ikkje godtek vilkåra i lisensen."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Epostadressa finst allereie."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ugyldig brukarnamn eller passord."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 små bokstavar eller tal, ingen punktum (og liknande) eller mellomrom. "
"Kravd."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 eller fleire teikn. Kravd."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Samme som passord over. PÃ¥krevd."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Epost"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Blir berre brukt for uppdateringar, viktige meldingar og for gløymde passord"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Lengre namn, fortrinnsvis ditt «ekte» namn"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Teksten og filene mine er tilgjengeleg under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
" unnateke privatdata: passord, epostadresse, ljonmeldingsadresse og "
"telefonnummer."
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3242,7 +3494,7 @@ msgstr ""
"\n"
"Takk for at du blei med, og vi håpar du vil lika tenesta!"
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3288,7 +3540,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL til profilsida di på ei anna kompatibel mikrobloggingteneste."
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Ting"
@@ -3331,7 +3583,7 @@ msgstr "Du kan ikkje registrera deg om du ikkje godtek vilkåra i lisensen."
msgid "You already repeated that notice."
msgstr "Du har allereie blokkert denne brukaren."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Lag"
@@ -3371,7 +3623,7 @@ msgstr "Notisstraum for %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3384,8 +3636,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3403,7 +3655,7 @@ msgstr "Du kan ikkje sende melding til denne brukaren."
msgid "User doesn't have this role."
msgstr "Kan ikkje finne brukar"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Lasta opp brukarbilete."
@@ -3420,7 +3672,7 @@ msgstr "Brukar har blokkert deg."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3460,28 +3712,32 @@ msgstr "Du må være innlogga for å melde deg ut av ei gruppe."
msgid "Application profile"
msgstr "Notisen har ingen profil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Kallenamn"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Paginering"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Beskriving"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistikk"
@@ -3566,16 +3822,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3592,68 +3848,68 @@ msgstr "%s gruppe"
msgid "%1$s group, page %2$d"
msgstr "%s medlemmar i gruppa, side %d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Gruppe profil"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Merknad"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Gruppe handlingar"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Notisstraum for %s gruppa"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Notisstraum for %s gruppa"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Notisstraum for %s gruppa"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Utboks for %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Medlemmar"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Ingen)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Alle medlemmar"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "Lag"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3663,7 +3919,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3674,7 +3930,7 @@ msgstr ""
"**%s** er ei brukargruppe på %%%%site.name%%%%, ei [mikroblogging](http://en."
"wikipedia.org/wiki/Micro-blogging)-teneste"
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
#, fuzzy
msgid "Admins"
msgstr "Administrator"
@@ -3751,8 +4007,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3808,11 +4064,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3907,7 +4163,7 @@ msgid "Unable to save site notice."
msgstr "Klarte ikkje å lagra Twitter-innstillingane dine!"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3924,47 +4180,77 @@ msgstr ""
msgid "Save site notice"
msgstr "Statusmelding"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "SMS innstillingar"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Du kan motta SMS-meldingar gjennom e-post frå %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Denne sida er ikkje tilgjengleg i eit"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "Ljonmeldingadresse"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Godkjent mobiltelefonnummer."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Ventar på godkjenning for dette telefonnummeret."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Stadfestingskode"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Skriv inn koden du fekk på telefonen."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Godta"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "SMS telefon nummer"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Telefonnummer, kun tall, med landskode"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Brukarval"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3972,23 +4258,34 @@ msgstr ""
"Send meg ein notis via SMS; eg forstår at dette kan føre til kostnadar fra "
"min tilbydar."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Lagra brukarval."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ingen telefonnummer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Ingen mobiloperatør vald."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Det er alt ditt telefonnummer"
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Det telefonnummeret er alt registrert hos ein annan brukar."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -3997,23 +4294,42 @@ msgstr ""
"Sende godkjenningskode til telefonnummeret du la til. Sjekk innboksen for "
"koden og veiledning på korleis du nyttar han."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Det er feil godkjennings nummer."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Stadfesting avbrutt."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Det er ikkje ditt telefonnummer"
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS telefon nummer"
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Telefontilbydar"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Velg ein tilbydar"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4022,13 +4338,14 @@ msgstr ""
"Mobiloperatøren din. Ta kontakt på %s viss du kjenner ein mobiloperatør som "
"aksepterer SMS-over-epost, men ikkje vistast her."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Ingen innskriven kode"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4050,7 +4367,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4090,8 +4407,8 @@ msgstr "Avatar-innstillingar"
msgid "You are not subscribed to that profile."
msgstr "Du tingar ikkje oppdateringar til den profilen."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Kunne ikkje lagra abonnement."
@@ -4184,11 +4501,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s høyrer no på"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4222,12 +4539,12 @@ msgstr "Manglar argumentet ID."
msgid "Tag %s"
msgstr "Merkelapp %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Brukarprofil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Bilete"
@@ -4264,10 +4581,6 @@ msgstr ""
msgid "No such tag."
msgstr "Dette emneord finst ikkje."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-metoden er ikkje ferdig enno."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4284,7 +4597,8 @@ msgid "User is not silenced."
msgstr "Brukaren har inga profil."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+#, fuzzy
+msgid "No profile ID in request."
msgstr "Ingen profil-ID i førespurnaden."
#: actions/unsubscribe.php:98
@@ -4321,7 +4635,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4386,7 +4701,7 @@ msgstr ""
"Sjekk desse detaljane og forsikre deg om at du vil abonnere på denne "
"brukaren sine notisar. Vist du ikkje har bedt om dette, klikk \"Avbryt\""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
#, fuzzy
msgid "License"
msgstr "lisens."
@@ -4492,49 +4807,55 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "%s medlemmar i gruppa, side %d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
#, fuzzy
msgid "Search for more groups"
msgstr "Søk etter folk eller innhald"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "Du er ikkje medlem av den gruppa."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Oppdateringar frå %1$s på %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Statistikk"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4542,7 +4863,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4550,102 +4871,151 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Personleg"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ugyldig filnamn."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Gruppe profil"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Kann ikkje oppdatera gruppa."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Gruppe profil"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Kann ikkje oppdatera gruppa."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Kunne ikkje lagre favoritt."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Ein feil oppstod ved sending av direkte melding."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Kunne ikkje lagre melding."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Kunne ikkje oppdatere melding med ny URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "databasefeil ved innsetjing av skigardmerkelapp (#merkelapp): %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Eit problem oppstod ved lagring av notis."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Feil ved lagring av notis. Ukjend brukar."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"For mange notisar for raskt; tek ei pause, og prøv igjen om eit par minutt."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
#, fuzzy
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
@@ -4653,238 +5023,305 @@ msgid ""
msgstr ""
"For mange notisar for raskt; tek ei pause, og prøv igjen om eit par minutt."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Du kan ikkje lengre legge inn notisar på denne sida."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Eit problem oppstod ved lagring av notis."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Eit problem oppstod ved lagring av notis."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Brukaren har inga profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Klarte ikkje å lagra Twitter-innstillingane dine!"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "Brukaren tillet deg ikkje å tinga meldingane sine."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Brukar har blokkert deg."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Ikkje tinga."
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Kan ikkje sletta tinging."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Kan ikkje sletta tinging."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Kan ikkje sletta tinging."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Melding til %1$s på %2$s"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Kunne ikkje laga gruppa."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Kunne ikkje bli med i gruppa."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Kunne ikkje bli med i gruppa."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Kunne ikkje lagra abonnement."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Endra profilinnstillingane dine"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Last opp ein avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Endra passordet ditt"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Endra eposthandtering"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Brukarprofil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Anna"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Andre val"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Anna"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Ingen tittel"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navigasjon for hovudsida"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Personleg profil og oversyn over vener"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Personleg"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Endra e-posten, avataren, passordet eller profilen"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Klarte ikkje å omdirigera til tenaren: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Kopla til"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Navigasjon for hovudsida"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "Administrator"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Inviter vennar og kollega til å bli med deg på %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Invitér"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Logg ut or sida"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Logg ut"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Opprett ny konto"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Registrér"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Logg inn or sida"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Logg inn"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hjelp meg!"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Hjelp"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Søk etter folk eller innhald"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4892,74 +5329,88 @@ msgstr "Søk"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Statusmelding"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Lokale syningar"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Sidenotis"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Andrenivås side navigasjon"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hjelp"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Om"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "OSS"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Personvern"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Kjeldekode"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
#, fuzzy
msgid "Badge"
msgstr "Dult"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNets programvarelisens"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** er ei mikrobloggingteneste av [%%site.broughtby%%](%%site."
"broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** er ei mikrobloggingteneste. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** er ei mikrobloggingteneste."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4970,70 +5421,84 @@ msgstr ""
"%s, tilgjengeleg under [GNU Affero General Public License](http://www.fsf."
"org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "StatusNets programvarelisens"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "Alle"
-
-#: lib/action.php:853
-msgid "license."
-msgstr "lisens."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginering"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "« Etter"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Før »"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "Du kan ikkje sende melding til denne brukaren."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "Registrering ikkje tillatt."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5045,167 +5510,205 @@ msgstr "Kommando ikkje implementert."
msgid "saveSettings() not implemented."
msgstr "Kommando ikkje implementert."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "Klarte ikkje å lagra Twitter-innstillingane dine!"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Stadfesting av epostadresse"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Invitér"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "SMS bekreftelse"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Personleg"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "SMS bekreftelse"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Brukar"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS bekreftelse"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS bekreftelse"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "SMS bekreftelse"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Statusmelding"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS bekreftelse"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Beskriv gruppa eller emnet med 140 teikn"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Beskriv gruppa eller emnet med 140 teikn"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Kjeldekode"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "URL til heimesida eller bloggen for gruppa eller emnet"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Kjeldekode"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "URL til heimesida eller bloggen for gruppa eller emnet"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Avbryt"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Fjern"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "Profil"
@@ -5218,47 +5721,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Endra passord"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Endra passord"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultat frå kommandoen"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Kommandoen utførd"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Kommandoen feila"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Orsak, men kommandoen er ikkje laga enno."
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Fann ingen profil med den IDen."
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Brukaren har ikkje siste notis"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Kan ikkje oppdatera brukar med stadfesta e-postadresse."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Kan ikkje oppdatera brukar med stadfesta e-postadresse."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Orsak, men kommandoen er ikkje laga enno."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Dytta!"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5266,203 +5789,207 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Fann ingen profil med den IDen."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Brukaren har ikkje siste notis"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Notis markert som favoritt."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Du er allereie medlem av den gruppa"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, fuzzy, php-format
+msgid "Could not join user %1$s to group %2$s"
msgstr "Kunne ikkje melde brukaren %s inn i gruppa %s"
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s blei medlem av gruppe %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, fuzzy, php-format
+msgid "Could not remove user %1$s from group %2$s"
msgstr "Kunne ikkje fjerne %s fra %s gruppa "
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s forlot %s gruppa"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Fullt namn: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Stad: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Heimeside: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Om: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "Melding for lang - maksimum 140 teikn, du skreiv %d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Direkte melding til %s sendt"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Ein feil oppstod ved sending av direkte melding."
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Kan ikkje slå på notifikasjon."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Slett denne notisen"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Melding lagra"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Eit problem oppstod ved lagring av notis."
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Melding for lang - maksimum 140 teikn, du skreiv %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "Svar på denne notisen"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Eit problem oppstod ved lagring av notis."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Spesifer namnet til brukaren du vil tinge"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Brukaren finst ikkje."
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Du tingar ikkje oppdateringar til den profilen."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Tingar %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Spesifer namnet til brukar du vil fjerne tinging på"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Tingar ikkje %s lengre"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Kommando ikkje implementert."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notifikasjon av."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Kan ikkje skru av notifikasjon."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notifikasjon på."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Kan ikkje slå på notifikasjon."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Tingar ikkje %s lengre"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Du tingar ikkje oppdateringar til den profilen."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Du tingar allereie oppdatering frå desse brukarane:"
msgstr[1] "Du tingar allereie oppdatering frå desse brukarane:"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Kan ikkje tinga andre til deg."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Kan ikkje tinga andre til deg."
msgstr[1] "Kan ikkje tinga andre til deg."
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Du er ikkje medlem av den gruppa."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Du er ikkje medlem av den gruppa."
msgstr[1] "Du er ikkje medlem av den gruppa."
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5504,20 +6031,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Ingen stadfestingskode."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "Logg inn or sida"
@@ -5548,9 +6075,8 @@ msgid "Database error"
msgstr ""
#: lib/designsettings.php:105
-#, fuzzy
msgid "Upload file"
-msgstr "Last opp"
+msgstr "Last opp fil"
#: lib/designsettings.php:109
#, fuzzy
@@ -5694,53 +6220,54 @@ msgstr "Grupper med flest innlegg"
msgid "Tags in %s group's notices"
msgstr "Merkelappar i %s gruppa sine notisar"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Denne sida er ikkje tilgjengeleg i nokon mediatype du aksepterer."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Støttar ikkje bileteformatet."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Du kan lasta opp ein logo for gruppa."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Hallvegs opplasta."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Systemfeil ved opplasting av fil."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Korrupt bilete."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Støttar ikkje bileteformatet."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Mista fila vår."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Ukjend fil type"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5761,11 +6288,13 @@ msgstr "Log inn med brukarnamn og passord."
msgid "Sign up for a new account"
msgstr "Opprett ny konto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Stadfesting av epostadresse"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5782,12 +6311,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s høyrer no på notisane dine på %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5808,19 +6346,22 @@ msgstr ""
"Beste helsing,\n"
"%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"Bio: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ny epostadresse for å oppdatera %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5840,21 +6381,31 @@ msgstr ""
"\n"
"Helsing frå %4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS bekreftelse"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Ventar på godkjenning for dette telefonnummeret."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Du har blitt dulta av %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5870,12 +6421,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ny privat melding fra %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5894,12 +6447,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s la til di melding som ein favoritt"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5920,12 +6475,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5938,6 +6503,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5950,7 +6527,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " frå "
@@ -6006,25 +6583,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Kan ikkje hente offentleg straum."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6080,51 +6657,55 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "Nei"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "Ingen innhald."
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Lag"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Svar på denne notisen"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Svar"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Melding lagra"
@@ -6149,6 +6730,10 @@ msgstr "Feil med å henta inn ny profil"
msgid "Error inserting avatar"
msgstr "Feil med innhenting av brukarbilete."
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Feil ved oppdatering av ekstern profil"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Feil med å henta inn ekstern profil"
@@ -6195,12 +6780,12 @@ msgstr "Dine sende meldingar"
msgid "Tags in %s's notices"
msgstr "Merkelappar i %s sine notisar"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "Uventa handling."
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Tingingar"
@@ -6208,33 +6793,33 @@ msgstr "Tingingar"
msgid "All subscriptions"
msgstr "Alle tingingar"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Tingarar"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Tingarar"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "Brukar"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Medlem sidan"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Alle gruppar"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Manglar argumentet ID."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6258,12 +6843,21 @@ msgstr "Framheva"
msgid "Popular"
msgstr "Populære"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Manglar argumentet ID."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Svar på denne notisen"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Jau"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Svar på denne notisen"
@@ -6273,7 +6867,7 @@ msgstr "Svar på denne notisen"
msgid "Revoke the \"%s\" role from this user"
msgstr "Ei liste over brukarane i denne gruppa."
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6377,6 +6971,50 @@ msgstr ""
msgid "None"
msgstr "Ingen"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Feil ved oppdatering av brukarbilete."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Feil ved oppdatering av ekstern profil"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Med flest meldingar"
@@ -6407,93 +7045,112 @@ msgstr "Fjern tinging fra denne brukaren"
msgid "Unsubscribe"
msgstr "Fjern tinging"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Brukaren har inga profil."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Brukarbilete"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Brukarverkty"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Profilinnstillingar"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Send ei direktemelding til denne brukaren"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Melding"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Brukarprofil"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "eit par sekund sidan"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "omtrent eitt minutt sidan"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "~%d minutt sidan"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "omtrent ein time sidan"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "~%d timar sidan"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "omtrent ein dag sidan"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "~%d dagar sidan"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "omtrent ein månad sidan"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "~%d månadar sidan"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "omtrent eitt år sidan"
@@ -6507,7 +7164,7 @@ msgstr "Heimesida er ikkje ei gyldig internettadresse."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Melding for lang - maksimum 140 teikn, du skreiv %d"
diff --git a/locale/pl/LC_MESSAGES/statusnet.po b/locale/pl/LC_MESSAGES/statusnet.po
index 3a0bd39c3..89da186ca 100644
--- a/locale/pl/LC_MESSAGES/statusnet.po
+++ b/locale/pl/LC_MESSAGES/statusnet.po
@@ -2,6 +2,7 @@
#
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Raven
+# Author@translatewiki.net: Sp5uhe
# --
# Paweł Wilk <siefca@gnu.org>, 2008.
# Piotr DrÄ…g <piotrdrag@gmail.com>, 2009.
@@ -10,8 +11,8 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:36+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:52+0000\n"
"Last-Translator: Piotr DrÄ…g <piotrdrag@gmail.com>\n"
"Language-Team: Polish <pl@li.org>\n"
"MIME-Version: 1.0\n"
@@ -19,14 +20,14 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
"|| n%100>=20) ? 1 : 2);\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pl\n"
"X-Message-Group: out-statusnet\n"
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Dostęp"
@@ -76,78 +77,83 @@ msgstr "Zamknięte"
msgid "Save access settings"
msgstr "Zapisz ustawienia dostępu"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Zapisz"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Nie ma takiej strony"
+msgid "No such page."
+msgstr "Nie ma takiej strony."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Brak takiego użytkownika."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s i przyjaciele, strona %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "Użytkownik %s i przyjaciele"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Kanał dla znajomych użytkownika %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Kanał dla znajomych użytkownika %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Kanał dla znajomych użytkownika %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -155,7 +161,7 @@ msgstr ""
"To jest oś czasu użytkownika %s i przyjaciół, ale nikt jeszcze nic nie "
"wysłał."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -165,83 +171,84 @@ msgstr ""
"wysłać coś samemu."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Można spróbować [szturchnąć użytkownika %1$s](../%2$s) z jego profilu lub "
-"[wysłać coś wymagającego jego uwagi](%%%%action.newnotice%%%%?"
-"status_textarea=%3$s)."
+"[wysłać mu coś](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Dlaczego nie [zarejestrujesz konta](%%%%action.register%%%%) i wtedy "
-"szturchniesz użytkownika %s lub wyślesz wpis wymagającego jego uwagi."
+"szturchniesz użytkownika %s lub wyślesz mu wpis."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Ty i przyjaciele"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Aktualizacje z %1$s i przyjaciół na %2$s."
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Nie odnaleziono metody API."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Ta metoda wymaga POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-"Należy podać parametr o nazwie \"device\" z jedną z wartości: sms, im, none"
+"Należy podać parametr o nazwie \"device\" z jedną z wartości: sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Nie można zaktualizować użytkownika."
@@ -250,7 +257,7 @@ msgstr "Nie można zaktualizować użytkownika."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Użytkownik nie posiada profilu."
@@ -260,9 +267,9 @@ msgid "Could not save profile."
msgstr "Nie można zapisać profilu."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -320,49 +327,49 @@ msgstr "Bezpośrednia wiadomość do użytkownika %s"
msgid "All the direct messages sent to %s"
msgstr "Wszystkie bezpośrednie wiadomości wysłane do użytkownika %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Brak tekstu wiadomości."
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Wiadomość jest za długa. Maksymalna długość wynosi %d znaków."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Nie odnaleziono odbiorcy."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Nie można wysłać bezpośredniej wiadomości do użytkowników, którzy nie są "
"twoimi przyjaciółmi."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Nie odnaleziono stanów z tym identyfikatorem."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Ten stan jest już ulubiony."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Nie można utworzyć ulubionego wpisu."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Ten stan nie jest ulubiony."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Nie można usunąć ulubionego wpisu."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Nie można obserwować użytkownika: nie odnaleziono użytkownika."
+msgid "Could not follow user: profile not found."
+msgstr "Nie można obserwować użytkownika: nie odnaleziono profilu."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -378,9 +385,10 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Nie można zrezygnować z obserwacji samego siebie."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Należy dostarczyć dwa identyfikatory lub nazwy użytkowników."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr ""
+"Należy dostarczyć dwa prawidłowe identyfikatory lub nazwy użytkowników."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -390,115 +398,127 @@ msgstr "Nie można określić użytkownika źródłowego."
msgid "Could not find target user."
msgstr "Nie można odnaleźć użytkownika docelowego."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Pseudonim może zawierać tylko małe litery i cyfry, bez spacji."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Pseudonim jest już używany. Spróbuj innego."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "To nie jest prawidłowy pseudonim."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Strona domowa nie jest prawidłowym adresem URL."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Imię i nazwisko jest za długie (maksymalnie 255 znaków)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Opis jest za długi (maksymalnie %d znaków)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Położenie jest za długie (maksymalnie 255 znaków)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Za dużo aliasów. Maksymalnie %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Nieprawidłowy alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Nieprawidłowy alias: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias \"%s\" jest już używany. Spróbuj innego."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias nie może być taki sam jak pseudonim."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
msgstr "Nie odnaleziono grupy."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Jesteś już członkiem tej grupy."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Zostałeś zablokowany w tej grupie przez administratora."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Nie można dołączyć użytkownika %1$s do grupy %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Nie jesteś członkiem tej grupy."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Nie można usunąć użytkownika %1$s z grupy %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Grupy użytkownika %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%2$s jest członkiem grup %1$s."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Grupy %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "grupy na %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Wysłanie nie powiodło się."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Nie podano parametru oauth_token."
@@ -508,17 +528,17 @@ msgid "Invalid token."
msgstr "Nieprawidłowy token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -550,12 +570,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Token żądania %s został odrzucony lub unieważniony."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Nieoczekiwane wysłanie formularza."
@@ -578,20 +601,22 @@ msgstr ""
"uzyskać możliwość <strong>%3$s</strong> danych konta %4$s. Dostęp do konta %4"
"$s powinien być udostępniany tylko zaufanym osobom trzecim."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Konto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Pseudonim"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Hasło"
@@ -607,11 +632,11 @@ msgstr "Zezwól"
msgid "Allow or deny access to your account information."
msgstr "Zezwól lub odmów dostęp do informacji konta."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Ta metoda wymaga POST lub DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Nie można usuwać stanów innych użytkowników."
@@ -628,59 +653,63 @@ msgstr "Nie można powtórzyć własnego wpisu."
msgid "Already repeated that notice."
msgstr "Już powtórzono ten wpis."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Usunięto stan."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Nie odnaleziono stanów z tym identyfikatorem."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Klient musi dostarczać parametr \"stan\" z wartością."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Wpis jest za długi. Maksymalna długość wynosi %d znaków."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Nie odnaleziono"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Nie odnaleziono."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "Maksymalny rozmiar wpisu wynosi %d znaków, w tym adres URL załącznika."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Nieobsługiwany format."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s/ulubione wpisy od %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "Użytkownik %1$s aktualizuje ulubione według %2$s/%2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s/aktualizacje wspominajÄ…ce %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s aktualizuje tę odpowiedź na aktualizacje od %2$s/%3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Publiczna oś czasu użytkownika %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "Użytkownik %s aktualizuje od każdego."
@@ -695,19 +724,19 @@ msgstr "Powtórzone dla %s"
msgid "Repeats of %s"
msgstr "Powtórzenia %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Wpisy ze znacznikiem %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Aktualizacje ze znacznikiem %1$s na %2$s."
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Nie odnaleziono."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Metoda API jest w trakcie tworzenia."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -728,8 +757,9 @@ msgstr "Brak rozmiaru."
msgid "Invalid size."
msgstr "Nieprawidłowy rozmiar."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Awatar"
@@ -739,10 +769,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Można wysłać osobisty awatar. Maksymalny rozmiar pliku to %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Użytkownik bez odpowiadającego profilu"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Użytkownik bez odpowiadającego profilu."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -760,7 +790,7 @@ msgid "Preview"
msgstr "PodglÄ…d"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Usuń"
@@ -772,23 +802,27 @@ msgstr "Wyślij"
msgid "Crop"
msgstr "Przytnij"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Nie wysłano pliku."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Wybierz kwadratowy obszar obrazu do awatara"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Utracono dane pliku."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Zaktualizowano awatar."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Zaktualizowanie awatara nie powiodło się."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Usunięto awatar."
@@ -796,11 +830,11 @@ msgstr "Usunięto awatar."
msgid "You already blocked that user."
msgstr "Użytkownik jest już zablokowany."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Zablokuj użytkownika"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -810,27 +844,42 @@ msgstr ""
"do ciebie zostanie usunięta, nie będzie mógł cię subskrybować w przyszłości "
"i nie będziesz powiadamiany o żadnych odpowiedziach @ od niego."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Nie"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Nie blokuj tego użytkownika"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Tak"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Zablokuj tego użytkownika"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Zapisanie informacji o blokadzie nie powiodło się."
@@ -843,8 +892,8 @@ msgstr "Zapisanie informacji o blokadzie nie powiodło się."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Nie ma takiej grupy."
@@ -874,9 +923,11 @@ msgstr "Odblokuj"
msgid "Unblock this user"
msgstr "Odblokuj tego użytkownika"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Wyślij do "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Wyślij do %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -890,33 +941,43 @@ msgstr "Nie odnaleziono kodu potwierdzajÄ…cego."
msgid "That confirmation code is not for you!"
msgstr "Ten kod potwierdzajÄ…cy nie jest przeznaczony dla ciebie."
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Nierozpoznany typ adresu %s"
+msgid "Unrecognized address type %s."
+msgstr "Nierozpoznany typ adresu %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Ten adres został już potwierdzony."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Nie można zaktualizować użytkownika."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Nie można usunąć potwierdzenia adresu e-mail."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Potwierdź adres"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Adres \"%s\" został potwierdzony dla twojego konta."
@@ -926,7 +987,7 @@ msgid "Conversation"
msgstr "Rozmowa"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Wpisy"
@@ -945,7 +1006,7 @@ msgstr "Nie jesteś właścicielem tej aplikacji."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Wystąpił problem z tokenem sesji."
@@ -962,21 +1023,23 @@ msgstr ""
"Na pewno usunąć tę aplikację? Wyczyści to wszystkie dane o aplikacji z bazy "
"danych, w tym wszystkie istniejące połączenia użytkowników."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Nie usuwaj tej aplikacji"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Usuń tę aplikację"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Niezalogowany."
@@ -1001,11 +1064,13 @@ msgstr "Usuń wpis"
msgid "Are you sure you want to delete this notice?"
msgstr "Jesteś pewien, że chcesz usunąć ten wpis?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Nie usuwaj tego wpisu"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Usuń ten wpis"
@@ -1029,125 +1094,145 @@ msgstr ""
"Na pewno usunąć tego użytkownika? Wyczyści to wszystkie dane o użytkowniku z "
"bazy danych, bez utworzenia kopii zapasowej."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Usuń tego użytkownika"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "WyglÄ…d"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Ustawienia wyglÄ…du tej witryny StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Nieprawidłowy adres URL logo."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Motyw nie jest dostępny: %s"
+msgid "Theme not available: %s."
+msgstr "Motyw nie jest dostępny: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Zmień logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo witryny"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Zmień motyw"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Motyw witryny"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Motyw witryny."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "WÅ‚asny motyw"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Można wysłać własny motyw witryny StatusNet jako archiwum zip."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Zmień obraz tła"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "TÅ‚o"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "Można wysłać obraz tła dla witryny. Maksymalny rozmiar pliku to %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "WÅ‚Ä…czone"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Wyłączone"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Włącz lub wyłącz obraz tła."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Kafelkowy obraz tła"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Zmień kolory"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Treść"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Panel boczny"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Tekst"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Odnośniki"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Zaawansowane"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "WÅ‚asny plik CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Użycie domyślnych"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Przywróć domyślny wygląd"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Przywróć domyślne ustawienia"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Zapisz"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Zapisz wyglÄ…d"
@@ -1252,11 +1337,17 @@ msgstr "Użyj tego formularza, aby zmodyfikować grupę."
msgid "description is too long (max %d chars)."
msgstr "opis jest za długi (maksymalnie %d znaków)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Nieprawidłowy alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Nie można zaktualizować grupy."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Nie można utworzyć aliasów."
@@ -1264,31 +1355,42 @@ msgstr "Nie można utworzyć aliasów."
msgid "Options saved."
msgstr "Zapisano opcje."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Ustawienia adresu e-mail"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Zarządzanie, jak otrzymywać wiadomości e-mail od %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adres"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Adres e-mail"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Obecnie potwierdzone adresy e-mail."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Usuń"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1297,106 +1399,136 @@ msgstr ""
"(także w wiadomościach niechcianych), czy otrzymałeś wiadomość z dalszymi "
"instrukcjami."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Anuluj"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Adres e-mail"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Adres e-mail, taki jak \"NazwaUżytkownika@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Dodaj"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Wiadomości przychodzące"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Wyślij wiadomość e-mail na ten adres, aby wysyłać nowe wpisy."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Używaj nowego adresu e-mail do wysyłania; anuluj poprzedni."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
-msgstr "Nowe"
+msgstr "Nowy"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferencje"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferencje e-mail"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Wyślij wpisy nowych subskrypcji przez e-mail."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Wyślij wiadomość e-mail, kiedy ktoś doda mój wpis jako ulubiony."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Wyślij wiadomość e-mail, kiedy ktoś wyśle prywatną wiadomość."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Wyślij wiadomość e-mail, kiedy ktoś wyśle odpowiedź \"@\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Pozwól przyjaciołom na szturchanie mnie i wyślij mi wiadomość e-mail."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Chcę wysyłać wpisy przez wiadomości e-mail."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Opublikuj MicroID adresu e-mail."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Zapisano preferencje."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Zapisano preferencje e-mail."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Brak adresu e-mail."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Nie można znormalizować tego adresu e-mail"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "To nie jest prawidłowy adres e-mail."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Ten adres e-mail jest już twój."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Ten adres e-mail należy już do innego użytkownika."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Nie można wprowadzić kodu potwierdzającego."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1405,43 +1537,53 @@ msgstr ""
"skrzynce odbiorczej (także w wiadomościach niechcianych), czy otrzymałeś kod "
"i instrukcje dotyczące jego użycia."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Brak oczekujących potwierdzeń do anulowania."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "To jest błędny adres komunikatora."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "To jest błędny adres e-mail."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Anulowano potwierdzenie."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Anulowano potwierdzenie e-mail."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "To nie jest twój adres e-mail."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Adres został usunięty."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "Adres e-mail został usunięty."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Brak przychodzÄ…cego adresu e-mail."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Nie można zaktualizować wpisu użytkownika."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Usunięto przychodzący adres e-mail."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Dodano nowy przychodzÄ…cy adres e-mail."
@@ -1560,9 +1702,9 @@ msgstr "Nie można przekonwertować tokenów żądań na tokeny dostępu."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Zdalna usługa używa nieznanej wersji protokołu OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "BÅ‚Ä…d podczas aktualizowania zdalnego profilu"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "BÅ‚Ä…d podczas aktualizowania zdalnego profilu."
#: actions/getfile.php:79
msgid "No such file."
@@ -1590,13 +1732,13 @@ msgstr "Użytkownik ma już tę rolę."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Nie podano profilu."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Brak profilu o tym identyfikatorze."
@@ -1617,11 +1759,11 @@ msgstr "Użytkownik został już zablokował w grupie."
msgid "User is not a member of group."
msgstr "Użytkownik nie jest członkiem grupy."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Zablokuj użytkownika w grupie"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1632,15 +1774,17 @@ msgstr ""
"Zostanie usunięty z grupy, nie będzie mógł wysyłać wpisów i subskrybować "
"grupy w przyszłości."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Nie blokuj tego użytkownika w tej grupie"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Zablokuj tego użytkownika w tej grupie"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Błąd bazy danych podczas blokowania użytkownika w grupie."
@@ -1681,10 +1825,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "Można wysłać obraz logo grupy. Maksymalny rozmiar pliku to %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Użytkownik bez odpowiadającego profilu."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Wybierz kwadratowy obszar obrazu, który będzie logo."
@@ -1715,34 +1855,38 @@ msgstr "Lista użytkowników znajdujących się w tej grupie."
msgid "Admin"
msgstr "Administrator"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Zablokuj"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Uczyń użytkownika administratorem grupy"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Uczyń administratorem"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Uczyń tego użytkownika administratorem"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Oś czasu użytkownika %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Aktualizacje od członków %1$s na %2$s."
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupy"
@@ -1767,7 +1911,7 @@ msgstr ""
"która cię interesuje? Spróbuj ją [znaleźć](%%%%action.groupsearch%%%%) lub "
"[założyć własną.](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Utwórz nową grupę"
@@ -1819,11 +1963,15 @@ msgstr "Użytkownik nie został zablokowany w grupie."
msgid "Error removing the block."
msgstr "BÅ‚Ä…d podczas usuwania blokady."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Ustawienia komunikatora"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1832,15 +1980,24 @@ msgstr ""
"Można wysyłać i odbierać wpisy przez [komunikator](%%doc.im%%) Jabber/GTalk. "
"Skonfiguruj adres i ustawienia poniżej."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "Komunikator nie jest dostępny."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Adres komunikatora"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Obecnie potwierdzone adresy Jabber/GTalk."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1850,11 +2007,9 @@ msgstr ""
"czy otrzymałeś wiadomość z dalszymi instrukcjami (dodałeś %s do listy "
"znajomych?)."
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Adres komunikatora"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1863,44 +2018,65 @@ msgstr ""
"Adres Jabber lub GTalk, taki jak \"NazwaUżytkownika@example.org\". Najpierw "
"upewnij się, że dodałeś %s do listy znajomych w komunikatorze lub na GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferencje komunikatora"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Wyślij mi wpisy przez Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Wyślij wpis, kiedy zmieni się mój stan na Jabber/GTalk."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Wyślij mi odpowiedzi przez Jabber/GTalk od osób, których nie subskrybuję."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Opublikuj MicroID adresu Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Zapisano preferencje."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Brak identyfikatora Jabbera."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Nie można znormalizować tego identyfikatora Jabbera"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "To nie jest prawidłowy identyfikator Jabbera"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Ten identyfikator Jabbera jest już twój."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Identyfikator Jabbera należy już do innego użytkownika."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1909,10 +2085,32 @@ msgstr ""
"Kod potwierdzający został wysłany na dodany adres komunikatora. Należy "
"zaakceptować otrzymywanie wiadomości od %s."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "To jest błędny adres komunikatora."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Nie można usunąć potwierdzenia komunikatora."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Anulowano potwierdzenie komunikatora."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "To nie jest twój identyfikator Jabbera."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Adres komunikatora został usunięty."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1934,9 +2132,9 @@ msgstr "Zaproszenia zostały wyłączone."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Należy być zalogowanym, aby zapraszać innych użytkowników do używania %s"
+"Należy być zalogowanym, aby zapraszać innych użytkowników do używania %s."
#: actions/invite.php:72
#, php-format
@@ -1955,7 +2153,9 @@ msgstr "Zaproś nowych użytkowników"
msgid "You are already subscribed to these users:"
msgstr "Jesteś już subskrybowany do tych użytkowników:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2007,12 +2207,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Wyślij"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s zapraszają cię, abyś dołączył do nich w %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2077,7 +2279,9 @@ msgstr "Musisz być zalogowany, aby dołączyć do grupy."
msgid "No nickname or ID."
msgstr "Brak pseudonimu lub identyfikatora."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "Użytkownik %1$s dołączył do grupy %2$s"
@@ -2086,50 +2290,52 @@ msgstr "Użytkownik %1$s dołączył do grupy %2$s"
msgid "You must be logged in to leave a group."
msgstr "Musisz być zalogowany, aby opuścić grupę."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Nie jesteś członkiem tej grupy."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "Użytkownik %1$s opuścił grupę %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Jesteś już zalogowany."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Niepoprawna nazwa użytkownika lub hasło."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Błąd podczas ustawiania użytkownika. Prawdopodobnie brak upoważnienia."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Zaloguj siÄ™"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Zaloguj siÄ™ na witrynie"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Zapamiętaj mnie"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Automatyczne logowanie. Nie należy używać na komputerach używanych przez "
"wiele osób."
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Zgubione lub zapomniane hasło?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2137,14 +2343,17 @@ msgstr ""
"Z powodów bezpieczeństwa ponownie podaj nazwę użytkownika i hasło przed "
"zmienianiem ustawień."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Logowanie za pomocą nazwy użytkownika i hasła."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Zaloguj się za pomocą nazwy użytkownika i hasła. Nie masz ich jeszcze? "
-"[Zarejestruj](%%action.register%%) nowe konto."
+"Nie masz jeszcze nazwy użytkownika? [Zarejestruj](%%action.register%%) nowe "
+"konto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2166,8 +2375,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Nie można uczynić %1$s administratorem grupy %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Brak obecnego stanu"
+msgid "No current status."
+msgstr "Brak obecnego stanu."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2201,12 +2410,12 @@ msgstr "Użyj tego formularza, aby utworzyć nową grupę."
msgid "New message"
msgstr "Nowa wiadomość"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Nie można wysłać wiadomości do tego użytkownika."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Brak treści."
@@ -2214,7 +2423,7 @@ msgstr "Brak treści."
msgid "No recipient specified."
msgstr "Nie podano odbiorcy."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Nie wysyłaj wiadomości do siebie, po prostu powiedz to sobie po cichu."
@@ -2228,7 +2437,7 @@ msgstr "Wysłano wiadomość"
msgid "Direct message to %s sent."
msgstr "Wysłano bezpośrednią wiadomość do użytkownika %s."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "BÅ‚Ä…d AJAX"
@@ -2236,7 +2445,7 @@ msgstr "BÅ‚Ä…d AJAX"
msgid "New notice"
msgstr "Nowy wpis"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Wysłano wpis"
@@ -2289,7 +2498,7 @@ msgstr "Aktualizacje pasujÄ…ce do wyszukiwanego terminu \"%1$s\" na %2$s."
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Ten użytkownik nie pozwala na szturchnięcia albo nie potwierdził lub nie "
"ustawił jeszcze swojego adresu e-mail."
@@ -2332,11 +2541,11 @@ msgid "You are not a user of that application."
msgstr "Nie jesteś użytkownikiem tej aplikacji."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Nie można unieważnić dostępu dla aplikacji: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Nie można unieważnić dostępu dla aplikacji: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Nie upoważniono żadnych aplikacji do używania konta."
@@ -2344,25 +2553,30 @@ msgstr "Nie upoważniono żadnych aplikacji do używania konta."
msgid "Developers can edit the registration settings for their applications "
msgstr "Programiści mogą zmodyfikować ustawienia rejestracji swoich aplikacji "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Wpis nie posiada profilu"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Wpis nie posiada profilu."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Stan użytkownika %1$s na %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "typ zawartości "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Typ zawartości %s jest nieobsługiwany."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Tylko "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Dozwolone są tylko adresy URL %s przez zwykły protokół HTTP."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "To nie jest obsługiwany format danych."
@@ -2465,7 +2679,7 @@ msgid "6 or more characters"
msgstr "6 lub więcej znaków"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Potwierdź"
@@ -2477,11 +2691,11 @@ msgstr "Takie samo jak powyższe hasło"
msgid "Change"
msgstr "Zmień"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Hasło musi mieć sześć lub więcej znaków."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Hasła nie pasują do siebie."
@@ -2493,7 +2707,7 @@ msgstr "Niepoprawne poprzednie hasło"
msgid "Error saving user; invalid."
msgstr "Błąd podczas zapisywania użytkownika; nieprawidłowy."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Nie można zapisać nowego hasła."
@@ -2502,7 +2716,7 @@ msgid "Password saved."
msgstr "Zapisano hasło."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Ścieżki"
@@ -2512,23 +2726,23 @@ msgstr "Ustawienia ścieżki i serwera dla tej witryny StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Katalog motywu jest nieczytelny: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Nie można odczytać katalogu motywu: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Katalog awatara jest niezapisywalny: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Nie można zapisywać w katalogu awatarów: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Katalog tła jest niezapisywalny: %s"
+msgid "Background directory not writable: %s."
+msgstr "Nie można zapisywać w katalogu teł: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Katalog lokalizacji jest nieczytelny: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Nie można odczytać katalogu lokalizacji: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2670,19 +2884,19 @@ msgstr ""
msgid "People search"
msgstr "Wyszukiwanie osób"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Nieprawidłowy znacznik osób: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Nieprawidłowy znacznik osób: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Użytkownicy używający znacznika %1$s - strona %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Nieprawidłowa zawartość wpisu"
+msgid "Invalid notice content."
+msgstr "Nieprawidłowa treść wpisu."
#: actions/postnotice.php:101
#, php-format
@@ -2708,42 +2922,43 @@ msgstr "Informacje o profilu"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 małe litery lub liczby, bez spacji i znaków przestankowych"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "ImiÄ™ i nazwisko"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Strona domowa"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "Adres URL strony domowej, bloga lub profilu na innej witrynie"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Opisz siÄ™ i swoje zainteresowania w %d znakach"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Opisz siÄ™ i swoje zainteresowania"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "O mnie"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Położenie"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Gdzie jesteś, np. \"miasto, województwo (lub region), kraj\""
@@ -2753,7 +2968,7 @@ msgstr "Podziel się swoim obecnym położeniem podczas wysyłania wpisów"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Znaczniki"
@@ -2786,7 +3001,7 @@ msgid ""
msgstr ""
"Automatycznie subskrybuj każdego, kto mnie subskrybuje (najlepsze dla botów)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Wpis \"O mnie\" jest za długi (maksymalnie %d znaków)."
@@ -2827,8 +3042,8 @@ msgstr "Zapisano ustawienia."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Poza ograniczeniem strony (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Poza ograniczeniem strony (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2995,7 +3210,7 @@ msgstr "Przywróć hasło"
msgid "Recover password"
msgstr "Przywróć hasło"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Zażądano przywracania hasła"
@@ -3015,19 +3230,19 @@ msgstr "Przywróć"
msgid "Enter a nickname or email address."
msgstr "Podaj pseudonim lub adres e-mail."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Brak użytkownika z tym adresem e-mail lub nazwą użytkownika."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Brak zarejestrowanych adresów e-mail dla tego użytkownika."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "BÅ‚Ä…d podczas zapisywania potwierdzenia adresu."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3035,110 +3250,126 @@ msgstr ""
"Instrukcje przywracania hasła zostały wysłane na adres e-mail zarejestrowany "
"z twoim kontem."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Nieoczekiwane przywrócenie hasła."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Hasło musi mieć sześć lub więcej znaków."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Hasło i potwierdzenie nie pasują do siebie."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Błąd podczas ustawiania użytkownika."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Pomyślnie zapisano nowe hasło. Jesteś teraz zalogowany."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Tylko zaproszone osoby mogą się rejestrować."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Nieprawidłowy kod zaproszenia."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Rejestracja powiodła się"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Zarejestruj siÄ™"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Rejestracja nie jest dozwolona."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
"Nie można się zarejestrować, jeśli nie zgadzasz się z warunkami licencji."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Adres e-mail już istnieje."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Nieprawidłowa nazwa użytkownika lub hasło."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Za pomocą tego formularza można utworzyć nowe konto. Można wtedy wysyłać "
"wpisy i połączyć się z przyjaciółmi i kolegami. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 małe litery lub liczby, bez spacji i znaków przestankowych. Wymagane."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 lub więcej znaków. Wymagane."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Takie samo jak powyższe hasło. Wymagane."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Używane tylko do aktualizacji, ogłoszeń i przywracania hasła"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Dłuższa nazwa, najlepiej twoje \"prawdziwe\" imię i nazwisko"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Moje teksty i pliki są dostępne na "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "Rozumiem, że treść i dane %1$s są prywatne i poufne."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Moje teksty i pliki są objęte prawami autorskimi %1$s."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Uznanie autorstwa 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Moje teksty i pliki pozostajÄ… pod moimi prawami autorskimi."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Wszystkie prawa zastrzeżone."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" poza tymi prywatnymi danymi: hasło, adres e-mail, adres komunikatora i "
-"numer telefonu."
+"Tekst i pliki są dostępne na warunkach licencji %s, poza tymi prywatnymi "
+"danymi: hasło, adres e-mail, adres komunikatora i numer telefonu."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3171,7 +3402,7 @@ msgstr ""
"Dziękujemy za zarejestrowanie się i mamy nadzieję, że używanie tej usługi "
"sprawi ci przyjemność."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3216,7 +3447,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "Adres URL profilu na innej, zgodnej usłudze mikroblogowania"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Subskrybuj"
@@ -3254,7 +3485,7 @@ msgstr "Nie można powtórzyć własnego wpisu."
msgid "You already repeated that notice."
msgstr "Już powtórzono ten wpis."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Powtórzono"
@@ -3292,10 +3523,10 @@ msgstr "Kanał odpowiedzi dla użytkownika %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"To jest oś czasu wyświetlająca odpowiedzi na wpisy użytkownika %1$s, ale %2"
-"$s nie otrzymał jeszcze wpisów wymagających jego uwagi."
+"$s nie otrzymał jeszcze wpisów."
#: actions/replies.php:204
#, php-format
@@ -3309,11 +3540,11 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Można spróbować [szturchnąć użytkownika %1$s](../%2$s) lub [wysłać coś "
-"wymagajÄ…cego jego uwagi](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"Można spróbować [szturchnąć użytkownika %1$s](../%2$s) lub [wysłać mu coś](%%"
+"%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3328,7 +3559,7 @@ msgstr "Nie można unieważnić rol użytkowników na tej witrynie."
msgid "User doesn't have this role."
msgstr "Użytkownik nie ma tej roli."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3342,7 +3573,7 @@ msgstr "Użytkownik jest już ograniczony."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sesje"
@@ -3379,26 +3610,30 @@ msgstr "Musisz być zalogowany, aby wyświetlić aplikację."
msgid "Application profile"
msgstr "Profil aplikacji"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Ikona"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nazwa"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organizacja"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Opis"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statystyki"
@@ -3487,8 +3722,8 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"Użytkownik %s nie dodał jeszcze żadnych wpisów do ulubionych. Wyślij coś "
"interesującego, aby chcieli dodać to do swoich ulubionych. :)"
@@ -3496,9 +3731,9 @@ msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"Użytkownik %s nie dodał jeszcze żadnych wpisów do ulubionych. Dlaczego nie "
"[zarejestrujesz konta](%%%%action.register%%%%) i wyślesz coś "
@@ -3518,67 +3753,67 @@ msgstr "Grupa %s"
msgid "%1$s group, page %2$d"
msgstr "Grupa %1$s, strona %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Profil grupy"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "Adres URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Wpis"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Aliasy"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Działania grupy"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Kanał wpisów dla grupy %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Kanał wpisów dla grupy %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Kanał wpisów dla grupy %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF dla grupy %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Członkowie"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Brak)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Wszyscy członkowie"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Utworzono"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3594,7 +3829,7 @@ msgstr ""
"action.register%%%%), aby stać się częścią tej grupy i wiele więcej. "
"([Przeczytaj więcej](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3607,7 +3842,7 @@ msgstr ""
"narzędziu [StatusNet](http://status.net/). Jej członkowie dzielą się "
"krótkimi wiadomościami o swoim życiu i zainteresowaniach. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administratorzy"
@@ -3685,11 +3920,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Można spróbować szturchnąć użytkownika %1$s lub [wysłać coś, co wymaga jego "
-"uwagi](%%%%action.newnotice%%%%?status_textarea=%2$s)."
+"Można spróbować szturchnąć użytkownika %1$s lub [wysłać mu coś](%%%%action."
+"newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3747,11 +3982,11 @@ msgid "Unknown language \"%s\"."
msgstr "Nieznany język \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Maksymalne ograniczenie tekstu to 14 znaków."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Minimalne ograniczenie tekstu to 0 (bez ograniczenia)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "Ograniczenie duplikatów musi wynosić jedną lub więcej sekund."
#: actions/siteadminpanel.php:221
@@ -3843,8 +4078,8 @@ msgid "Unable to save site notice."
msgstr "Nie można zapisać wpisu witryny."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "Maksymalna długość wpisu witryny to 255 znaków"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Maksymalna długość wpisu witryny to 255 znaków."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3859,44 +4094,71 @@ msgstr ""
msgid "Save site notice"
msgstr "Zapisz wpis witryny"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Ustawienia SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Można otrzymywać wiadomości SMS przez e-mail od %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Wiadomości SMS nie są dostępne."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Adres SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Obecnie potwierdzone numery telefonów z włączoną usługą SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Oczekiwanie na potwierdzenie tego numeru telefonu."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Kod potwierdzajÄ…cy"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Podaj kod, który otrzymałeś na telefonie."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Potwierdź"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Numer telefonu SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Numer telefonu, bez znaków przestankowych i spacji, z kodem państwa"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferencje SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3904,23 +4166,33 @@ msgstr ""
"Wyślij mi wpisy przez SMS. Rozumiem, że mogę otrzymywać większe rachunki od "
"swojego operatora."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Zapisano preferencje SMS."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Brak numeru telefonu."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Nie wybrano operatora."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Ten numer telefonu jest już twój."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Ten numer telefonu należy już do innego użytkownika."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3928,23 +4200,40 @@ msgstr ""
"Kod potwierdzający został wysłany na dodany numer telefonu. Sprawdź telefon, "
"czy otrzymałeś kod i instrukcje jak go użyć."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "To jest błędny numer potwierdzenia."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Anulowano potwierdzenie SMS."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "To nie jest twój numer telefonu."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Numer telefonu SMS został usunięty."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operator komórkowy"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Wybierz operatora"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3954,13 +4243,14 @@ msgstr ""
"wiadomości SMS przez e-mail, a nie znajduje się na liście, wyślij wiadomość "
"e-mail na %s (w języku angielskim), aby nam o tym powiedzieć."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Nie podano kodu"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Migawki"
@@ -3981,7 +4271,7 @@ msgid "Invalid snapshot report URL."
msgstr "Nieprawidłowy adres URL zgłaszania migawek."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Losowo podczas trafienia WWW"
#: actions/snapshotadminpanel.php:201
@@ -4020,8 +4310,8 @@ msgstr "Zapisz ustawienia migawki"
msgid "You are not subscribed to that profile."
msgstr "Nie jesteÅ› subskrybowany do tego profilu."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Nie można zapisać subskrypcji."
@@ -4124,11 +4414,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "Użytkownik %s nie obserwuje nikogo."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4161,12 +4451,12 @@ msgstr "Brak parametru identyfikatora."
msgid "Tag %s"
msgstr "Znacznik %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Profil użytkownika"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Zdjęcie"
@@ -4202,10 +4492,6 @@ msgstr ""
msgid "No such tag."
msgstr "Nie ma takiego znacznika."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Metoda API jest w trakcie tworzenia."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Ten użytkownik nie został zablokowany."
@@ -4219,7 +4505,7 @@ msgid "User is not silenced."
msgstr "Użytkownik nie jest wyciszony."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Brak identyfikatora profilu w żądaniu."
#: actions/unsubscribe.php:98
@@ -4257,7 +4543,8 @@ msgstr "Nieprawidłowy tekst powitania. Maksymalna długość to 255 znaków."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Nieprawidłowa domyślna subskrypcja: \"%1$s\" nie jest użytkownikiem."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4316,7 +4603,7 @@ msgstr ""
"wpisy tego użytkownika. Jeżeli nie prosiłeś o subskrypcję czyichś wpisów, "
"naciśnij \"Odrzuć\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licencja"
@@ -4417,37 +4704,43 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Smacznego hot-doga."
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Grupy użytkownika %1$s, strona %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Wyszukaj więcej grup"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "Użytkownik %s nie jest członkiem żadnej grupy."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "Spróbuj [wyszukać grupy](%%action.groupsearch%%) i dołączyć do nich."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Aktualizacje z %1$s na %2$s."
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4456,11 +4749,11 @@ msgstr ""
"Ta witryna korzysta z oprogramowania %1$s w wersji %2$s, Copyright 2008-2010 "
"StatusNet, Inc. i współtwórcy."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Współtwórcy"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4472,7 +4765,7 @@ msgstr ""
"wydanej przez FundacjÄ™ Wolnego Oprogramowania (Free Software Foundation) - "
"według wersji trzeciej tej Licencji lub którejś z późniejszych wersji. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4485,7 +4778,7 @@ msgstr ""
"bliższych informacji należy zapoznać się z Powszechną Licencją Publiczną "
"Affero GNU. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4495,94 +4788,143 @@ msgstr ""
"Powszechnej Licencji Publicznej Affero GNU (GNU Affero General Public "
"License); jeśli nie - proszę odwiedzić stronę internetową %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Wtyczki"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Wersja"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autorzy"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Nie można przetworzyć adresu URL \"%s\""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin sądzi, że coś jest niemożliwe."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Żaden plik nie może być większy niż %d bajty, a wysłany plik miał %d bajty. "
-"Spróbuj wysłać mniejszą wersję."
+"Żaden plik nie może być większy niż %1$d bajty, a wysłany plik miał %2$d "
+"bajty. Proszę spróbować wysłać mniejszą wersję."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"Plik tej wielkości przekroczyłby przydział użytkownika wynoszący %d bajty."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
"Plik tej wielkości przekroczyłby miesięczny przydział użytkownika wynoszący %"
"d bajty."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nieprawidłowa nazwa pliku."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Dołączenie do grupy nie powiodło się."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Nie jest częścią grupy."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Opuszczenie grupy nie powiodło się."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Nie można zaktualizować lokalnej grupy."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Nie można utworzyć tokenów loginów dla %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Nigdzie nie odnaleziono nazwy lub DSN bazy danych."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Zablokowano wysyłanie bezpośrednich wiadomości."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Nie można wprowadzić wiadomości."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Nie można zaktualizować wiadomości za pomocą nowego adresu URL."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Brak profilu (%1$d) dla wpisu (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "BÅ‚Ä…d bazy danych podczas wprowadzania znacznika mieszania: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problem podczas zapisywania wpisu. Za długi."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problem podczas zapisywania wpisu. Nieznany użytkownik."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Za dużo wpisów w za krótkim czasie, weź głęboki oddech i wyślij ponownie za "
"kilka minut."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4590,287 +4932,366 @@ msgstr ""
"Za dużo takich samych wiadomości w za krótkim czasie, weź głęboki oddech i "
"wyślij ponownie za kilka minut."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Zabroniono ci wysyłania wpisów na tej witrynie."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problem podczas zapisywania wpisu."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Podano błędne dane do saveKnownGroups"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problem podczas zapisywania skrzynki odbiorczej grupy."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr "Nie można unieważnić roli \"\"%1$s\" użytkownika #%2$d; nie istnieje."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Nie można unieważnić roli \"%1$s\" użytkownika #%2$d; błąd bazy danych."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Brak profilu."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Nie można zapisać etykiety."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Zablokowano subskrybowanie."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Już subskrybowane."
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Użytkownik zablokował cię."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Niesubskrybowane."
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Nie można usunąć autosubskrypcji."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
msgstr "Nie można usunąć tokenu subskrypcji OMB."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Nie można usunąć subskrypcji."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Witaj w %1$s, @%2$s."
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Nie można utworzyć grupy."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Nie można ustawić adresu URI grupy."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Nie można ustawić członkostwa w grupie."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Nie można zapisać informacji o lokalnej grupie."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Zmień ustawienia profilu"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Wyślij awatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Zmień hasło"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Zmień obsługę adresu e-mail"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "WyglÄ…d profilu"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Inne"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Inne opcje"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Inne"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Strona bez nazwy"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Główna nawigacja witryny"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Profil osobisty i oś czasu przyjaciół"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Osobiste"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Zmień adres e-mail, awatar, hasło, profil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Połącz z serwisami"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Połącz"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Zmień konfigurację witryny"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administrator"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Zaproś przyjaciół i kolegów do dołączenia do ciebie na %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "ZaproÅ›"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Wyloguj siÄ™ z witryny"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Wyloguj siÄ™"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Utwórz konto"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Zarejestruj siÄ™"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Zaloguj siÄ™ na witrynie"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Zaloguj siÄ™"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Pomóż mi."
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Pomoc"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Wyszukaj osoby lub tekst"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Wyszukaj"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Wpis witryny"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Lokalne widoki"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Wpis strony"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Druga nawigacja witryny"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Pomoc"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "O usłudze"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "TOS"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Prywatność"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Kod źródłowy"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Odznaka"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licencja oprogramowania StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** jest usługą mikroblogowania prowadzoną przez [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** jest usługą mikroblogowania. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** jest usługą mikroblogowania."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4881,71 +5302,87 @@ msgstr ""
"status.net/) w wersji %s, dostępnego na [Powszechnej Licencji Publicznej GNU "
"Affero](http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licencja zawartości witryny"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Treść i dane %1$s są prywatne i poufne."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"Prawa autorskie do treści i danych są własnością %1$s. Wszystkie prawa "
"zastrzeżone."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Prawa autorskie do treści i danych są własnością współtwórców. Wszystkie "
"prawa zastrzeżone."
-#: lib/action.php:847
-msgid "All "
-msgstr "Wszystko "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licencja."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Wszystkie treści i dane na stronie %1$s są dostępne na warunkach licencji %2"
+"$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginacja"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Później"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Wcześniej"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Oczekiwano elementu kanału roota, ale otrzymano cały dokument XML."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Nie można jeszcze obsługiwać zdalnej treści."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Nie można jeszcze obsługiwać zagnieżdżonej treści XML."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Nie można jeszcze obsługiwać zagnieżdżonej treści Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Nie można wprowadzić zmian witryny."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Zmiany w tym panelu nie sÄ… dozwolone."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() nie jest zaimplementowane."
@@ -4955,156 +5392,192 @@ msgstr "showForm() nie jest zaimplementowane."
msgid "saveSettings() not implemented."
msgstr "saveSettings() nie jest zaimplementowane."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Nie można usunąć ustawienia wyglądu."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Podstawowa konfiguracja witryny"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Witryna"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Konfiguracja wyglÄ…du"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "WyglÄ…d"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Konfiguracja użytkownika"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Użytkownik"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Konfiguracja dostępu"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Konfiguracja ścieżek"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Konfiguracja sesji"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Zmodyfikuj wpis witryny"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "Konfiguracja migawek"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"Zasób API wymaga dostępu do zapisu i do odczytu, ale powiadasz dostęp tylko "
"do odczytu."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"Próba uwierzytelnienia API nie powiodła się, pseudonim = %1$s, pośrednik = %2"
-"$s, IP = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Zmodyfikuj aplikacjÄ™"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Ikona tej aplikacji"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Opisz aplikacjÄ™ w %d znakach"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Opisz aplikacjÄ™"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "Źródłowy adres URL"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "Adres URL strony domowej tej aplikacji"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "Źródłowy adres URL"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organizacja odpowiedzialna za tÄ™ aplikacjÄ™"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "Adres URL strony domowej organizacji"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "Adres URL do przekierowania po uwierzytelnieniu"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "PrzeglÄ…darka"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Pulpit"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Typ aplikacji, przeglÄ…darka lub pulpit"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Tylko do odczytu"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Odczyt i zapis"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Domyślny dostęp do tej aplikacji: tylko do odczytu lub do odczytu i zapisu"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Anuluj"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "odczyt i zapis"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "tylko do odczytu"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Zaakceptowano %1$s - dostęp \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Unieważnij"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Załączniki"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Dostawca"
@@ -5116,45 +5589,64 @@ msgstr "Powiadamia, kiedy pojawia się ten załącznik"
msgid "Tags for this attachment"
msgstr "Znaczniki dla tego załącznika"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Zmiana hasła nie powiodła się"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Zmiana hasła nie jest dozwolona"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Wyniki polecenia"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Zakończono polecenie"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Polecenie nie powiodło się"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Te polecenie nie zostało jeszcze zaimplementowane."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Wpis z tym identyfikatorem nie istnieje."
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Użytkownik nie posiada ostatniego wpisu."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Nie można odnaleźć użytkownika z pseudonimem %s."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Nie można odnaleźć lokalnego użytkownika z pseudonimem %s."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Te polecenie nie zostało jeszcze zaimplementowane."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Szturchanie samego siebie nie ma zbyt wiele sensu."
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Wysłano szturchnięcie do użytkownika %s."
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5165,200 +5657,206 @@ msgstr ""
"Subskrybenci: %2$s\n"
"Wpisy: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Wpis z tym identyfikatorem nie istnieje."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Użytkownik nie posiada ostatniego wpisu."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Zaznaczono wpis jako ulubiony."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Jesteś już członkiem tej grupy."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Nie można dołączyć użytkownika %1$s do grupy %2$s."
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s joined group %s"
-msgstr "Użytkownik %1$s dołączył do grupy %2$s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Nie można usunąć użytkownika %1$s z grupy %2$s"
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Nie można usunąć użytkownika %1$s z grupy %2$s."
-
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "Użytkownik %1$s opuścił grupę %2$s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "ImiÄ™ i nazwisko: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Położenie: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Strona domowa: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "O mnie: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Wiadomość jest za długa - maksymalnie %1$d znaków, wysłano %2$d."
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s to zdalny profil; można wysyłać bezpośrednie wiadomości tylko do "
+"użytkowników na tym samym serwerze."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Wiadomość jest za długa - maksymalnie %1$d znaków, wysłano %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Wysłano bezpośrednią wiadomość do użytkownika %s."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Błąd podczas wysyłania bezpośredniej wiadomości."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Nie można powtórzyć własnego wpisu"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Już powtórzono ten wpis"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Powtórzono wpis od użytkownika %s"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "BÅ‚Ä…d podczas powtarzania wpisu."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Wpis jest za długi - maksymalnie %1$d znaków, wysłano %2$d."
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Wysłano odpowiedź do %s."
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "BÅ‚Ä…d podczas zapisywania wpisu."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Podaj nazwę użytkownika do subskrybowania."
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Brak takiego użytkownika."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Nie można subskrybować profili OMB za pomocą polecenia."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Subskrybowano użytkownika %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Podaj nazwę użytkownika do usunięcia subskrypcji."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Usunięto subskrypcję użytkownika %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Nie zaimplementowano polecenia."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Wyłączono powiadomienia."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Nie można wyłączyć powiadomień."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "WÅ‚Ä…czono powiadomienia."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Nie można włączyć powiadomień."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Polecenie logowania jest wyłączone"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Tego odnośnika można użyć tylko raz i będzie prawidłowy tylko przez dwie "
"minuty: %s."
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Usunięto subskrypcję użytkownika %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Nie subskrybujesz nikogo."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Subskrybujesz tÄ™ osobÄ™:"
msgstr[1] "Subskrybujesz te osoby:"
msgstr[2] "Subskrybujesz te osoby:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Nikt ciÄ™ nie subskrybuje."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Ta osoba ciÄ™ subskrybuje:"
msgstr[1] "Te osoby ciÄ™ subskrybujÄ…:"
msgstr[2] "Te osoby ciÄ™ subskrybujÄ…:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Nie jesteś członkiem żadnej grupy."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Jesteś członkiem tej grupy:"
msgstr[1] "Jesteś członkiem tych grup:"
msgstr[2] "Jesteś członkiem tych grup:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5440,19 +5938,19 @@ msgstr ""
"tracks - jeszcze nie zaimplementowano\n"
"tracking - jeszcze nie zaimplementowano\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Nie odnaleziono pliku konfiguracji."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Szukano plików konfiguracji w następujących miejscach: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Należy uruchomić instalator, aby to naprawić."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Przejdź do instalatora."
@@ -5626,53 +6124,54 @@ msgstr "Grupy z największą ilością wpisów"
msgid "Tags in %s group's notices"
msgstr "Znaczniki we wpisach grupy %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Ta strona jest niedostępna dla akceptowanego typu medium"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Nieobsługiwany format pliku obrazu."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Ten plik jest za duży. Maksymalny rozmiar pliku to %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Częściowo wysłano."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Błąd systemu podczas wysyłania pliku."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "To nie jest obraz lub lub plik jest uszkodzony."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Nieobsługiwany format pliku obrazu."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Utracono plik."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Nieznany typ pliku"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "KB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Nieznane źródło skrzynki odbiorczej %d."
@@ -5693,11 +6192,13 @@ msgstr "Zaloguj się za pomocą nazwy użytkownika i hasła"
msgid "Sign up for a new account"
msgstr "Załóż nowe konto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Potwierdzenie adresu e-mail"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5727,12 +6228,24 @@ msgstr ""
"Dziękujemy za twój czas, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "Użytkownik %1$s obserwuje teraz twoje wpisy na %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Jeśli użytkownik uważa, że to konto jest używane w złośliwych celach, może "
+"zablokować je z listy subskrybentów i zgłosić je jako spam do "
+"administratorów witryny na %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5757,17 +6270,20 @@ msgstr ""
"----\n"
"Zmień adres e-mail lub opcje powiadamiania na %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "O mnie: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Nowy adres e-mail do wysyłania do %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5788,21 +6304,31 @@ msgstr ""
"Z poważaniem,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Stan użytkownika %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Potwierdzenie SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: proszę potwierdzić własny numer telefonu za pomocą tego kodu:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Zostałeś szturchnięty przez %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5829,12 +6355,14 @@ msgstr ""
"Z poważaniem,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nowa prywatna wiadomość od użytkownika %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5867,12 +6395,14 @@ msgstr ""
"Z poważaniem,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "Użytkownik %s (@%s) dodał twój wpis jako ulubiony"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5910,12 +6440,25 @@ msgstr ""
"Z poważaniem,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Pełną rozmowę można przeczytać tutaj:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "Użytkownik %s (@%s) wysłał wpis wymagający twojej uwagi"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5928,18 +6471,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"Użytkownik %1$s (@%9$s) właśnie wysłał wpis wymagający twojej uwagi "
-"(odpowiedź \"@\") na %2$s.\n"
+"Użytkownik %1$s (@%9$s) właśnie wysłał wpis dla ciebie (odpowiedź \\\"@\\\") "
+"na %2$s.\n"
"\n"
-"Wpis znajduje siÄ™ tutaj:\n"
+"Wpis:\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
-"Tekst wpisu:\n"
+"O treści:\n"
"\n"
-"\t%4$s\n"
+"%4$s\n"
+"\n"
+"%5$sMożna odpowiedzieć tutaj:\n"
+"\n"
+"%6$s\n"
+"\n"
+"Lista wszystkich odpowiedzi \\\"@\\\" do ciebie znajduje siÄ™ tutaj:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Z poważaniem,\n"
+"%2$s\n"
"\n"
+"PS Można wyłączyć powiadomienia przez e-mail tutaj: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5954,7 +6521,7 @@ msgstr ""
"rozmowę z innymi użytkownikami. Inni mogą wysyłać ci wiadomości tylko dla "
"twoich oczu."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "z"
@@ -6010,24 +6577,24 @@ msgstr "Zapisanie pliku na dysku nie powiodło się."
msgid "File upload stopped by extension."
msgstr "Wysłanie pliku zostało zatrzymane przez rozszerzenie."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Plik przekracza przydział użytkownika."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Nie można przenieść pliku do katalogu docelowego."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Nie można określić typu MIME pliku."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Spróbuj innego formatu %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s nie jest obsługiwanym typem pliku na tym serwerze."
@@ -6082,48 +6649,52 @@ msgstr ""
"Pobieranie danych geolokalizacji trwa dłużej niż powinno, proszę spróbować "
"ponownie później"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "Północ"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "Południe"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "Wschód"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "Zachód"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "w"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "w rozmowie"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Powtórzone przez"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Odpowiedz na ten wpis"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Odpowiedz"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Powtórzono wpis"
@@ -6147,6 +6718,10 @@ msgstr "BÅ‚Ä…d podczas wprowadzania nowego profilu"
msgid "Error inserting avatar"
msgstr "BÅ‚Ä…d podczas wprowadzania awatara"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "BÅ‚Ä…d podczas aktualizowania zdalnego profilu"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "BÅ‚Ä…d podczas wprowadzania zdalnego profilu"
@@ -6192,11 +6767,11 @@ msgstr "Wysłane wiadomości"
msgid "Tags in %s's notices"
msgstr "Znaczniki we wpisach użytkownika %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Nieznane"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subskrypcje"
@@ -6204,31 +6779,32 @@ msgstr "Subskrypcje"
msgid "All subscriptions"
msgstr "Wszystkie subskrypcje"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subskrybenci"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Wszyscy subskrybenci"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Identyfikator użytkownika"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Członek od"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Dziennie średnio"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Wszystkie grupy"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Brak parametrów powrotu."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Niezaimplementowana metoda."
@@ -6252,11 +6828,19 @@ msgstr "Znane"
msgid "Popular"
msgstr "Popularne"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Brak parametrów powrotu."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Powtórzyć ten wpis?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Tak"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Powtórz ten wpis"
@@ -6265,7 +6849,7 @@ msgstr "Powtórz ten wpis"
msgid "Revoke the \"%s\" role from this user"
msgstr "Unieważnij rolę \"%s\" tego użytkownika"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
"Nie określono pojedynczego użytkownika dla trybu pojedynczego użytkownika."
@@ -6364,6 +6948,53 @@ msgstr "Chmura znaczników osób ze znacznikami"
msgid "None"
msgstr "Brak"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Ten serwer nie może obsługiwać wysyłania motywu bez obsługi archiwów zip."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Brak pliku motywu lub wysłanie nie powiodło się."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Zapisanie motywu nie powiodło się."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Nieprawidłowy motyw: błędna struktura katalogów."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Wysłany motyw jest za duży, musi być mniejszy niż %d bajtów po "
+"zdekompresowaniu."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Nieprawidłowe archiwum motywu: brak pliku css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Motyw zawiera nieprawidłowy plik lub nazwę katalogu. Należy używać tylko "
+"liter, cyfr, podkreślników i znaku minus z zestawu ASCII."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Motyw zawiera plik typu \\\".%s\\\", który nie jest dozwolony."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "BÅ‚Ä…d podczas otwierania archiwum motywu."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Najczęściej wysyłający wpisy"
@@ -6392,89 +7023,108 @@ msgstr "Zrezygnuj z subskrypcji tego użytkownika"
msgid "Unsubscribe"
msgstr "Zrezygnuj z subskrypcji"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Użytkownik %s (%d) nie posiada wpisu profilu."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Zmodyfikuj awatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Czynności użytkownika"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Trwa usuwanie użytkownika..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Zmodyfikuj ustawienia profilu"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Edycja"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Wyślij bezpośrednią wiadomość do tego użytkownika"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Wiadomość"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderuj"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Rola użytkownika"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "Administrator"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "kilka sekund temu"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "około minutę temu"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "około %d minut temu"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "około godzinę temu"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "około %d godzin temu"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "blisko dzień temu"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "około %d dni temu"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "około miesiąc temu"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "około %d miesięcy temu"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "około rok temu"
@@ -6490,7 +7140,7 @@ msgstr ""
"%s nie jest prawidłowym kolorem. Użyj trzech lub sześciu znaków "
"szesnastkowych."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Wiadomość jest za długa - maksymalnie %1$d znaków, wysłano %2$d."
diff --git a/locale/pt/LC_MESSAGES/statusnet.po b/locale/pt/LC_MESSAGES/statusnet.po
index 7041bea81..ab309b7b3 100644
--- a/locale/pt/LC_MESSAGES/statusnet.po
+++ b/locale/pt/LC_MESSAGES/statusnet.po
@@ -1,5 +1,7 @@
# Translation of StatusNet to Portuguese
#
+# Author@translatewiki.net: Gallaecio
+# Author@translatewiki.net: Giro720
# Author@translatewiki.net: Hamilton Abreu
# Author@translatewiki.net: Ipublicis
# --
@@ -9,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:48+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:54+0000\n"
"Language-Team: Portuguese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pt\n"
"X-Message-Group: out-statusnet\n"
@@ -22,21 +24,19 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Acesso"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
-#, fuzzy
msgid "Site access settings"
-msgstr "Gravar configurações do site"
+msgstr "Configurações de acesso ao site"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
-msgstr "Registar"
+msgstr "Registo"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
@@ -45,7 +45,6 @@ msgstr "Proibir utilizadores anónimos (sem sessão iniciada) de ver o site?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Privado"
@@ -72,90 +71,93 @@ msgstr "Fechado"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "Gravar configurações do site"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "Gravar configurações de acesso"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Gravar"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Página não encontrada."
+msgid "No such page."
+msgstr "Página não foi encontrada."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
-msgstr "Utilizador não encontrado."
+msgstr "Utilizador não foi encontrado."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "Perfis bloqueados de %1$s, página %2$d"
+msgstr "%1$s e amigos, página %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s e amigos"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Fonte para os amigos de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Fonte para os amigos de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Fonte para os amigos de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
"Estas são as notas de %s e dos amigos, mas ainda não publicaram nenhuma."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -165,82 +167,84 @@ msgstr ""
"publicar qualquer coisa."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Pode tentar [dar um toque em %1$s](../%2$s) a partir do perfil ou [publicar "
-"qualquer coisa à sua atenção](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"Pode tentar [dar um toque em %1$s](../%2$s) a partir do perfil ou [endereçar-"
+"lhe uma nota](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"Podia [registar uma conta](%%action.register%%) e depois tocar %s ou "
-"publicar uma nota à sua atenção."
+"Podia [registar uma conta](%%%%action.register%%%%) e depois dar um toque em "
+"%s ou endereçar-lhe uma nota."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Você e seus amigos"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Actualizações de %1$s e amigos no %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Método da API não encontrado."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Este método requer um POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-"Tem de especificar um parâmetro 'aparelho' com um dos valores: sms, im, none"
+"Tem de especificar um parâmetro 'aparelho' com um dos valores: sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Não foi possível actualizar o utilizador."
@@ -249,7 +253,7 @@ msgstr "Não foi possível actualizar o utilizador."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Utilizador não tem perfil."
@@ -259,9 +263,9 @@ msgid "Could not save profile."
msgstr "Não foi possível gravar o perfil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -319,48 +323,48 @@ msgstr "Mensagens directas para %s"
msgid "All the direct messages sent to %s"
msgstr "Todas as mensagens directas enviadas para %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Mensagem não tem texto!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Demasiado longo. Tamanho máx. das mensagens é %d caracteres."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Destinatário não encontrado."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Não pode enviar mensagens directas a utilizadores que não sejam amigos."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Nenhum estado encontrado com esse ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Este estado já é um favorito."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Não foi possível criar o favorito."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Esse estado não é um favorito."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Não foi possível eliminar o favorito."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr "Não foi possível seguir utilizador: Utilizador não encontrado."
+msgid "Could not follow user: profile not found."
+msgstr "Não foi possível seguir o utilizador: o perfil não foi encontrado."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -376,9 +380,9 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Não pode deixar de seguir-se a si próprio."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Devem ser fornecidos dois nomes de utilizador ou utilizadors."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Têm de ser fornecidos dois IDs ou nomes de utilizador válidos."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -388,136 +392,147 @@ msgstr "Não foi possível determinar o utilizador de origem."
msgid "Could not find target user."
msgstr "Não foi possível encontrar o utilizador de destino."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Utilizador só deve conter letras minúsculas e números. Sem espaços."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Utilizador já é usado. Tente outro."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Utilizador não é válido."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Página de ínicio não é uma URL válida."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Nome completo demasiado longo (máx. 255 caracteres)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Descrição demasiado longa (máx. 140 caracteres)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Localidade demasiado longa (máx. 255 caracteres)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
-msgstr "Demasiados sinónimos (máx. %d)."
+msgstr "Demasiados nomes alternativos! Máx. %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Sinónimo inválido: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Nome alternativo inválido: \"%s\""
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
-msgstr "Sinónimo \"%s\" já em uso. Tente outro."
+msgstr "Nome alternativo \"%s\" já em uso. Tente outro."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
-msgstr "Os sinónimos não podem ser iguais ao nome do utilizador."
+msgstr "Um nome alternativo não pode ser igual ao nome do utilizador."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Grupo não foi encontrado!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Grupo não foi encontrado."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Já é membro desse grupo."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Foi bloqueado desse grupo pelo gestor."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Não foi possível adicionar %1$s ao grupo %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Não é membro deste grupo."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Não foi possível remover %1$s do grupo %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Grupos de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Grupos de %1$s de que %2$s é membro."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Grupos de %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "Grupos em %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "O upload falhou."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
-msgstr ""
+msgstr "Não foi fornecido o parâmetro oauth_token."
#: actions/apioauthauthorize.php:106
-#, fuzzy
msgid "Invalid token."
-msgstr "Tamanho inválido."
+msgstr "Chave inválida."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -525,48 +540,48 @@ msgid "There was a problem with your session token. Try again, please."
msgstr "Ocorreu um problema com a sua sessão. Por favor, tente novamente."
#: actions/apioauthauthorize.php:135
-#, fuzzy
msgid "Invalid nickname / password!"
-msgstr "Nome de utilizador ou senha inválidos."
+msgstr "Alcunha ou senha inválidos!"
#: actions/apioauthauthorize.php:159
-#, fuzzy
msgid "Database error deleting OAuth application user."
-msgstr "Erro ao configurar utilizador."
+msgstr "Erro na base de dados ao apagar o utilizador da aplicação OAuth."
#: actions/apioauthauthorize.php:185
-#, fuzzy
msgid "Database error inserting OAuth application user."
-msgstr "Erro na base de dados ao inserir a marca: %s"
+msgstr "Erro na base de dados ao inserir o utilizador da aplicação OAuth."
#: actions/apioauthauthorize.php:214
#, php-format
msgid ""
"The request token %s has been authorized. Please exchange it for an access "
"token."
-msgstr ""
+msgstr "A chave de pedido %s foi autorizada. Troque-a por uma chave de acesso."
#: actions/apioauthauthorize.php:227
#, php-format
msgid "The request token %s has been denied and revoked."
-msgstr ""
+msgstr "A chave de pedido %s foi negada e retirada."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Envio inesperado de formulário."
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "Uma aplicação pretende ligar-se à sua conta"
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "Permitir ou negar acesso"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -575,50 +590,53 @@ msgid ""
"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."
msgstr ""
+"A aplicação <strong>%1$s</strong> por <strong>%2$s</strong> solicita "
+"permissão para <strong>%3$s</strong> os dados da sua conta %4$s. Só deve "
+"permitir acesso à sua conta %4$s a terceiros da sua confiança."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Conta"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Utilizador"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Senha"
#: actions/apioauthauthorize.php:328
-#, fuzzy
msgid "Deny"
-msgstr "Estilo"
+msgstr "Negar"
#: actions/apioauthauthorize.php:334
-#, fuzzy
msgid "Allow"
-msgstr "Todas"
+msgstr "Permitir"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "Permitir ou negar acesso à informação da sua conta."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Este método requer um POST ou DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Não pode apagar o estado de outro utilizador."
#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
#: actions/deletenotice.php:52 actions/shownotice.php:92
msgid "No such notice."
-msgstr "Nota não encontrada."
+msgstr "Nota não foi encontrada."
#: actions/apistatusesretweet.php:83
msgid "Cannot repeat your own notice."
@@ -628,59 +646,63 @@ msgstr "Não pode repetir a sua própria nota."
msgid "Already repeated that notice."
msgstr "Já repetiu essa nota."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Estado apagado."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Não foi encontrado um estado com esse ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "O cliente tem de fornecer um parâmetro 'status' com um valor."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Demasiado longo. Tamanho máx. das notas é %d caracteres."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Não encontrado"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Não encontrado."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "Tamanho máx. das notas é %d caracteres, incluíndo a URL do anexo."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formato não suportado."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoritas de %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s actualizações preferidas por %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Actualizações que mencionam %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s actualizações em resposta a actualizações de %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Notas públicas de %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s actualizações de todos!"
@@ -693,32 +715,32 @@ msgstr "Repetida para %s"
#: actions/apitimelineretweetsofme.php:114
#, php-format
msgid "Repeats of %s"
-msgstr "Repetências de %s"
+msgstr "Repetições de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notas categorizadas com %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Actualizações categorizadas com %1$s em %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Não encontrado."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Método da API em desenvolvimento."
#: actions/attachment.php:73
msgid "No such attachment."
-msgstr "Anexo não encontrado."
+msgstr "Anexo não foi encontrado."
#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
#: actions/grouplogo.php:86 actions/groupmembers.php:76
#: actions/grouprss.php:91 actions/showgroup.php:121
msgid "No nickname."
-msgstr "Nenhuma utilizador."
+msgstr "Alcunha não definida."
#: actions/avatarbynickname.php:64
msgid "No size."
@@ -728,8 +750,9 @@ msgstr "Tamanho não definido."
msgid "Invalid size."
msgstr "Tamanho inválido."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -739,10 +762,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Pode carregar o seu avatar pessoal. O tamanho máximo do ficheiro é %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Utilizador sem perfil correspondente"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Utilizador sem perfil correspondente."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -760,7 +783,7 @@ msgid "Preview"
msgstr "Antevisão"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Apagar"
@@ -772,23 +795,27 @@ msgstr "Carregar"
msgid "Crop"
msgstr "Cortar"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Não foi carregado nenhum ficheiro."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Escolha uma área quadrada da imagem para ser o seu avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Perdi os dados do nosso ficheiro."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar actualizado."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Falha ao actualizar avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar apagado."
@@ -796,11 +823,11 @@ msgstr "Avatar apagado."
msgid "You already blocked that user."
msgstr "Já bloqueou esse utilizador."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Bloquear utilizador"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -810,27 +837,42 @@ msgstr ""
"subscrição por este utilizador será cancelada, ele não poderá subscrevê-lo "
"de futuro e você não receberá notificações das @-respostas dele."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Não"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Não bloquear este utilizador"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Sim"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Bloquear este utilizador"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Não foi possível gravar informação do bloqueio."
@@ -843,8 +885,8 @@ msgstr "Não foi possível gravar informação do bloqueio."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Grupo não foi encontrado."
@@ -874,9 +916,11 @@ msgstr "Desbloquear"
msgid "Unblock this user"
msgstr "Desbloquear este utilizador"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Publicar em "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Publicar em %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -890,34 +934,43 @@ msgstr "Código de confirmação não encontrado"
msgid "That confirmation code is not for you!"
msgstr "Esse código de confirmação não é para si!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Tipo do endereço %s não reconhecido"
+msgid "Unrecognized address type %s."
+msgstr "Tipo do endereço %s não reconhecido."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Esse endereço já tinha sido confirmado."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Não foi possível actualizar o utilizador."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Não foi possível apagar a confirmação do endereço electrónico."
-#: actions/confirmaddress.php:144
-#, fuzzy
+#: actions/confirmaddress.php:146
msgid "Confirm address"
-msgstr "Confirmar Endereço"
+msgstr "Confirmar endereço"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "O endereço \"%s\" foi confirmado para a sua conta."
@@ -927,64 +980,60 @@ msgid "Conversation"
msgstr "Conversação"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notas"
#: actions/deleteapplication.php:63
-#, fuzzy
msgid "You must be logged in to delete an application."
-msgstr "Precisa de iniciar sessão para editar um grupo."
+msgstr "Tem de iniciar uma sessão para eliminar uma aplicação."
#: actions/deleteapplication.php:71
-#, fuzzy
msgid "Application not found."
-msgstr "Nota não tem perfil"
+msgstr "Aplicação não foi encontrada."
#: actions/deleteapplication.php:78 actions/editapplication.php:77
#: actions/showapplication.php:94
-#, fuzzy
msgid "You are not the owner of this application."
-msgstr "Não é membro deste grupo."
+msgstr "Não é o proprietário desta aplicação."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Ocorreu um problema com a sua sessão."
#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
-#, fuzzy
msgid "Delete application"
-msgstr "Nota não encontrada."
+msgstr "Apagar aplicação"
#: actions/deleteapplication.php:149
-#, fuzzy
msgid ""
"Are you sure you want to delete this application? This will clear all data "
"about the application from the database, including all existing user "
"connections."
msgstr ""
-"Tem a certeza de que quer apagar este utilizador? Todos os dados do "
-"utilizador serão eliminados da base de dados, sem haver cópias."
+"Tem a certeza de que quer apagar esta aplicação? Todos os dados da aplicação "
+"serão eliminados da base de dados, incluindo todas as ligações de "
+"utilizadores em existência."
-#: actions/deleteapplication.php:156
-#, fuzzy
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
-msgstr "Não apagar esta nota"
+msgstr "Não apagar esta aplicação"
-#: actions/deleteapplication.php:160
-#, fuzzy
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
-msgstr "Apagar esta nota"
+msgstr "Apagar esta aplicação"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Não iniciou sessão."
@@ -1009,11 +1058,13 @@ msgstr "Apagar nota"
msgid "Are you sure you want to delete this notice?"
msgstr "Tem a certeza de que quer apagar esta nota?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Não apagar esta nota"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Apagar esta nota"
@@ -1037,58 +1088,71 @@ msgstr ""
"Tem a certeza de que quer apagar este utilizador? Todos os dados do "
"utilizador serão eliminados da base de dados, sem haver cópias."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Apagar este utilizador"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Estilo"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Configurações do estilo deste site StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "URL do logotipo inválida."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema não está disponível: %s"
+msgid "Theme not available: %s."
+msgstr "Tema não está disponível: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Alterar logotipo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logotipo do site"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Alterar tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Tema do site"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "O tema para o site."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Tema personalizado"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+"Pode fazer o upload de um tema personalizado para o StatusNet, na forma de "
+"um arquivo .ZIP."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Alterar imagem de fundo"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Fundo"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1097,67 +1161,76 @@ msgstr ""
"Pode carregar uma imagem de fundo para o site. O tamanho máximo do ficheiro "
"é %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Ligar"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Desligar"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Ligar ou desligar a imagem de fundo."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Repetir imagem de fundo em mosaico"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Alterar cores"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Conteúdo"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texto"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
-msgstr "Ligações"
+msgstr "Links"
+
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avançado"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalizado"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Usar predefinições"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Repor estilos predefinidos"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Repor predefinição"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Gravar"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Gravar o estilo"
@@ -1170,86 +1243,74 @@ msgid "Add to favorites"
msgstr "Adicionar às favoritas"
#: actions/doc.php:158
-#, fuzzy, php-format
+#, php-format
msgid "No such document \"%s\""
-msgstr "Documento não encontrado."
+msgstr "Documento \"%s\" não foi encontrado"
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
-msgstr "Outras opções"
+msgstr "Editar Aplicação"
#: actions/editapplication.php:66
-#, fuzzy
msgid "You must be logged in to edit an application."
-msgstr "Precisa de iniciar sessão para editar um grupo."
+msgstr "Tem de iniciar uma sessão para editar uma aplicação."
#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
#: actions/showapplication.php:87
-#, fuzzy
msgid "No such application."
-msgstr "Nota não encontrada."
+msgstr "Aplicação não foi encontrada."
#: actions/editapplication.php:161
-#, fuzzy
msgid "Use this form to edit your application."
-msgstr "Use este formulário para editar o grupo."
+msgstr "Use este formulário para editar a sua aplicação."
#: actions/editapplication.php:177 actions/newapplication.php:159
-#, fuzzy
msgid "Name is required."
-msgstr "Repita a senha acima. Obrigatório."
+msgstr "Nome é obrigatório."
#: actions/editapplication.php:180 actions/newapplication.php:165
-#, fuzzy
msgid "Name is too long (max 255 chars)."
-msgstr "Nome completo demasiado longo (máx. 255 caracteres)."
+msgstr "Nome é demasiado longo (máx. 255 caracteres)."
#: actions/editapplication.php:183 actions/newapplication.php:162
-#, fuzzy
msgid "Name already in use. Try another one."
-msgstr "Utilizador já é usado. Tente outro."
+msgstr "Nome já é usado. Tente outro."
#: actions/editapplication.php:186 actions/newapplication.php:168
-#, fuzzy
msgid "Description is required."
-msgstr "Descrição"
+msgstr "Descrição é obrigatória."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr ""
+msgstr "URL de origem é demasiado longa."
#: actions/editapplication.php:200 actions/newapplication.php:185
-#, fuzzy
msgid "Source URL is not valid."
-msgstr "A URL ‘%s’ do avatar é inválida."
+msgstr "A URL de origem é inválida."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
-msgstr ""
+msgstr "Organização é obrigatória."
#: actions/editapplication.php:206 actions/newapplication.php:191
-#, fuzzy
msgid "Organization is too long (max 255 chars)."
-msgstr "Localidade demasiado longa (máx. 255 caracteres)."
+msgstr "Organização é demasiado longa (máx. 255 caracteres)."
#: actions/editapplication.php:209 actions/newapplication.php:194
msgid "Organization homepage is required."
-msgstr ""
+msgstr "Página da organização é obrigatória."
#: actions/editapplication.php:218 actions/newapplication.php:206
msgid "Callback is too long."
-msgstr ""
+msgstr "Callback é demasiado longo."
#: actions/editapplication.php:225 actions/newapplication.php:215
-#, fuzzy
msgid "Callback URL is not valid."
-msgstr "A URL ‘%s’ do avatar é inválida."
+msgstr "A URL de callback é inválida."
#: actions/editapplication.php:258
-#, fuzzy
msgid "Could not update application."
-msgstr "Não foi possível actualizar o grupo."
+msgstr "Não foi possível actualizar a aplicação."
#: actions/editgroup.php:56
#, php-format
@@ -1274,43 +1335,60 @@ msgstr "Use este formulário para editar o grupo."
msgid "description is too long (max %d chars)."
msgstr "descrição é demasiada extensa (máx. %d caracteres)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Nome alternativo inválido: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Não foi possível actualizar o grupo."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
-msgstr "Não foi possível criar sinónimos."
+msgstr "Não foi possível criar os nomes alternativos."
#: actions/editgroup.php:280
msgid "Options saved."
msgstr "Opções gravadas."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Configurações do correio electrónico"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Defina como receberá mensagens electrónicas de %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Endereço"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Endereço de correio electrónico"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Endereço de correio já confirmado."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Remover"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1318,111 +1396,141 @@ msgstr ""
"A aguardar a confirmação deste endereço. Procure na sua caixa de entrada (ou "
"na caixa de spam!) uma mensagem com mais instruções."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancelar"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Endereço de correio electrónico"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr ""
"Endereço de correio electrónico, por ex. \"nomedeutilizador@exemplo.pt\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Adicionar"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Correio recebido"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Envie mensagens electrónicas para este endereço para publicar notas."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Crie um endereço electrónico novo para publicações; cancela o antigo."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Novo"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferências"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferências de correio electrónico"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Enviem-me notificação electrónica das novas subscrições."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Enviem-me notificação electrónica quando uma nota minha é adicionada às "
"favoritas."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
"Enviem-me notificação electrónica quando me enviarem uma mensagem privada."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-"Enviem-me notificação electrónica quando me enviarem uma \"@-resposta\"."
+"Enviem-me notificação electrónica quando me enviarem uma \"resposta-@\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Permitir que amigos me toquem e enviem mensagens electrónicas."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Quero publicar notas por correio electrónico."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publicar uma MicroID para o meu endereço electrónico."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Preferências gravadas."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Preferências de correio electrónico foram gravadas."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Sem endereço de correio electrónico."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Não é possível normalizar esse endereço electrónico"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Correio electrónico é inválido."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Esse já é o seu endereço electrónico."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Esse endereço electrónico já pertence a outro utilizador."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Não foi possível inserir o código de confirmação."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1431,43 +1539,53 @@ msgstr ""
"forneceu. Procure na caixa de entrada (e na caixa de spam!) o código e as "
"respectivas instruções de utilização."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Nenhuma confirmação pendente para cancelar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Esse endereço de mensagens instantâneas está errado."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Esse endereço de correio electrónico está errado."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Confirmação cancelada."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Confirmação de correio electrónico cancelada."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Esse não é o seu endereço electrónico."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "O endereço foi removido."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "O endereço de correio electrónico foi removido."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Sem endereço electrónico de entrada."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Não foi possível actualizar o registo do utilizador."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Endereço electrónico de entrada foi removido."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Adicionado endereço electrónico de entrada novo."
@@ -1585,9 +1703,9 @@ msgstr "Não foi possível converter a chave de pedido numa chave de acesso."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Serviço remoto usa uma versão desconhecida do protocolo OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Erro ao actualizar o perfil remoto"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Erro ao actualizar o perfil remoto."
#: actions/getfile.php:79
msgid "No such file."
@@ -1598,33 +1716,30 @@ msgid "Cannot read file."
msgstr "Não foi possível ler o ficheiro."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Tamanho inválido."
+msgstr "Função inválida."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Esta função está reservada e não pode ser activada."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "Não pode impedir notas públicas neste site."
+msgstr "Não pode atribuir funções aos utilizadores neste site."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "O utilizador já está silenciado."
+msgstr "O utilizador já tem esta função."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Não foi especificado um perfil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Não foi encontrado um perfil com essa identificação."
@@ -1645,11 +1760,11 @@ msgstr "Acesso do utilizador ao grupo já foi bloqueado."
msgid "User is not a member of group."
msgstr "Utilizador não é membro do grupo."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Bloquear acesso do utilizador ao grupo"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1660,15 +1775,17 @@ msgstr ""
"\"%2$s\"? Ele será removido do grupo, impossibilitado de publicar e "
"impossibilitado de subscrever o grupo no futuro."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Não bloquear acesso deste utilizador a este grupo"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Bloquear acesso deste utilizador a este grupo"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Erro na base de dados ao bloquear acesso do utilizador ao grupo."
@@ -1678,7 +1795,7 @@ msgstr "Sem ID."
#: actions/groupdesignsettings.php:68
msgid "You must be logged in to edit a group."
-msgstr "Precisa de iniciar sessão para editar um grupo."
+msgstr "Tem de iniciar uma sessão para editar um grupo."
#: actions/groupdesignsettings.php:144
msgid "Group design"
@@ -1713,10 +1830,6 @@ msgstr ""
"Pode carregar uma imagem para logotipo do seu grupo. O tamanho máximo do "
"ficheiro é %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Utilizador sem perfil correspondente."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Escolha uma área quadrada da imagem para ser o logotipo."
@@ -1747,34 +1860,38 @@ msgstr "Uma lista dos utilizadores neste grupo."
msgid "Admin"
msgstr "Gestor"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloquear"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Tornar utilizador o gestor do grupo"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Tornar Gestor"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Tornar este utilizador um gestor"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Notas de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Actualizações dos membros de %1$s em %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupos"
@@ -1799,7 +1916,7 @@ msgstr ""
"encontra nenhum grupo de que gosta? Tente [pesquisar um grupo](%%action."
"groupsearch%%) ou [crie o seu!](%%action.newgroup%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Criar um grupo novo"
@@ -1851,11 +1968,15 @@ msgstr "Acesso do utilizador ao grupo não foi bloqueado."
msgid "Error removing the block."
msgstr "Erro ao remover o bloqueio."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Configurações do IM"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1864,15 +1985,24 @@ msgstr ""
"Pode enviar e receber notas através de [mensagens instantâneas](%%doc.im%%) "
"Jabber/GTalk. Configure o seu endereço e outras definições abaixo."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "MI não está disponível."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Endereço IM"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Endereço do Jabber/GTalk já confirmado."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1882,11 +2012,9 @@ msgstr ""
"enviadas para a sua conta de Jabber/GTalk. (Adicionou %s à sua lista de "
"amigos?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Endereço IM"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1896,43 +2024,64 @@ msgstr ""
"Primeiro, certifique-se de que adicionou %s à sua lista de amigos no cliente "
"MI ou no GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferências de MI"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Enviar-me notas via Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Publicar uma nota quando o meu estado no Jabber/GTalk se altera."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr "Enviar-me via Jabber/GTalk respostas de pessoas que não subscrevo."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publicar uma MicroID para o meu endereço Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Preferências gravadas."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Não introduziu o Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Não é possível normalizar esse Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Jabber ID não é válido"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Esse já é o seu Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "O Jabber ID introduzido já pertence a outro utilizador."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1941,14 +2090,36 @@ msgstr ""
"Um código de confirmação foi enviado para o endereço fornecido. Tem que "
"aprovar que %s envie mensagens para si."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Esse endereço de mensagens instantâneas está errado."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Não foi possível apagar a confirmação do mensageiro instantâneo."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Confirmação do mensageiro instantâneo cancelada."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Esse não é o seu Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "O endereço do mensageiro instantâneo foi removido."
+
#: actions/inbox.php:59
-#, fuzzy, php-format
+#, php-format
msgid "Inbox for %1$s - page %2$d"
-msgstr "Caixa de entrada de %s"
+msgstr "Caixa de entrada de %s - página %2$d"
#: actions/inbox.php:62
#, php-format
@@ -1967,10 +2138,10 @@ msgstr "Convites foram desabilitados."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Precisa de iniciar uma sessão para convidar outros utilizadores a usarem o "
-"site %s."
+"Tem de iniciar uma sessão para convidar outros utilizadores a usarem o site %"
+"s."
#: actions/invite.php:72
#, php-format
@@ -1989,7 +2160,9 @@ msgstr "Convidar novos utilizadores"
msgid "You are already subscribed to these users:"
msgstr "Já subscreveu estes utilizadores:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2036,17 +2209,18 @@ msgstr "Pode optar por acrescentar uma mensagem pessoal ao convite"
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Enviar"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s convidou-o a juntar-se a ele no %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2104,66 +2278,69 @@ msgstr ""
#: actions/joingroup.php:60
msgid "You must be logged in to join a group."
-msgstr "Precisa de iniciar uma sessão para se juntar a um grupo."
+msgstr "Tem de iniciar uma sessão para se juntar a um grupo."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Nenhuma utilizador."
+msgstr "Nenhuma alcunha ou utilizador."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s juntou-se ao grupo %2$s"
#: actions/leavegroup.php:60
msgid "You must be logged in to leave a group."
-msgstr "Precisa de iniciar uma sessão para deixar um grupo."
+msgstr "Tem de iniciar uma sessão para deixar um grupo."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Não é um membro desse grupo."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s deixou o grupo %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Sessão já foi iniciada."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nome de utilizador ou senha incorrectos."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Erro ao preparar o utilizador. Provavelmente não está autorizado."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Entrar"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Iniciar sessão no site"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Lembrar-me neste computador"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"De futuro, iniciar sessão automaticamente. Não usar em computadores "
"partilhados!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Perdeu ou esqueceu-se da senha?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2171,14 +2348,15 @@ msgstr ""
"Por razões de segurança, por favor re-introduza o seu nome de utilizador e "
"senha antes de alterar as configurações."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Iniciar sessão com um nome de utilizador e senha."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
-msgstr ""
-"Entrar com o seu nome de utilizador e senha. Ainda não está registado? "
-"[Registe](%%action.register%%) uma conta."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr "Ainda não está registado? [Registe](%%action.register%%) uma conta."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2200,32 +2378,28 @@ 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."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Sem estado actual"
+msgid "No current status."
+msgstr "Sem estado actual."
#: actions/newapplication.php:52
-#, fuzzy
msgid "New Application"
-msgstr "Nota não encontrada."
+msgstr "Aplicação Nova"
#: actions/newapplication.php:64
-#, fuzzy
msgid "You must be logged in to register an application."
-msgstr "Tem de iniciar uma sessão para criar o grupo."
+msgstr "Tem de iniciar uma sessão para registar uma aplicação."
#: actions/newapplication.php:143
-#, fuzzy
msgid "Use this form to register a new application."
-msgstr "Use este formulário para criar um grupo novo."
+msgstr "Use este formulário para registar uma nova aplicação."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr ""
+msgstr "É necessária a URL de origem."
#: actions/newapplication.php:258 actions/newapplication.php:267
-#, fuzzy
msgid "Could not create application."
-msgstr "Não foi possível criar sinónimos."
+msgstr "Não foi possível criar a aplicação."
#: actions/newgroup.php:53
msgid "New group"
@@ -2239,12 +2413,12 @@ msgstr "Use este formulário para criar um grupo novo."
msgid "New message"
msgstr "Mensagem nova"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Não pode enviar uma mensagem a este utilizador."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Sem conteúdo!"
@@ -2252,7 +2426,7 @@ msgstr "Sem conteúdo!"
msgid "No recipient specified."
msgstr "Não especificou um destinatário."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Não auto-envie uma mensagem; basta lê-la baixinho a si próprio."
@@ -2266,7 +2440,7 @@ msgstr "Mensagem enviada"
msgid "Direct message to %s sent."
msgstr "Mensagem directa para %s foi enviada."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Erro do Ajax"
@@ -2274,7 +2448,7 @@ msgstr "Erro do Ajax"
msgid "New notice"
msgstr "Nota nova"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Nota publicada"
@@ -2326,10 +2500,10 @@ msgstr "Actualizações que contêm o termo \"%1$s\" em %2$s!"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"Este utilizador não aceita toques ou ainda não confirmou ou forneceu o "
-"endereço electrónico."
+"Este utilizador não aceita toques ou ainda não confirmou ou forneceu um "
+"correio electrónico."
#: actions/nudge.php:94
msgid "Nudge sent"
@@ -2340,69 +2514,72 @@ msgid "Nudge sent!"
msgstr "Toque enviado!"
#: actions/oauthappssettings.php:59
-#, fuzzy
msgid "You must be logged in to list your applications."
-msgstr "Precisa de iniciar sessão para editar um grupo."
+msgstr "Tem de iniciar uma sessão para listar as suas aplicações."
#: actions/oauthappssettings.php:74
-#, fuzzy
msgid "OAuth applications"
-msgstr "Outras opções"
+msgstr "Aplicações OAuth"
#: actions/oauthappssettings.php:85
msgid "Applications you have registered"
-msgstr ""
+msgstr "Aplicações que registou"
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "Ainda não registou nenhuma aplicação."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
-msgstr ""
+msgstr "Aplicações ligadas"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "Permitiu que as seguintes aplicações acedam à sua conta."
#: actions/oauthconnectionssettings.php:175
-#, fuzzy
msgid "You are not a user of that application."
-msgstr "Não é um membro desse grupo."
+msgstr "Não é utilizador dessa aplicação."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr ""
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Não foi possível retirar acesso da aplicação: %s"
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
-msgstr ""
+msgstr "Não permitiu que nenhuma aplicação use a sua conta."
#: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications "
msgstr ""
+"Programadores podem editar as configurações de inscrição das suas aplicações "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Nota não tem perfil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Nota não tem perfil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Estado de %1$s em %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "tipo de conteúdo "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "O tipo de conteúdo %s não é suportado."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Apenas "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Só URLs %s sobre HTTP simples, por favor."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Formato de dados não suportado."
@@ -2415,9 +2592,8 @@ msgid "Notice Search"
msgstr "Pesquisa de Notas"
#: actions/othersettings.php:60
-#, fuzzy
msgid "Other settings"
-msgstr "Outras Configurações"
+msgstr "Outras configurações"
#: actions/othersettings.php:71
msgid "Manage various other options."
@@ -2448,34 +2624,29 @@ msgid "URL shortening service is too long (max 50 chars)."
msgstr "Serviço de encurtamento de URLs demasiado extenso (máx. 50 caracteres)"
#: actions/otp.php:69
-#, fuzzy
msgid "No user ID specified."
-msgstr "Não foi especificado um grupo."
+msgstr "Não foi especificado um ID de utilizador."
#: actions/otp.php:83
-#, fuzzy
msgid "No login token specified."
-msgstr "Nota não foi especificada."
+msgstr "Chave de entrada não foi especificada."
#: actions/otp.php:90
-#, fuzzy
msgid "No login token requested."
-msgstr "O pedido não tem a identificação do perfil."
+msgstr "Chave de entrada não foi pedida."
#: actions/otp.php:95
-#, fuzzy
msgid "Invalid login token specified."
-msgstr "Chave inválida ou expirada."
+msgstr "Chave de entrada especificada é inválida."
#: actions/otp.php:104
-#, fuzzy
msgid "Login token expired."
-msgstr "Iniciar sessão no site"
+msgstr "Chave de entrada expirou."
#: actions/outbox.php:58
-#, fuzzy, php-format
+#, php-format
msgid "Outbox for %1$s - page %2$d"
-msgstr "Caixa de saída de %s"
+msgstr "Caixa de saída de %s - página %2$d"
#: actions/outbox.php:61
#, php-format
@@ -2512,7 +2683,7 @@ msgid "6 or more characters"
msgstr "6 ou mais caracteres"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmação"
@@ -2524,11 +2695,11 @@ msgstr "Repita a senha nova"
msgid "Change"
msgstr "Modificar"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Senha tem de ter 6 ou mais caracteres."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Senhas não coincidem."
@@ -2540,7 +2711,7 @@ msgstr "Senha antiga incorrecta."
msgid "Error saving user; invalid."
msgstr "Erro ao guardar utilizador; inválido."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Não é possível guardar a nova senha."
@@ -2549,7 +2720,7 @@ msgid "Password saved."
msgstr "Senha gravada."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Localizações"
@@ -2559,23 +2730,23 @@ msgstr "Configurações de localização e servidor deste site StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Sem acesso de leitura do directório do tema: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Sem acesso de leitura do directório do tema: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Sem acesso de escrita no directório do avatar: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Sem acesso de escrita no directório do avatar: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Sem acesso de escrita no directório do fundo: %s"
+msgid "Background directory not writable: %s."
+msgstr "Sem acesso de escrita no directório do fundo: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Sem acesso de leitura ao directório de idiomas: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Sem acesso de leitura ao directório das línguas: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2603,11 +2774,11 @@ msgstr "Localização do site"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
-msgstr "Localização de idiomas"
+msgstr "Localização das línguas"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
-msgstr "Localização do directório de idiomas"
+msgstr "Localização do directório das línguas"
#: actions/pathsadminpanel.php:250
msgid "Fancy URLs"
@@ -2715,19 +2886,19 @@ msgstr ""
msgid "People search"
msgstr "Pesquisa de pessoas"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Categoria de pessoas inválida: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Categoria de pessoas inválida: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Utilizadores auto-categorizados com %1$s - página %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Conteúdo da nota é inválido"
+msgid "Invalid notice content."
+msgstr "Conteúdo da nota é inválido."
#: actions/postnotice.php:101
#, php-format
@@ -2754,42 +2925,43 @@ msgstr "Informação do perfil"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 letras minúsculas ou números, sem pontuação ou espaços"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nome completo"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Página pessoal"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL da sua página pessoal, blogue ou perfil noutro site na internet"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Descreva-se e aos seus interesses (máx. 140 caracteres)"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Descreva-se e aos seus interesses"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografia"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Localidade"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Onde está, por ex. \"Cidade, Região, País\""
@@ -2799,7 +2971,7 @@ msgstr "Compartilhar a minha localização presente ao publicar notas"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Categorias"
@@ -2812,11 +2984,11 @@ msgstr ""
#: actions/profilesettings.php:151
msgid "Language"
-msgstr "Idioma"
+msgstr "Língua"
#: actions/profilesettings.php:152
msgid "Preferred language"
-msgstr "Idioma preferido"
+msgstr "Língua preferida"
#: actions/profilesettings.php:161
msgid "Timezone"
@@ -2831,7 +3003,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "Subscrever automaticamente quem me subscreva (óptimo para não-humanos)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Biografia demasiado extensa (máx. %d caracteres)."
@@ -2842,7 +3014,7 @@ msgstr "Fuso horário não foi seleccionado."
#: actions/profilesettings.php:241
msgid "Language is too long (max 50 chars)."
-msgstr "Idioma é demasiado extenso (máx. 50 caracteres)."
+msgstr "Língua é demasiado extensa (máx. 50 caracteres)."
#: actions/profilesettings.php:253 actions/tagother.php:178
#, php-format
@@ -2872,8 +3044,8 @@ msgstr "Configurações gravadas."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Além do limite de página (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Além do limite de página (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2982,7 +3154,7 @@ msgstr "Já tem uma sessão iniciada!"
#: actions/recoverpassword.php:62
msgid "No such recovery code."
-msgstr "Esse código de recuperação não existe."
+msgstr "Código de recuperação não foi encontrado."
#: actions/recoverpassword.php:66
msgid "Not a recovery code."
@@ -3043,7 +3215,7 @@ msgstr "Reiniciar senha"
msgid "Recover password"
msgstr "Recuperar senha"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Solicitada recuperação da senha"
@@ -3063,20 +3235,20 @@ msgstr "Reiniciar"
msgid "Enter a nickname or email address."
msgstr "Introduza uma utilizador ou um endereço de correio electrónico."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
"Não existe nenhum utilizador com esse correio electrónico nem com esse nome."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Nenhum endereço de email registado para esse utilizador."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Erro ao guardar confirmação do endereço."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3084,109 +3256,130 @@ msgstr ""
"Instruções para recuperação da sua senha foram enviadas para o correio "
"electrónico registado na sua conta."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Reinício inesperado da senha."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Senha tem de ter 6 ou mais caracteres."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "A senha e a confirmação não coincidem."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Erro ao configurar utilizador."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "A senha nova foi gravada com sucesso. Iniciou uma sessão."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Desculpe, só pessoas convidadas se podem registar."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Desculpe, código de convite inválido."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registo efectuado"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registar"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registo não é permitido."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Não se pode registar se não aceita a licença."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Correio electrónico já existe."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Nome de utilizador ou senha inválidos."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Com este formulário pode criar uma conta nova. Poderá então publicar notas e "
"ligar-se a amigos e colegas. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 letras minúsculas ou números, sem pontuação ou espaços. Obrigatório."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 ou mais caracteres. Obrigatório."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Repita a senha acima. Obrigatório."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Correio"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Usado apenas para actualizações, anúncios e recuperação da senha"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nome mais longo, de preferência o seu nome \"verdadeiro\""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Os meus textos e ficheiros são disponibilizados nos termos da "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Compreendo que o conteúdo e dados do site %1$s são privados e confidenciais."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+"Os meus textos e ficheiros estão protegidos pelos direitos de autor de %1$s."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Atribuição 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+"Os meus textos e ficheiros permanecem protegidos pelos meus próprios "
+"direitos de autor."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Todos os direitos reservados."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" excepto estes dados privados: senha, endereço de correio electrónico, "
-"endereço de mensageiro instantâneo, número de telefone."
+"Os meus textos e ficheiros são disponibilizados nos termos da %s excepto "
+"estes dados privados: senha, endereço de correio electrónico, endereço de "
+"mensageiro instantâneo, número de telefone."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3219,7 +3412,7 @@ msgstr ""
"\n"
"Obrigado por se ter registado e esperamos que se divirta usando este serviço."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3264,7 +3457,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL do seu perfil noutro serviço de microblogues compatível"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Subscrever"
@@ -3302,7 +3495,7 @@ msgstr "Não pode repetir a sua própria nota."
msgid "You already repeated that notice."
msgstr "Já repetiu essa nota."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repetida"
@@ -3317,9 +3510,9 @@ msgid "Replies to %s"
msgstr "Respostas a %s"
#: actions/replies.php:128
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s, page %2$d"
-msgstr "Respostas a %1$s em %2$s!"
+msgstr "Respostas a %1$s, página %2$d"
#: actions/replies.php:145
#, php-format
@@ -3340,10 +3533,9 @@ msgstr "Fonte de respostas a %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
-"Estas são as notas de resposta a %1$s, mas %2$s ainda não recebeu nenhuma "
-"resposta."
+"Estas são as respostas a %1$s, mas ainda nenhuma nota foi endereçada a %2$s."
#: actions/replies.php:204
#, php-format
@@ -3357,11 +3549,11 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Pode tentar [dar um toque em %1$s](../%2$s) ou [publicar algo à sua atenção]"
-"(%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"Pode tentar [dar um toque em %1$s](../%2$s) ou [endereçar-lhe uma nota](%%%%"
+"action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3369,16 +3561,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Respostas a %1$s em %2$s!"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "Não pode silenciar utilizadores neste site."
+msgstr "Não pode retirar funções aos utilizadores neste site."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Utilizador sem perfil correspondente."
+msgstr "O utilizador não tem esta função."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3392,14 +3582,13 @@ msgstr "Utilizador já está impedido de criar notas públicas."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessões"
#: actions/sessionsadminpanel.php:65
-#, fuzzy
msgid "Session settings for this StatusNet site."
-msgstr "Configurações do estilo deste site StatusNet."
+msgstr "Configurações da sessão para este site StatusNet."
#: actions/sessionsadminpanel.php:175
msgid "Handle sessions"
@@ -3423,92 +3612,94 @@ msgid "Save site settings"
msgstr "Gravar configurações do site"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "Precisa de iniciar uma sessão para deixar um grupo."
+msgstr "Tem de iniciar uma sessão para ver uma aplicação."
#: actions/showapplication.php:157
-#, fuzzy
msgid "Application profile"
-msgstr "Nota não tem perfil"
+msgstr "Perfil da aplicação"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
-msgstr ""
+msgstr "Ãcone"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nome"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
-#, fuzzy
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
-msgstr "Paginação"
+msgstr "Organização"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Descrição"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Estatísticas"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "Criado por %1$s - acesso por omissão %2$s - %3$d utilizadores"
#: actions/showapplication.php:213
msgid "Application actions"
-msgstr ""
+msgstr "Operações da aplicação"
#: actions/showapplication.php:236
msgid "Reset key & secret"
-msgstr ""
+msgstr "Reiniciar chave e segredo"
#: actions/showapplication.php:261
msgid "Application info"
-msgstr ""
+msgstr "Informação da aplicação"
#: actions/showapplication.php:263
msgid "Consumer key"
-msgstr ""
+msgstr "Chave do consumidor"
#: actions/showapplication.php:268
msgid "Consumer secret"
-msgstr ""
+msgstr "Segredo do consumidor"
#: actions/showapplication.php:273
msgid "Request token URL"
-msgstr ""
+msgstr "URL da chave de pedido"
#: actions/showapplication.php:278
msgid "Access token URL"
-msgstr ""
+msgstr "URL da chave de acesso"
#: actions/showapplication.php:283
-#, fuzzy
msgid "Authorize URL"
-msgstr "Autor"
+msgstr "Autorizar URL"
#: actions/showapplication.php:288
msgid ""
"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
"signature method."
msgstr ""
+"Nota: Assinaturas HMAC-SHA1 são suportadas. O método de assinatura com texto "
+"simples não é suportado."
#: actions/showapplication.php:309
-#, fuzzy
msgid "Are you sure you want to reset your consumer key and secret?"
-msgstr "Tem a certeza de que quer apagar esta nota?"
+msgstr ""
+"Tem a certeza de que quer reiniciar a sua chave e segredo de consumidor?"
#: actions/showfavorites.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s's favorite notices, page %2$d"
-msgstr "Notas favoritas de %s"
+msgstr "Notas favoritas de %1$s, página %2$d"
#: actions/showfavorites.php:132
msgid "Could not retrieve favorite notices."
@@ -3541,8 +3732,8 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s ainda não adicionou nenhuma nota às favoritas. Publique algo interessante "
"que mude este estado de coisas :)"
@@ -3550,13 +3741,13 @@ msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s ainda não adicionou nenhuma nota às favoritas. Que tal [registar uma "
-"conta](%%action.register%%) e publicar algo interessante que mude este "
-"estado de coisas :)"
+"conta](%%%%action.register%%%%) e publicar algo tão interessante que mude "
+"este estado de coisas :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3568,71 +3759,71 @@ msgid "%s group"
msgstr "Grupo %s"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "Membros do grupo %1$s, página %2$d"
+msgstr "Grupo %1$s, página %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Perfil do grupo"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Anotação"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
-msgstr "Sinónimos"
+msgstr "Nomes alternativos"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Acções do grupo"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Fonte de notas do grupo %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Fonte de notas do grupo %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Fonte de notas do grupo %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF do grupo %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membros"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Nenhum)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Todos os membros"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Criado"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3648,7 +3839,7 @@ msgstr ""
"[Registe-se agora](%%action.register%%) para se juntar a este grupo e a "
"muitos mais! ([Saber mais](%%doc.help%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3661,7 +3852,7 @@ msgstr ""
"programa de Software Livre [StatusNet](http://status.net/). Os membros deste "
"grupo partilham mensagens curtas acerca das suas vidas e interesses. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Gestores"
@@ -3693,14 +3884,14 @@ msgid " tagged %s"
msgstr " categorizou %s"
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "Perfis bloqueados de %1$s, página %2$d"
+msgstr "%1$s, página %2$d"
#: actions/showstream.php:122
#, php-format
msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
-msgstr "Feed de notas de %1$s com a categoria %2$s (RSS 1.0)"
+msgstr "Fonte de notas de %1$s com a categoria %2$s (RSS 1.0)"
#: actions/showstream.php:129
#, php-format
@@ -3738,10 +3929,10 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Pode tentar dar um toque em %1$s ou [publicar algo à sua atenção](%%%%action."
+"Pode tentar dar um toque em %1$s ou [endereçar-lhe uma nota](%%%%action."
"newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
@@ -3772,7 +3963,7 @@ msgstr ""
#: actions/showstream.php:305
#, php-format
msgid "Repeat of %s"
-msgstr "Repetência de %s"
+msgstr "Repetições de %s"
#: actions/silence.php:65 actions/unsilence.php:65
msgid "You cannot silence users on this site."
@@ -3783,9 +3974,8 @@ msgid "User is already silenced."
msgstr "O utilizador já está silenciado."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "Configurações básicas para este site StatusNet."
+msgstr "Configurações básicas para este site StatusNet"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
@@ -3801,12 +3991,12 @@ msgid "Unknown language \"%s\"."
msgstr "Língua desconhecida \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "O valor mínimo de limite para o texto é 140 caracteres."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "O limite mínimo para o texto é 0 (sem limite)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr "O limite de duplicados tem de ser 1 ou mais segundos."
+msgid "Dupe limit must be one or more seconds."
+msgstr "O limite de duplicados tem de ser um ou mais segundos."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3853,13 +4043,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Fuso horário por omissão, para o site; normalmente, UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Idioma do site, por omissão"
+msgstr "Língua, por omissão"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Língua do site quando a sua detecção na configuração do browser não é "
+"possível"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3884,76 +4075,98 @@ msgstr ""
"mesma coisa outra vez."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Aviso do site"
+msgstr "Aviso do Site"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Mensagem nova"
+msgstr "Editar mensagem do site"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Não foi possível gravar as configurações do estilo."
+msgstr "Não foi possível gravar o aviso do site."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Tamanho máximo do aviso do site é 255 caracteres."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Aviso do site"
+msgstr "Texto do aviso do site"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "Texto do aviso do site (máx. 255 caracteres; pode usar HTML)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Aviso do site"
+msgstr "Gravar aviso do site"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Configurações de SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Pode receber SMSs do site %%site.name%% por correio electrónico."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS não está disponível."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Endereço SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Número de telefone com serviço SMS activo já confirmado."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "A aguardar confirmação deste número de telefone."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Código de confirmação"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Introduza o código que recebeu no seu telefone."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Número de telefone para SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Número de telefone, sem pontuação ou espaços, com código de área"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferências de SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3961,23 +4174,33 @@ msgstr ""
"Enviem-me notas por SMS; compreendo que o meu operador poderá vir a facturar-"
"me montantes exorbitantes."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Preferências de SMS gravadas."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Nenhum número de telefone."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Operador não foi seleccionado."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Esse já é o seu número de telefone."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Esse número de telefone já pertence a outro utilizador."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3986,23 +4209,40 @@ msgstr ""
"no seu telefone se recebeu o código e as respectivas instruções de "
"utilização."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Esse número de confirmação está errado."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Confirmação de SMS cancelada."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Esse número de telefone não é o seu."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Número de telefone para SMS foi removido."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operador móvel"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Seleccione um operador"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4012,20 +4252,20 @@ msgstr ""
"electrónico mas não está listado, diga-nos enviando um correio electrónico "
"para %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Nenhum código introduzido"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Instantâneos"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Alterar a configuração do site"
+msgstr "Alterar a configuração do instantâneo"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -4040,7 +4280,7 @@ msgid "Invalid snapshot report URL."
msgstr "URL para onde enviar instantâneos é inválida"
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Aleatoriamente, durante o acesso pela internet"
#: actions/snapshotadminpanel.php:201
@@ -4072,32 +4312,29 @@ msgid "Snapshots will be sent to this URL"
msgstr "Instantâneos serão enviados para esta URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Gravar configurações do site"
+msgstr "Gravar configurações do instantâneo"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Não subscreveu esse perfil."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Não foi possível gravar a subscrição."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "Esta operação só aceita pedidos POST."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "Ficheiro não foi encontrado."
+msgstr "Perfil não foi encontrado."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "Não subscreveu esse perfil."
+msgstr "Não pode subscrever um perfil remoto OMB 0.1 com esta operação."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4184,18 +4421,18 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s não está a ouvir ninguém."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
#: actions/tag.php:69
-#, fuzzy, php-format
+#, php-format
msgid "Notices tagged with %1$s, page %2$d"
-msgstr "Utilizadores auto-categorizados com %1$s - página %2$d"
+msgstr "Notas categorizadas com %1$s, página %2$d"
#: actions/tag.php:87
#, php-format
@@ -4221,12 +4458,12 @@ msgstr "Argumento de identificação (ID) em falta."
msgid "Tag %s"
msgstr "Categoria %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Perfil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4259,11 +4496,7 @@ msgstr ""
#: actions/tagrss.php:35
msgid "No such tag."
-msgstr "Categoria não existe."
-
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Método da API em desenvolvimento."
+msgstr "Categoria não foi encontrada."
#: actions/unblock.php:59
msgid "You haven't blocked that user."
@@ -4278,7 +4511,7 @@ msgid "User is not silenced."
msgstr "Utilizador não está silenciado."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "O pedido não tem a identificação do perfil."
#: actions/unsubscribe.php:98
@@ -4295,7 +4528,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Utilizador"
@@ -4317,7 +4549,8 @@ msgstr "Texto de boas-vindas inválido. Tamanho máx. é 255 caracteres."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Subscrição predefinida é inválida: '%1$s' não é utilizador."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Perfil"
@@ -4376,7 +4609,7 @@ msgstr ""
"subscrever as notas deste utilizador. Se não fez um pedido para subscrever "
"as notas de alguém, simplesmente clique \"Rejeitar\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licença"
@@ -4480,37 +4713,43 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Disfrute do seu cachorro-quente!"
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "Membros do grupo %1$s, página %2$d"
+msgstr "Grupos de %1$s, página %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Procurar mais grupos"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s não é membro de nenhum grupo."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "Tente [pesquisar grupos](%%action.groupsearch%%) e juntar-se a eles."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Actualizações de %1#s a %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4519,11 +4758,11 @@ msgstr ""
"Este site utiliza o %1$s versão %2$s, (c) 2008-2010 StatusNet, Inc. e "
"colaboradores."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Colaboradores"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4535,7 +4774,7 @@ msgstr ""
"Software Foundation, que na versão 3 da Licença, quer (por sua opção) "
"qualquer versão posterior. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4546,7 +4785,7 @@ msgstr ""
"QUALQUER GARANTIA. Consulte a GNU Affero General Public License para mais "
"informações. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4555,96 +4794,141 @@ msgstr ""
"Juntamente com este programa deve ter recebido uma cópia da GNU Affero "
"General Public License. Se não a tiver recebido, consulte %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Plugins"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Versão"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autores"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Não é possível processar a URL '$s'"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "o Robin acha que algo é impossível."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Nenhum ficheiro pode ter mais de %d bytes e o que enviou tinha %d bytes. "
-"Tente carregar uma versão menor."
+"Nenhum ficheiro pode ter mais de %1$d bytes e o que enviou tinha %2$d bytes. "
+"Tente enviar uma versão mais pequena."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
"Um ficheiro desta dimensão excederia a sua quota de utilizador de %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Um ficheiro desta dimensão excederia a sua quota mensal de %d bytes."
-#: classes/Group_member.php:41
-#, fuzzy
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Nome de ficheiro inválido."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
-msgstr "Perfil do grupo"
+msgstr "Entrada no grupo falhou."
-#: classes/Group_member.php:53
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
-msgstr "Não foi possível actualizar o grupo."
+msgstr "Não faz parte do grupo."
-#: classes/Group_member.php:60
-#, fuzzy
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
-msgstr "Perfil do grupo"
+msgstr "Saída do grupo falhou."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "Não foi possível actualizar o grupo."
+msgstr "Não foi possível actualizar o grupo local."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Não foi possível criar a chave de entrada para %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Não foi encontrado nenhum nome de base de dados ou DSN."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Está proibido de enviar mensagens directas."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Não foi possível inserir a mensagem."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Não foi possível actualizar a mensagem com a nova URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Não existe o perfil (%1$d) para a nota (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Erro na base de dados ao inserir a marca: %s"
+msgid "Database error inserting hashtag: %s"
+msgstr "Erro na base de dados ao inserir o elemento criptográfico: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problema na gravação da nota. Demasiado longa."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problema na gravação da nota. Utilizador desconhecido."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Demasiadas notas, demasiado rápido; descanse e volte a publicar daqui a "
"alguns minutos."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4652,308 +4936,368 @@ msgstr ""
"Demasiadas mensagens duplicadas, demasiado rápido; descanse e volte a "
"publicar daqui a alguns minutos."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Está proibido de publicar notas neste site."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problema na gravação da nota."
-#: classes/Notice.php:927
-#, fuzzy
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "O tipo fornecido ao método saveKnownGroups é incorrecto"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
-msgstr "Problema na gravação da nota."
+msgstr "Problema na gravação da caixa de entrada do grupo."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Não é possível revogar a função \"%1$s\" do utilizador #%2$d; não existe."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Não é possível revogar a função \"%1$s\" do utilizador #%2$d; erro na base "
+"de dados."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Perfil não existe."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Não foi possível gravar a categoria."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Foi bloqueado de fazer subscrições"
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Já subscrito!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "O utilizador bloqueou-o."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Não subscrito!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Não foi possível apagar a auto-subscrição."
-#: classes/Subscription.php:190
-#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Não foi possível apagar a subscrição."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr "Não foi possível apagar a chave OMB da subscrição."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Não foi possível apagar a subscrição."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "%1$s dá-lhe as boas-vindas, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Não foi possível criar o grupo."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Não foi possível configurar membros do grupo."
+msgstr "Não foi possível configurar a URI do grupo."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Não foi possível configurar membros do grupo."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Não foi possível gravar a subscrição."
+msgstr "Não foi possível gravar a informação do grupo local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Modificar as suas definições de perfil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Carregar um avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Modificar a sua senha"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Alterar manuseamento de email"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Altere o estilo do seu perfil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Outras"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Outras opções"
-#: lib/action.php:144
-#, fuzzy, php-format
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Outras"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
msgid "%1$s - %2$s"
-msgstr "%1$s (%2$s)"
+msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Página sem título"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navegação primária deste site"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Perfil pessoal e notas dos amigos"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Pessoal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Altere o seu endereço electrónico, avatar, senha, perfil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Ligar aos serviços"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Ligar"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Alterar a configuração do site"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Gestor"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Convidar amigos e colegas para se juntarem a si em %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Convidar"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Terminar esta sessão"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Sair"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Criar uma conta"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registar"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Iniciar uma sessão"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Entrar"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Ajudem-me!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Ajuda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Procurar pessoas ou pesquisar texto"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Pesquisa"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Aviso do site"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Vistas locais"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Aviso da página"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navegação secundária deste site"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ajuda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Sobre"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "Termos"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacidade"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Código"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contacto"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Emblema"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licença de software do StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** é um serviço de microblogues disponibilizado por [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** é um serviço de microblogues. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** é um serviço de microblogues."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4964,67 +5308,89 @@ msgstr ""
"disponibilizado nos termos da [GNU Affero General Public License](http://www."
"fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licença de conteúdos do site"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
-msgstr ""
+msgstr "O conteúdo e dados do site %1$s são privados e confidenciais."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
+"Direitos de autor sobre o conteúdo e dados, detidos por %1$s. Todos os "
+"direitos reservados."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
+"Direitos de autor sobre o conteúdo e dados detidos pelos contribuidores. "
+"Todos os direitos reservados."
-#: lib/action.php:847
-msgid "All "
-msgstr "Tudo "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licença."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+"Todo o conteúdo e dados do site %1$s são disponibilizados nos termos da "
+"licença %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginação"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Posteriores"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Anteriores"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"Era esperado um elemento raiz da fonte, mas foi recebido um documento XML "
+"inteiro."
-#: lib/activity.php:481
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "Ainda não é possível processar conteúdos remotos."
+
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "Ainda não é possível processar conteúdo XML embutido."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "Ainda não é possível processar conteúdo Base64 embutido."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Não pode fazer alterações a este site."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Não são permitidas alterações a esse painel."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() não implementado."
@@ -5034,163 +5400,189 @@ msgstr "showForm() não implementado."
msgid "saveSettings() not implemented."
msgstr "saveSettings() não implementado."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Não foi possível apagar a configuração do estilo."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuração básica do site"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuração do estilo"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Estilo"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
-#, fuzzy
+#: lib/adminpanelaction.php:366
msgid "User configuration"
-msgstr "Configuração das localizações"
+msgstr "Configuração do utilizador"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Utilizador"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
-#, fuzzy
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
-msgstr "Configuração do estilo"
+msgstr "Configuração de acesso"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configuração das localizações"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
-#, fuzzy
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
-msgstr "Configuração do estilo"
+msgstr "Configuração das sessões"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Aviso do site"
+msgstr "Editar aviso do site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Configuração das localizações"
+msgstr "Configuração dos instântaneos"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
-msgstr ""
-
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
+msgstr "API requer acesso de leitura e escrita, mas só tem acesso de leitura."
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
-msgstr ""
+msgstr "Editar aplicação"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
-msgstr ""
+msgstr "Ãcone para esta aplicação"
-#: lib/applicationeditform.php:204
-#, fuzzy, php-format
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
msgid "Describe your application in %d characters"
-msgstr "Descreva o grupo ou o assunto em %d caracteres"
+msgstr "Descreva a sua aplicação em %d caracteres"
-#: lib/applicationeditform.php:207
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
-msgstr "Descreva o grupo ou assunto"
+msgstr "Descreva a sua aplicação"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Código"
-
-#: lib/applicationeditform.php:218
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
-msgstr "URL da página ou do blogue, deste grupo ou assunto"
+msgstr "URL da página desta aplicação"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL de origem"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
-msgstr ""
+msgstr "Organização responsável por esta aplicação"
-#: lib/applicationeditform.php:230
-#, fuzzy
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
-msgstr "URL da página ou do blogue, deste grupo ou assunto"
+msgstr "URL da página desta organização"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
-msgstr ""
+msgstr "URL para onde reencaminhar após autenticação"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
-msgstr ""
+msgstr "Browser"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "Desktop"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "Tipo da aplicação, browser ou desktop"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
-msgstr ""
+msgstr "Leitura"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
-msgstr ""
+msgstr "Leitura e escrita"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
-msgstr ""
+msgstr "Acesso por omissão para esta aplicação: leitura ou leitura e escrita"
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "leitura e escrita"
-#: lib/applicationlist.php:154
-#, fuzzy
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "leitura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprovado a %1$s - acesso \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
-msgstr "Remover"
+msgstr "Retirar"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Anexos"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Fornecedor"
@@ -5202,45 +5594,64 @@ msgstr "Notas em que este anexo aparece"
msgid "Tags for this attachment"
msgstr "Categorias para este anexo"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Não foi possível mudar a palavra-chave"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Não é permitido mudar a palavra-chave"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultados do comando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Comando terminado"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Comando falhou"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Desculpe, este comando ainda não foi implementado."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Não existe nenhuma nota com essa identificação"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Utilizador não tem nenhuma última nota"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Não foi encontrado um utilizador com a alcunha %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Não foi encontrado um utilizador local com a alcunha %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Desculpe, este comando ainda não foi implementado."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Não faz muito sentido tocar-nos a nós mesmos!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Cotovelada enviada a %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5251,199 +5662,203 @@ msgstr ""
"Subscritores: %2$s\n"
"Notas: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Não existe nenhuma nota com essa identificação"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Utilizador não tem nenhuma última nota"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Nota marcada como favorita."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Já é membro desse grupo"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Não foi possível juntar o utilizador %s ao grupo %s"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s juntou-se ao grupo %s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Não foi possível remover o utilizador %s do grupo %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Não foi possível juntar o utilizador %1$s ao grupo %2$s"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s deixou o grupo %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Não foi possível remover %1$s do grupo %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nome completo: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Localidade: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Página pessoal: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Sobre: %s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s é um perfil remoto; só pode enviar mensagens directas a utilizadores no "
+"mesmo servidor."
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Mensagem demasiado extensa - máx. %d caracteres, enviou %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Mensagem directa para %s enviada"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Erro no envio da mensagem directa."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Não pode repetir a sua própria nota"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Já repetiu essa nota"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Nota de %s repetida"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Erro ao repetir nota."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Nota demasiado extensa - máx. %d caracteres, enviou %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Resposta a %s enviada"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Erro ao gravar nota."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Introduza o nome do utilizador para subscrever"
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "Utilizador não encontrado."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Não pode subscrever perfis OMB por comando."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Subscreveu %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Introduza o nome do utilizador para deixar de subscrever"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Deixou de subscrever %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Comando ainda não implementado."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notificação desligada."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Não foi possível desligar a notificação."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notificação ligada."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Não foi possível ligar a notificação."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Comando para iniciar sessão foi desactivado"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Esta ligação é utilizável uma única vez e só durante os próximos 2 minutos: %"
"s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
-msgstr "Deixou de subscrever %s"
+msgstr "Deixou de subscrever %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Não subscreveu ninguém."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Subscreveu esta pessoa:"
msgstr[1] "Subscreveu estas pessoas:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ninguém subscreve as suas notas."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Esta pessoa subscreve as suas notas:"
msgstr[1] "Estas pessoas subscrevem as suas notas:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Não está em nenhum grupo."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Está no grupo:"
msgstr[1] "Está nos grupos:"
-#: lib/command.php:769
-#, fuzzy
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5496,6 +5911,7 @@ msgstr ""
"d <utilizador> <texto> - mensagem directa para o utilizador\n"
"get <utilizador> - receber última nota do utilizador\n"
"whois <utilizador> - receber perfil do utilizador\n"
+"lose <utilizador> - obrigar o utilizador a deixar de subscrevê-lo\n"
"fav <utilizador> - adicionar última nota do utilizador às favoritas\n"
"fav #<id_da_nota> - adicionar nota com esta identificação às favoritas\n"
"repeat #<id_da_nota> - repetir uma nota com uma certa identificação\n"
@@ -5522,19 +5938,19 @@ msgstr ""
"tracks - ainda não implementado.\n"
"tracking - ainda não implementado.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Ficheiro de configuração não encontrado. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Procurei ficheiros de configuração nos seguintes sítios: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Talvez queira correr o instalador para resolver esta questão."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Ir para o instalador."
@@ -5551,13 +5967,12 @@ msgid "Updates by SMS"
msgstr "Actualizações por SMS"
#: lib/connectsettingsaction.php:120
-#, fuzzy
msgid "Connections"
-msgstr "Ligar"
+msgstr "Ligações"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "Aplicações ligadas autorizadas"
#: lib/dberroraction.php:60
msgid "Database error"
@@ -5637,7 +6052,7 @@ msgstr "Prosseguir"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Atribuir a este utilizador a função \"%s\""
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
@@ -5708,56 +6123,57 @@ msgstr "Grupos com mais notas"
msgid "Tags in %s group's notices"
msgstr "Categorias nas notas do grupo %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Esta página não está disponível num formato que você aceite"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato do ficheiro da imagem não é suportado."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Esse ficheiro é demasiado grande. O tamanho máximo de ficheiro é %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Transferência parcial."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Ocorreu um erro de sistema ao transferir o ficheiro."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Ficheiro não é uma imagem ou está corrompido."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato do ficheiro da imagem não é suportado."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Perdi o nosso ficheiro."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tipo do ficheiro é desconhecido"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
-#, fuzzy, php-format
+#: lib/jabber.php:567
+#, php-format
msgid "Unknown inbox source %d."
-msgstr "Língua desconhecida \"%s\"."
+msgstr "Origem da caixa de entrada desconhecida \"%s\"."
#: lib/joinform.php:114
msgid "Join"
@@ -5775,11 +6191,13 @@ msgstr "Iniciar sessão com um nome de utilizador e senha"
msgid "Sign up for a new account"
msgstr "Registar uma conta nova"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmação do endereço electrónico"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5808,12 +6226,24 @@ msgstr ""
"Obrigado pelo tempo que dedicou, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s está agora a ouvir as suas notas em %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Se acredita que esta conta está sendo usada abusivamente pode bloqueá-la da "
+"sua lista de subscritores e reportá-la como spam aos administradores do site "
+"em %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5839,17 +6269,20 @@ msgstr ""
"Altere o seu endereço de correio electrónico ou as opções de notificação em %"
"8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Bio: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Novo endereço electrónico para publicar no site %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5870,21 +6303,31 @@ msgstr ""
"Melhores cumprimentos,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Estado de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmação SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: confirme que este número de telefone é seu com este código:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s envia-lhe um toque"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5911,12 +6354,14 @@ msgstr ""
"Graciosamente,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nova mensagem privada de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5949,12 +6394,14 @@ msgstr ""
"Profusos cumprimentos,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) adicionou a sua nota às favoritas."
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5991,12 +6438,25 @@ msgstr ""
"Sinceramente,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"O diálogo completo pode ser lido aqui:\n"
+"\n"
+"\t%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) enviou uma nota à sua atenção"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6009,18 +6469,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) acaba de enviar uma nota à sua atenção (uma '@-resposta') em %2"
+"%1$s (@%9$s) acaba de enviar uma nota à sua atenção (uma 'resposta-@') em %2"
"$s.\n"
"\n"
-"a nota está aqui:\n"
+"A nota está aqui:\n"
"\n"
-"%3$s\n"
+"\t%3$s\n"
"\n"
-"E diz:\n"
+"Diz:\n"
"\n"
-"%4$s\n"
+"\t%4$s\n"
+"\n"
+"%5$sPode responder aqui:\n"
"\n"
+"\t%6$s\n"
+"\n"
+"A lista de todas as respostas-@ aqui:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Atenciosamente,\n"
+"%2$s\n"
+"\n"
+"P.S. Pode desligar estas notificações electrónicas aqui: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -6035,7 +6519,7 @@ msgstr ""
"conversa com outros utilizadores. Outros podem enviar-lhe mensagens, a que "
"só você terá acesso."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "de"
@@ -6094,24 +6578,24 @@ msgstr "Não foi possível gravar o ficheiro no disco."
msgid "File upload stopped by extension."
msgstr "Transferência do ficheiro interrompida pela extensão."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Ficheiro excede quota do utilizador."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Não foi possível mover o ficheiro para o directório de destino."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Não foi possível determinar o tipo MIME do ficheiro."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Tente usar outro tipo de %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s não é um tipo de ficheiro suportado neste servidor."
@@ -6129,7 +6613,6 @@ msgid "Available characters"
msgstr "Caracteres disponíveis"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Enviar"
@@ -6156,58 +6639,63 @@ msgid "Share my location"
msgstr "Partilhar a minha localização."
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "Não partilhar a minha localização."
+msgstr "Não partilhar a minha localização"
#: lib/noticeform.php:216
msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please "
"try again later"
msgstr ""
+"A obtenção da sua geolocalização está a demorar mais do que o esperado; "
+"tente novamente mais tarde"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "E"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "O"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "coords."
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "no contexto"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repetida por"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Responder a esta nota"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Responder"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Nota repetida"
@@ -6231,6 +6719,10 @@ msgstr "Erro ao inserir perfil novo"
msgid "Error inserting avatar"
msgstr "Erro ao inserir avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Erro ao actualizar o perfil remoto"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Erro ao inserir perfil remoto"
@@ -6276,11 +6768,11 @@ msgstr "Mensagens enviadas"
msgid "Tags in %s's notices"
msgstr "Categorias nas notas de %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Desconhecida"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Subscrições"
@@ -6288,31 +6780,32 @@ msgstr "Subscrições"
msgid "All subscriptions"
msgstr "Todas as subscrições"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Subscritores"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Todos os subscritores"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
-msgstr "ID do utilizador"
+msgstr "Número de identificação"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membro desde"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Média diária"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Todos os grupos"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Sem argumentos return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Método não implementado."
@@ -6336,22 +6829,30 @@ msgstr "Destaques"
msgid "Popular"
msgstr "Populares"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Sem argumentos return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Repetir esta nota?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Sim"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repetir esta nota"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Bloquear acesso deste utilizador a este grupo"
+msgstr "Retirar a função \"%s\" a este utilizador"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
-msgstr ""
+msgstr "Nenhum utilizador único definido para o modo de utilizador único."
#: lib/sandboxform.php:67
msgid "Sandbox"
@@ -6447,6 +6948,53 @@ msgstr "Nuvem da sua categorização das pessoas"
msgid "None"
msgstr "Nenhum"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Este servidor não pode processar uploads de temas sem suporte do formato ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "O ficheiro do tema não foi localizado ou o upload falhou."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Não foi possível gravar o tema."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Tema inválido: estrutura de directórios incorrecta."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"O tema carregado é demasiado grande; tem de ter menos de %d bytes "
+"descomprimido."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Arquivo do tema inválido: falta o ficheiro css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Tema contém um nome de ficheiro ou de directório inválido. Use somente "
+"letras ASCII, algarismos, sublinhados e o sinal de menos."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Tema contém um ficheiro do tipo '.%s', o que não é permitido."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Ocorreu um erro ao abrir o arquivo do tema."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Quem mais publica"
@@ -6475,92 +7023,108 @@ msgstr "Deixar de subscrever este utilizador"
msgid "Unsubscribe"
msgstr "Abandonar"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Utilizador %s (%d) não tem perfil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Editar Avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Acções do utilizador"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "A apagar o utilizador..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Editar configurações do perfil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Editar"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Enviar mensagem directa a este utilizador"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Mensagem"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderar"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Perfil"
+msgstr "Função"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Gestores"
+msgstr "Gestor"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Moderar"
+msgstr "Moderador"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "há alguns segundos"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "há cerca de um minuto"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "há cerca de %d minutos"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "há cerca de uma hora"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "há cerca de %d horas"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "há cerca de um dia"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "há cerca de %d dias"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "há cerca de um mês"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "há cerca de %d meses"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "há cerca de um ano"
@@ -6574,7 +7138,7 @@ msgstr "%s não é uma cor válida!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s não é uma cor válida! Use 3 ou 6 caracteres hexadecimais."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Mensagem demasiado extensa - máx. %1$d caracteres, enviou %2$d."
diff --git a/locale/pt_BR/LC_MESSAGES/statusnet.po b/locale/pt_BR/LC_MESSAGES/statusnet.po
index 51d926eba..53468a064 100644
--- a/locale/pt_BR/LC_MESSAGES/statusnet.po
+++ b/locale/pt_BR/LC_MESSAGES/statusnet.po
@@ -2,6 +2,8 @@
#
# Author@translatewiki.net: Aracnus
# Author@translatewiki.net: Ewout
+# Author@translatewiki.net: Giro720
+# Author@translatewiki.net: Luckas Blade
# Author@translatewiki.net: McDutchie
# Author@translatewiki.net: Vuln
# --
@@ -11,12 +13,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:51+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:55+0000\n"
"Language-Team: Brazilian Portuguese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: pt-br\n"
"X-Message-Group: out-statusnet\n"
@@ -24,7 +26,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Acesso"
@@ -45,10 +47,9 @@ msgstr "Impedir usuários anônimos (não autenticados) de visualizar o site?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
-msgstr "Particular"
+msgstr "Privado"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
@@ -75,79 +76,83 @@ msgstr "Fechado"
msgid "Save access settings"
msgstr "Salvar as configurações de acesso"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Salvar"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "Esta página não existe."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Este usuário não existe."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s e amigos, pág. %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s e amigos"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Fonte de mensagens dos amigos de %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Fonte de mensagens dos amigos de %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Fonte de mensagens dos amigos de %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
@@ -155,7 +160,7 @@ msgstr ""
"Esse é o fluxo de mensagens de %s e seus amigos, mas ninguém publicou nada "
"ainda."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -165,84 +170,86 @@ msgstr ""
"publicar algo."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Você pode tentar [chamar a atenção de %1$s](../%2$s) em seu perfil ou "
"[publicar alguma coisa que desperte seu interesse](%%%%action.newnotice%%%%?"
"status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Por que não [registrar uma conta](%%%%action.register%%%%) e então chamar a "
"atenção de %s ou publicar uma mensagem para sua atenção."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Você e amigos"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Atualizações de %1$s e amigos no %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "O método da API não foi encontrado!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Este método requer um POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-"Você pode especificar um parâmetro denominado 'device', com um dos valores: "
-"sms, im, none"
+"Você tem que especificar um parâmetro denominado 'device', com um desses "
+"valores: sms, im, none"
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Não foi possível atualizar o usuário."
@@ -251,7 +258,7 @@ msgstr "Não foi possível atualizar o usuário."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "O usuário não tem perfil."
@@ -261,9 +268,9 @@ msgid "Could not save profile."
msgstr "Não foi possível salvar o perfil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -321,48 +328,49 @@ msgstr "Mensagens diretas para %s"
msgid "All the direct messages sent to %s"
msgstr "Todas as mensagens diretas enviadas para %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Nenhuma mensagem de texto!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Isso é muito extenso. O tamanho máximo das mensagens é %d caracteres."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "O usuário destinatário não foi encontrado."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Não é possível enviar mensagens diretas para usuários que não sejam seus "
"amigos."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Não foi encontrado nenhum status com esse ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Esta mensagem já é favorita!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Não foi possível criar a favorita."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Essa mensagem não é favorita!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Não foi possível excluir a favorita."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Não é possível seguir o usuário: Usuário não encontrado."
#: actions/apifriendshipscreate.php:118
@@ -378,8 +386,9 @@ msgstr "Não é possível deixar de seguir o usuário: Usuário não encontrado.
msgid "You cannot unfollow yourself."
msgstr "Você não pode deixar de seguir você mesmo!"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Duas IDs de usuário ou screen_names devem ser informados."
#: actions/apifriendshipsshow.php:134
@@ -390,117 +399,130 @@ msgstr "Não foi possível determinar o usuário de origem."
msgid "Could not find target user."
msgstr "Não foi possível encontrar usuário de destino."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"A identificação deve conter apenas letras minúsculas e números e não pode "
"ter e espaços."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Esta identificação já está em uso. Tente outro."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Não é uma identificação válida."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "A URL informada não é válida."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Nome completo muito extenso (máx. 255 caracteres)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Descrição muito extensa (máximo %d caracteres)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Localização muito extensa (máx. 255 caracteres)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Muitos apelidos! O máximo são %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Apelido inválido: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Apelido inválido: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "O apelido \"%s\" já está em uso. Tente outro."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "O apelido não pode ser igual à identificação."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "O grupo não foi encontrado!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "O grupo não foi encontrado."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Você já é membro desse grupo."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "O administrador desse grupo bloqueou sua inscrição."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Não foi possível associar o usuário %1$s ao grupo %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Você não é membro deste grupo."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Não foi possível remover o usuário %1$s do grupo %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Grupos de %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Grupos de %1$s nos quais %2$s é membro."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Grupos de %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "grupos no %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Enviar arquivo"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Não foi fornecido nenhum parâmetro oauth_token"
@@ -510,17 +532,17 @@ msgid "Invalid token."
msgstr "Token inválido."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -556,12 +578,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "O token %s solicitado foi negado e revogado."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Submissão inesperada de formulário."
@@ -585,20 +610,22 @@ msgstr ""
"fornecer acesso à sua conta %4$s somente para terceiros nos quais você "
"confia."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Conta"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Usuário"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Senha"
@@ -614,11 +641,11 @@ msgstr "Permitir"
msgid "Allow or deny access to your account information."
msgstr "Permitir ou negar o acesso às informações da sua conta."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Esse método requer um POST ou DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Você não pode excluir uma mensagem de outro usuário."
@@ -629,65 +656,69 @@ msgstr "Essa mensagem não existe."
#: actions/apistatusesretweet.php:83
msgid "Cannot repeat your own notice."
-msgstr "Você não pode repetria sua própria mensagem."
+msgstr "Você não pode repetir a sua própria mensagem."
#: actions/apistatusesretweet.php:91
msgid "Already repeated that notice."
msgstr "Você já repetiu essa mensagem."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "A mensagem foi excluída."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Não foi encontrada nenhuma mensagem com esse ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Está muito extenso. O tamanho máximo é de %s caracteres."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Não encontrado"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Não encontrado."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "O tamanho máximo da mensagem é de %s caracteres"
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Formato não suportado."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoritas de %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s marcadas como favoritas por %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Mensagens mencionando %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
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."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "Mensagens públicas de %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s mensagens de todo mundo!"
@@ -702,19 +733,19 @@ msgstr "Repetida para %s"
msgid "Repeats of %s"
msgstr "Repetições de %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Mensagens etiquetadas como %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Mensagens etiquetadas como %1$s no %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Não encontrado."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "O método da API está em construção."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -735,8 +766,9 @@ msgstr "Sem tamanho definido."
msgid "Invalid size."
msgstr "Tamanho inválido."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -747,9 +779,9 @@ msgstr ""
"Você pode enviar seu avatar pessoal. O tamanho máximo do arquivo é de %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr "Usuário sem um perfil correspondente"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -768,7 +800,7 @@ msgid "Preview"
msgstr "Visualização"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Excluir"
@@ -780,23 +812,27 @@ msgstr "Enviar"
msgid "Crop"
msgstr "Cortar"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Não foi enviado nenhum arquivo."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Selecione uma área quadrada da imagem para ser seu avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Os dados do nosso arquivo foram perdidos."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "O avatar foi atualizado."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Não foi possível atualizar o avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "O avatar foi excluído."
@@ -804,11 +840,11 @@ msgstr "O avatar foi excluído."
msgid "You already blocked that user."
msgstr "Você já bloqueou esse usuário."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Bloquear usuário"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -819,27 +855,42 @@ msgstr ""
"nenhuma notificação acerca de qualquer citação (@usuário) que ele fizer de "
"você."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Não"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Não bloquear este usuário"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Sim"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Bloquear este usuário"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Não foi possível salvar a informação de bloqueio."
@@ -852,8 +903,8 @@ msgstr "Não foi possível salvar a informação de bloqueio."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Esse grupo não existe."
@@ -883,9 +934,11 @@ msgstr "Desbloquear"
msgid "Unblock this user"
msgstr "Desbloquear este usuário"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Enviar para "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Publicar em %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -899,33 +952,43 @@ msgstr "O código de confirmação não foi encontrado."
msgid "That confirmation code is not for you!"
msgstr "Esse não é o seu código de confirmação!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Tipo de endereço desconhecido %s"
+msgid "Unrecognized address type %s."
+msgstr "Tipo de endereço %s não reconhecido."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Esse endereço já foi confirmado."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Não foi possível atualizar o usuário."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Não foi possível excluir a confirmação de e-mail."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Confirme o endereço"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "O endereço \"%s\" foi confirmado para sua conta."
@@ -935,7 +998,7 @@ msgid "Conversation"
msgstr "Conversa"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Mensagens"
@@ -954,7 +1017,7 @@ msgstr "Você não é o dono desta aplicação."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Ocorreu um problema com o seu token de sessão."
@@ -972,21 +1035,23 @@ msgstr ""
"desta aplicação do banco de dados, incluindo todas as conexões existentes "
"com os usuários."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Não excluir esta aplicação"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Excluir esta aplicação"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Você não está autenticado."
@@ -1011,11 +1076,13 @@ msgstr "Excluir a mensagem"
msgid "Are you sure you want to delete this notice?"
msgstr "Tem certeza que deseja excluir esta mensagem?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Não excluir esta mensagem."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Excluir esta mensagem"
@@ -1039,58 +1106,71 @@ msgstr ""
"Tem certeza que deseja excluir este usuário? Isso eliminará todos os dados "
"deste usuário do banco de dados, sem cópia de segurança."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Excluir este usuário"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Aparência"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Configurações da aparência deste site StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "A URL da logo é inválida."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema não disponível: %s"
+msgid "Theme not available: %s."
+msgstr "Tema não disponível: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Alterar a logo"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Logo do site"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Alterar o tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Tema do site"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema para o site."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Tema personalizado"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+"Você pode enviar um tema personalizado para o StatusNet, na forma de um "
+"arquivo .zip."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Alterar imagem do fundo"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Fundo"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1099,67 +1179,76 @@ msgstr ""
"Você pode enviar uma imagem de fundo para o site. O tamanho máximo do "
"arquivo é de %1 $s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Ativado"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Desativado"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Ativar/desativar a imagem de fundo."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Ladrilhar a imagem de fundo"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Alterar a cor"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Conteúdo"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Barra lateral"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Texto"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Links"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avançado"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "CSS personalizado"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Usar o padrão|"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Restaura a aparência padrão"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Restaura de volta ao padrão"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Salvar"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Salvar a aparência"
@@ -1264,11 +1353,17 @@ msgstr "Use esse formulário para editar o grupo."
msgid "description is too long (max %d chars)."
msgstr "descrição muito extensa (máximo %d caracteres)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Apelido inválido: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Não foi possível atualizar o grupo."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Não foi possível criar os apelidos."
@@ -1276,31 +1371,42 @@ msgstr "Não foi possível criar os apelidos."
msgid "Options saved."
msgstr "As configurações foram salvas."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "Configurações do e-mail"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Configure o recebimento de e-mails de %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Endereço"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Endereço de e-mail"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Endereço de e-mail já confirmado."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Remover"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1308,110 +1414,140 @@ msgstr ""
"Aguardando a confirmação deste endereço. Procure em sua caixa de entrada (e "
"de spam!) por uma mensagem com mais instruções."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Cancelar"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Endereço de e-mail"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Endereço de e-mail, ex: \"usuario@exemplo.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Adicionar"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "E-mail de recebimento"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Envie e-mails para esse endereço para publicar novas mensagens."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Cria um novo endereço de e-mail para publicar e cancela o antigo."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Novo"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Preferências"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Preferências de e-mail"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Envie-me notificações de novos assinantes por e-mail."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Envie-me um e-mail quando alguém adicionar alguma mensagem minha como "
"favorita."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Envie-me um e-mail quando alguém me mandar uma mensagem particular."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
"Envie-me um e-mail quando alguém mandar uma mensagem citando meu nome "
"(\"@nome\")."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Permita que meus amigos chamem minha atenção e enviem-me e-mails."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Eu quero publicar mensagens por e-mail."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publique um MicroID para meu endereço de e-mail."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "As preferências foram salvas."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "As configurações de e-mail foram salvas."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Nenhum endereço de e-mail."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Não foi possível normalizar este endereço de e-mail"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Não é um endereço de e-mail válido."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Esse já é seu endereço de e-mail."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Esse endereço de e-mail já pertence à outro usuário."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Não foi possível inserir o código de confirmação."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1420,43 +1556,53 @@ msgstr ""
"informou. Verifique a sua caixa de entrada (e de spam!) para o código e "
"instruções sobre como usá-lo."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Nenhuma confirmação pendente para cancelar."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Isso é um endereço de MI errado."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Esse é o endereço de e-mail errado."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "A confirmação foi cancelada."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "A confirmação por e-mail foi cancelada."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Esse não é seu endereço de email."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "O endereço foi removido."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "O endereço de e-mail foi removido."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Nenhum endereço de e-mail para recebimentos."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Não foi possível atualizar o registro do usuário."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "O endereço de e-mail de recebimento foi removido."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
"Foi adicionado um novo endereço de e-mail para recebimento de mensagens."
@@ -1576,9 +1722,9 @@ msgstr "Não foi possível converter o token de requisição para token de acess
msgid "Remote service uses unknown version of OMB protocol."
msgstr "O serviço remoto usa uma versão desconhecida do protocolo OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Ocorreu um erro na atualização do perfil remoto"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Ocorreu um erro durante a atualização do perfil remoto."
#: actions/getfile.php:79
msgid "No such file."
@@ -1589,33 +1735,30 @@ msgid "Cannot read file."
msgstr "Não foi possível ler o arquivo."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "Token inválido."
+msgstr "Papel inválido."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
-msgstr ""
+msgstr "Este papel está reservado e não pode ser definido."
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "Você não pode colocar usuários deste site em isolamento."
+msgstr "Você não pode definir papéis para os usuários neste site."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "O usuário já está silenciado."
+msgstr "O usuário já possui este papel."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Não foi especificado nenhum perfil."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Não foi encontrado nenhum perfil com esse ID."
@@ -1636,11 +1779,11 @@ msgstr "O usuário já está bloqueado no grupo."
msgid "User is not a member of group."
msgstr "O usuário não é um membro do grupo"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Bloquear o usuário no grupo"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1651,15 +1794,17 @@ msgstr ""
"será removido do grupo e impossibilitado de publicar e de se juntar ao grupo "
"futuramente."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Não bloquear este usuário neste grupo"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Bloquear este usuário neste grupo"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
"Ocorreu um erro no banco de dados ao tentar bloquear o usuário no grupo."
@@ -1705,10 +1850,6 @@ msgstr ""
"Você pode enviar uma imagem de logo para o seu grupo. O tamanho máximo do "
"arquivo é %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Usuário sem um perfil correspondente"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Selecione uma área quadrada da imagem para definir a logo"
@@ -1739,34 +1880,38 @@ msgstr "Uma lista dos usuários deste grupo."
msgid "Admin"
msgstr "Admin"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Bloquear"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Tornar o usuário um administrador do grupo"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Tornar administrador"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Torna este usuário um administrador"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Mensagens de %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Atualizações dos membros de %1$s no %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupos"
@@ -1791,7 +1936,7 @@ msgstr ""
"\". Não encontrou um grupo que lhe agrade? Experimente [procurar por um](%%%%"
"action.groupsearch%%%%) ou [criar o seu próprio!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Criar um novo grupo"
@@ -1843,11 +1988,15 @@ msgstr "O usuário não está bloqueado no grupo."
msgid "Error removing the block."
msgstr "Erro na remoção do bloqueio."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Configurações do MI"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1856,15 +2005,24 @@ msgstr ""
"Você pode enviar e receber mensagens através dos [mensageiros instantâneos](%"
"%doc.im%%) Jabber/GTalk. Configure seu endereço e opções abaixo."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "MI não está disponível"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Endereço do MI"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Endereço de Jabber/GTalk já confirmado."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1874,11 +2032,9 @@ msgstr ""
"GTalk por uma mensagem com mais instruções (Você adicionou %s à sua lista de "
"contatos?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Endereço do MI"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1888,45 +2044,66 @@ msgstr ""
"certifique-se de adicionar %s à sua lista de contatos em seu cliente de MI "
"ou no GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Preferências do mensageiro instantâneo"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Envie-me mensagens via Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Publicar uma mensagem quando eu mudar de status no Jabber/GTalk."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Envie-me respostas de pessoas que eu não estou assinando através do Jabber/"
"GTalk."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publique um MicroID para meu endereço de Jabber/Gtalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "As preferências foram salvas."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Nenhuma ID de Jabber."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Não foi possível normalizar essa ID do Jabber"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Não é uma ID de Jabber válida"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Essa já é sua ID do Jabber."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Esta ID do Jabber já pertence à outro usuário."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1935,10 +2112,32 @@ msgstr ""
"Um código de confirmação foi enviado para o endereço de IM que você "
"informou. Você deve permitir que %s envie mensagens para você."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Isso é um endereço de MI errado."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Não foi possível excluir a confirmação do mensageiro instantâneo."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "A confirmação do mensageiro instantâneo foi cancelada."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Essa não é sua ID do Jabber."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "O endereço de mensageiro instantâneo foi removido."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1961,9 +2160,9 @@ msgstr "Os convites foram desabilitados."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Você deve estar autenticado para convidar outros usuários para usar o %s"
+"Você deve estar autenticado para convidar outros usuários para usar o %s."
#: actions/invite.php:72
#, php-format
@@ -1982,7 +2181,9 @@ msgstr "Convidar novos usuários"
msgid "You are already subscribed to these users:"
msgstr "Você já está assinando esses usuários:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2029,17 +2230,18 @@ msgstr "Você pode, opcionalmente, adicionar uma mensagem pessoal ao convite."
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "Enviar"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s convidou você para se juntar a %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2101,11 +2303,12 @@ msgid "You must be logged in to join a group."
msgstr "Você deve estar autenticado para se associar a um grupo."
#: actions/joingroup.php:88 actions/leavegroup.php:88
-#, fuzzy
msgid "No nickname or ID."
-msgstr "Nenhuma identificação."
+msgstr "Nenhum apelido ou identificação."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s associou-se ao grupo %2$s"
@@ -2114,51 +2317,53 @@ msgstr "%1$s associou-se ao grupo %2$s"
msgid "You must be logged in to leave a group."
msgstr "Você deve estar autenticado para sair de um grupo."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Você não é um membro desse grupo."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s deixou o grupo %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Já está autenticado."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Nome de usuário e/ou senha incorreto(s)."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
"Erro na configuração do usuário. Você provavelmente não tem autorização."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Entrar"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Autenticar-se no site"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Lembrar neste computador"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Entra automaticamente da próxima vez, sem pedir a senha. Não use em "
"computadores compartilhados!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Perdeu ou esqueceu sua senha?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2166,14 +2371,16 @@ msgstr ""
"Por razões de segurança, por favor, digite novamente seu nome de usuário e "
"senha antes de alterar suas configurações."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Autentique-se com seu nome de usuário e senha."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Digite seu nome de usuário e senha. Ainda não possui um usuário? [Registre](%"
-"%action.register%%) uma nova conta."
+"Ainda não possui um usuário? [Registre](%%action.register%%) uma nova conta."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2197,8 +2404,8 @@ 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."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Nenhuma mensagem atual"
+msgid "No current status."
+msgstr "Nenhuma mensagem atual."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2232,12 +2439,12 @@ msgstr "Utilize este formulário para criar um novo grupo."
msgid "New message"
msgstr "Nova mensagem"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Você não pode enviar mensagens para este usuário."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Nenhum conteúdo!"
@@ -2245,7 +2452,7 @@ msgstr "Nenhum conteúdo!"
msgid "No recipient specified."
msgstr "Não foi especificado nenhum destinatário."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2261,7 +2468,7 @@ msgstr "A mensagem foi enviada"
msgid "Direct message to %s sent."
msgstr "A mensagem direta para %s foi enviada."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Erro no Ajax"
@@ -2269,7 +2476,7 @@ msgstr "Erro no Ajax"
msgid "New notice"
msgstr "Nova mensagem"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "A mensagem foi publicada"
@@ -2321,8 +2528,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Mensagens correspondentes aos termos \"%1$s\" no %2$s!"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Esse usuário não permite ser chamado à atenção ou ainda não confirmou ou "
"configurou seu e-mail."
@@ -2365,11 +2573,11 @@ msgid "You are not a user of that application."
msgstr "Você não é um usuário dessa aplicação."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Não foi possível revogar o acesso para a aplicação: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Não foi possível revogar o acesso para a aplicação: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Você não autorizou nenhuma aplicação a usar a sua conta."
@@ -2379,25 +2587,30 @@ msgstr ""
"Os desenvolvedores podem editar as configurações de registro para suas "
"aplicações "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "A mensagem não está associada a nenhum perfil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "A mensagem não está associada a nenhum perfil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Mensagem de %1$s no %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "tipo de conteúdo "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "O tipo de conteúdo %s não é suportado."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Apenas "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Por favor, somente URLs %s sobre HTTP puro."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Não é um formato de dados suportado."
@@ -2502,7 +2715,7 @@ msgid "6 or more characters"
msgstr "No mínimo 6 caracteres"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Confirmar"
@@ -2514,11 +2727,11 @@ msgstr "Igual à senha acima"
msgid "Change"
msgstr "Alterar"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "A senha deve ter, no mínimo, 6 caracteres."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "As senhas não coincidem."
@@ -2530,7 +2743,7 @@ msgstr "A senha anterior está errada"
msgid "Error saving user; invalid."
msgstr "Erro ao salvar usuário; inválido."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Não é possível salvar a nova senha."
@@ -2539,7 +2752,7 @@ msgid "Password saved."
msgstr "A senha foi salva."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Caminhos"
@@ -2549,23 +2762,23 @@ msgstr "Configurações dos caminhos e do servidor para este site StatusNet."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Sem permissão de leitura no diretório de temas: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Sem permissão de leitura no diretório de temas: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Sem permissão de escrita no diretório de avatares: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Sem permissão de escrita no diretório de avatares: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Sem permissão de escrita no diretório de imagens de fundo: %s"
+msgid "Background directory not writable: %s."
+msgstr "Sem permissão de escrita no diretório de imagens de fundo: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Sem permissão de leitura no diretório de locales: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Sem permissão de leitura no diretório de locales: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2705,19 +2918,19 @@ msgstr ""
msgid "People search"
msgstr "Procurar pessoas"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Não é uma etiqueta de pessoa válida: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Não é uma etiqueta de pessoa válida: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Usuários auto-etiquetados com %1$s - pág. %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "O conteúdo da mensagem é inválido"
+msgid "Invalid notice content."
+msgstr "O conteúdo da mensagem é inválido."
#: actions/postnotice.php:101
#, php-format
@@ -2744,42 +2957,43 @@ msgstr "Informações do perfil"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 letras minúsculas ou números, sem pontuações ou espaços"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Nome completo"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Site"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL do seu site, blog ou perfil em outro site"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Descreva a si mesmo e os seus interesses em %d caracteres"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Descreva a si mesmo e os seus interesses"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Descrição"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Localização"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Onde você está, ex: \"cidade, estado (ou região), país\""
@@ -2789,7 +3003,7 @@ msgstr "Compartilhe minha localização atual ao publicar mensagens"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Etiquetas"
@@ -2822,7 +3036,7 @@ msgid ""
msgstr ""
"Assinar automaticamente à quem me assinar (melhor para perfis não humanos)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "A descrição é muito extensa (máximo %d caracteres)."
@@ -2863,8 +3077,8 @@ msgstr "As configurações foram salvas."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Além do limite da página (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Além do limite da página (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3032,7 +3246,7 @@ msgstr "Restaurar a senha"
msgid "Recover password"
msgstr "Recuperar a senha"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Foi solicitada a recuperação da senha"
@@ -3052,21 +3266,21 @@ msgstr "Restaurar"
msgid "Enter a nickname or email address."
msgstr "Digite a identificação ou endereço de e-mail."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
"Não foi encontrado nenhum usuário com essa identificação ou endereço de "
"email."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Nenhum endereço de e-mail registrado para esse usuário."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Erro ao salvar o endereço de confirmação."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3074,111 +3288,130 @@ msgstr ""
"As instruções para recuperar a sua senha foram enviadas para o endereço de e-"
"mail informado no seu cadastro."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Restauração inesperada da senha."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "A senha deve ter 6 ou mais caracteres."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "A senha e a confirmação não coincidem."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Erro na configuração do usuário."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr ""
"A nova senha foi salva com sucesso. A partir de agora você já está "
"autenticado."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Desculpe, mas somente convidados podem se registrar."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Desculpe, mas o código do convite é inválido."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registro realizado com sucesso"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrar-se"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Não é permitido o registro."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Você não pode se registrar se não aceitar a licença."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "O endereço de e-mail já existe."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Nome de usuário e/ou senha inválido(s)"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Através deste formulário você pode criar uma nova conta. A partir daí você "
"pode publicar mensagens e se conectar a amigos e colegas. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 letras minúsculas ou números, sem pontuação ou espaços. Obrigatório."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "No mínimo 6 caracteres. Obrigatório."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Igual à senha acima. Obrigatório."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-mail"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Usado apenas para atualizações, anúncios e recuperações de senha"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Nome completo, de preferência seu nome \"real\""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Meus textos e arquivos estão disponíveis sob "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Eu entendo que o conteúdo e os dados de %1$s são particulares e "
+"confidenciais."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Meus textos e arquivos estão licenciados sob a %1$s."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Meus textos e arquivos permanecem sob meus próprios direitos autorais."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Todos os direitos reservados."
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" exceto estes dados particulares: senha, endereço de e-mail, endereço de MI "
+"Meus textos e arquivos estão disponíveis sob a %s, exceto estes dados "
+"particulares: senha, endereço de e-mail, endereço do mensageiro instantâneo "
"e número de telefone."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3211,7 +3444,7 @@ msgstr ""
"\n"
"Obrigado por se registrar e esperamos que você aproveite o serviço."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3256,7 +3489,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL do seu perfil em outro serviço de microblog compatível"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Assinar"
@@ -3293,7 +3526,7 @@ msgstr "Você não pode repetir sua própria mensagem."
msgid "You already repeated that notice."
msgstr "Você já repetiu essa mensagem."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Repetida"
@@ -3328,10 +3561,10 @@ msgid "Replies feed for %s (Atom)"
msgstr "Fonte de respostas para %s (Atom)"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Esse é o fluxo de mensagens de resposta para %1$s, mas %2$s ainda não "
"recebeu nenhuma mensagem direcionada a ele(a)."
@@ -3346,10 +3579,10 @@ msgstr ""
"pessoas ou [associe-se a grupos](%%action.groups%%)."
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Você pode tentar [chamar a atenção de %1$s](../%2$s) ou [publicar alguma "
"coisa que desperte seu interesse](%%%%action.newnotice%%%%?status_textarea=%3"
@@ -3361,16 +3594,14 @@ msgid "Replies to %1$s on %2$s!"
msgstr "Respostas para %1$s no %2$s"
#: actions/revokerole.php:75
-#, fuzzy
msgid "You cannot revoke user roles on this site."
-msgstr "Você não pode silenciar os usuários neste site."
+msgstr "Não é possível revogar os papéis dos usuários neste site."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Usuário sem um perfil correspondente"
+msgstr "O usuário não possui este papel."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3384,7 +3615,7 @@ msgstr "O usuário já está em isolamento."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessões"
@@ -3398,7 +3629,7 @@ msgstr "Gerenciar sessões"
#: actions/sessionsadminpanel.php:177
msgid "Whether to handle sessions ourselves."
-msgstr "Define se nós cuidamos do gerenciamento das sessões."
+msgstr "Define se as sessões terão gerenciamento próprio."
#: actions/sessionsadminpanel.php:181
msgid "Session debugging"
@@ -3421,26 +3652,30 @@ msgstr "Você deve estar autenticado para visualizar uma aplicação."
msgid "Application profile"
msgstr "Perfil da aplicação"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Ãcone"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Nome"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organização"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Descrição"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Estatísticas"
@@ -3527,20 +3762,20 @@ msgstr ""
"para destacar."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s não adicionou nenhuma mensagem às suas favoritas. Publique alguma coisa "
"interessante para para as pessoas marcarem como favorita. :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s não adicionou nenhuma mensagem às suas favoritas. Por que você não "
"[registra uma conta](%%%%action.register%%%%) e publica alguma coisa "
@@ -3560,67 +3795,67 @@ msgstr "Grupo %s"
msgid "%1$s group, page %2$d"
msgstr "Grupo %1$s, pág. %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Perfil do grupo"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "Site"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Mensagem"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Apelidos"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Ações do grupo"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Fonte de mensagens do grupo %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Fonte de mensagens do grupo %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Fonte de mensagens do grupo %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF para o grupo %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Membros"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Nenhum)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Todos os membros"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Criado"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3636,7 +3871,7 @@ msgstr ""
"para se tornar parte deste grupo e muito mais! ([Saiba mais](%%%%doc.help%%%"
"%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3649,7 +3884,7 @@ msgstr ""
"[StatusNet](http://status.net/). Seus membros compartilham mensagens curtas "
"sobre suas vidas e interesses. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administradores"
@@ -3726,10 +3961,10 @@ msgstr ""
"mensagem. Que tal começar agora? :)"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Você pode tentar chamar a atenção de %1$s ou [publicar alguma coisa que "
"desperte seu interesse](%%%%action.newnotice%%%%?status_textarea=%2$s)."
@@ -3773,7 +4008,6 @@ msgid "User is already silenced."
msgstr "O usuário já está silenciado."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
msgstr "Configurações básicas para esta instância do StatusNet."
@@ -3791,11 +4025,11 @@ msgid "Unknown language \"%s\"."
msgstr "Idioma \"%s\" desconhecido."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "O comprimento máximo do texto é de 140 caracteres."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "O valor mínimo para o limite de texto é 0 (sem limites)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr "O limite de duplicatas deve ser de um ou mais segundos."
#: actions/siteadminpanel.php:221
@@ -3843,13 +4077,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Fuso horário padrão para o seu site; geralmente UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Idioma padrão do site"
+msgstr "Idioma padrão"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Idioma do site quando as configurações de autodetecção a partir do navegador "
+"não estiverem disponíveis"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3874,76 +4109,98 @@ msgstr ""
"coisa novamente."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
-msgstr "Mensagem do site"
+msgstr "Avisos do site"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nova mensagem"
+msgstr "Editar os avisos do site (exibidos em todas as páginas)"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Não foi possível salvar suas configurações de aparência."
+msgstr "Não foi possível salvar os avisos do site."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "O tamanho máximo para os avisos é de 255 caracteres."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Mensagem do site"
+msgstr "Texto dos avisos"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "Texto dos avisos do site (no máximo 255 caracteres; pode usar HTML)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Mensagem do site"
+msgstr "Salvar os avisos do site"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Configuração do SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Você pode receber mensagens SMS de %%site.name%% através do e-mail."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS não está disponível."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "Endereço de SMS"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Número de telefone já habilitado para receber SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Aguardando a confirmação deste número de telefone."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Código de confirmação"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Informe o código que você recebeu no seu telefone."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Confirmar"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Telefone para SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Número de telefone, sem pontuação ou espaços, com código de área"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Preferências do SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3951,23 +4208,33 @@ msgstr ""
"Envie-me mensagens via SMS. Eu compreendo que isso pode gerar cobranças "
"exorbitantes da minha operadora."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "As preferências do SMS foram salvas."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Nenhum número de telefone."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Não foi selecionada nenhuma operadora."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Esse já é seu número de telefone."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Esse número de telefone já pertence à outro usuário."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3975,23 +4242,40 @@ msgstr ""
"Um código de confirmação foi enviado para o número de telefone que você "
"informou. Verifique no seu telefone o código e instruções sobre como usá-lo."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Isso é um número de confirmação errado."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "A confirmação do SMS foi cancelada."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Esse não é seu número de telefone."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "O número de telefone para SMS foi removido."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Operadora de celular"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Selecione uma operadora"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4000,20 +4284,20 @@ msgstr ""
"A operadora do seu celular. Se você conhece uma operadora que aceita SMS via "
"e-mail que não está listada aqui, informe-nos enviando uma mensagem para %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Não foi digitado nenhum código"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Estatísticas"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Mude as configurações do site"
+msgstr "Gerenciar as configurações das estatísticas"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -4028,8 +4312,8 @@ msgid "Invalid snapshot report URL."
msgstr "A URL para o envio das estatísticas é inválida."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr "Aleatoriamente durante o funcionamento"
+msgid "Randomly during web hit"
+msgstr "Aleatoriamente durante as visitas ao site"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
@@ -4060,32 +4344,29 @@ msgid "Snapshots will be sent to this URL"
msgstr "As estatísticas serão enviadas para esta URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Salvar as configurações do site"
+msgstr "Salvar as configurações de estatísticas"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Você não está assinando esse perfil."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Não foi possível salvar a assinatura."
#: actions/subscribe.php:77
msgid "This action only accepts POST requests."
-msgstr ""
+msgstr "Esta ação aceita somente requisições POST."
#: actions/subscribe.php:107
-#, fuzzy
msgid "No such profile."
-msgstr "Esse arquivo não existe."
+msgstr "Este perfil não existe."
#: actions/subscribe.php:117
-#, fuzzy
msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
-msgstr "Você não está assinando esse perfil."
+msgstr "Não é possível assinar um perfil OMB 0.1 remoto com essa ação."
#: actions/subscribe.php:145
msgid "Subscribed"
@@ -4172,11 +4453,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s não está acompanhando ninguém."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4209,12 +4490,12 @@ msgstr "Nenhum argumento de ID."
msgid "Tag %s"
msgstr "Etiqueta %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Perfil do usuário"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Imagem"
@@ -4249,10 +4530,6 @@ msgstr ""
msgid "No such tag."
msgstr "Esta etiqueta não existe."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "O método da API está em construção."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Você não bloqueou esse usuário."
@@ -4266,8 +4543,8 @@ msgid "User is not silenced."
msgstr "O usuário não está silenciado."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr "Nenhuma ID de perfil na requisição."
+msgid "No profile ID in request."
+msgstr "A requisição não possui nenhuma ID de perfil."
#: actions/unsubscribe.php:98
msgid "Unsubscribed"
@@ -4283,7 +4560,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "Usuário"
@@ -4306,7 +4582,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Assinatura padrão inválida: '%1$s' não é um usuário."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Perfil"
@@ -4365,7 +4642,7 @@ msgstr ""
"as mensagens deste usuário. Se você não solicitou assinar as mensagens de "
"alguém, clique em \"Recusar\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licença"
@@ -4469,39 +4746,45 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Aproveite o seu cachorro-quente!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Grupos de %1$s, pág. %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Procurar por outros grupos"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s não é membro de nenhum grupo."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Experimente [procurar por grupos](%%action.groupsearch%%) e associar-se à "
"eles."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Mensagens de %1$s no %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4510,11 +4793,11 @@ msgstr ""
"Este site funciona sobre %1$s versão %2$s, Copyright 2008-2010 StatusNet, "
"Inc. e colaboradores."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Colaboradores"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4526,7 +4809,7 @@ msgstr ""
"Software Foundation, na versão 3 desta licença ou (caso deseje) qualquer "
"versão posterior. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4538,7 +4821,7 @@ msgstr ""
"ADEQUAÇÃO A UMA FINALIDADE ESPECÃFICA. Verifique a GNU Affero General "
"Public License para mais detalhes. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4547,92 +4830,141 @@ msgstr ""
"Você deve ter recebido uma cópia da GNU Affero General Public License com "
"este programa. Caso contrário, veja %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Plugins"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Versão"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Autor(es)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"Nenhum arquivo pode ser maior que %d bytes e o arquivo que você enviou "
"possui %d bytes. Experimente enviar uma versão menor."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Um arquivo deste tamanho excederá a sua conta de %d bytes."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Um arquivo deste tamanho excederá a sua conta mensal de %d bytes."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Tamanho inválido."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Não foi possível se unir ao grupo."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Não é parte de um grupo."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Não foi possível deixar o grupo."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "Não foi possível atualizar o grupo."
+msgstr "Não foi possível atualizar o grupo local."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Não foi possível criar o token de autenticação para %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Você está proibido de enviar mensagens diretas."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Não foi possível inserir a mensagem."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Não foi possível atualizar a mensagem com a nova URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "Erro no banco de dados durante a inserção da hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problema no salvamento da mensagem. Ela é muito extensa."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problema no salvamento da mensagem. Usuário desconhecido."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Muitas mensagens em um período curto de tempo; dê uma respirada e publique "
"novamente daqui a alguns minutos."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4640,307 +4972,370 @@ msgstr ""
"Muitas mensagens duplicadas em um período curto de tempo; dê uma respirada e "
"publique novamente daqui a alguns minutos."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Você está proibido de publicar mensagens neste site."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problema no salvamento da mensagem."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problema no salvamento das mensagens recebidas do grupo."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "O usuário não tem perfil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Não foi possível salvar os avisos do site."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Você está proibido de assinar."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Já assinado!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "O usuário bloqueou você."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Não assinado!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "Não foi possível excluir a auto-assinatura."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Não foi possível excluir a assinatura."
+msgid "Could not delete subscription OMB token."
+msgstr "Não foi possível excluir o token de assinatura OMB."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Não foi possível excluir a assinatura."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Bem vindo(a) a %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Não foi possível criar o grupo."
-#: classes/User_group.php:486
-#, fuzzy
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
-msgstr "Não foi possível configurar a associação ao grupo."
+msgstr "Não foi possível definir a URI do grupo."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Não foi possível configurar a associação ao grupo."
-#: classes/User_group.php:521
-#, fuzzy
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
-msgstr "Não foi possível salvar a assinatura."
+msgstr "Não foi possível salvar a informação do grupo local."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Alterar as suas configurações de perfil"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Enviar um avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Alterar a sua senha"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Configurações de uso do e-mail"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Mude a aparência do seu perfil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Outras"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Outras opções"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Outras"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Página sem título"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Navegação primária no site"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
-#, fuzzy
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Perfil pessoal e fluxo de mensagens dos amigos"
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Pessoal"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
-msgstr "Mude seu e-mail, avatar, senha, perfil"
+msgstr "Altere seu e-mail, avatar, senha, perfil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
-#, fuzzy
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Conecte-se a outros serviços"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Conectar"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr "Mude as configurações do site"
+msgstr "Altere as configurações do site"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
-msgstr "Admin"
+msgstr "Administrar"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
-#, fuzzy, php-format
+#: lib/action.php:465
+#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Convide seus amigos e colegas para unir-se a você no %s"
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Convidar"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
-msgstr "Sai do site"
+msgstr "Sair do site"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Sair"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
-msgstr "Cria uma conta"
+msgstr "Criar uma conta"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrar-se"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Autentique-se no site"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Entrar"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Ajudem-me!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Ajuda"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
-msgstr "Procura por pessoas ou textos"
+msgstr "Procure por pessoas ou textos"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
-msgstr "Procurar"
+msgstr "Pesquisar"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Mensagem do site"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Visualizações locais"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Notícia da página"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Navegação secundária no site"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Ajuda"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Sobre"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "Termos de uso"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Privacidade"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Fonte"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Contato"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Mini-aplicativo"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Licença do software StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** é um serviço de microblog disponibilizado por [%%site."
"broughtby%%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** é um serviço de microblog. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** é um serviço de microblog."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4951,69 +5346,85 @@ msgstr ""
"versão %s, disponível sob a [GNU Affero General Public License] (http://www."
"fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licença do conteúdo do site"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "O conteúdo e os dados de %1$s são privados e confidenciais."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr "Conteúdo e dados licenciados sob %1$s. Todos os direitos reservados."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Conteúdo e dados licenciados pelos colaboradores. Todos os direitos "
"reservados."
-#: lib/action.php:847
-msgid "All "
-msgstr "Todas "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licença."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Todo o conteúdo e dados de %1$s estão disponíveis sob a licença %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Paginação"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Próximo"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Anterior"
-#: lib/activity.php:453
-msgid "Can't handle remote content yet."
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
msgstr ""
+"Era esperado um elemento raiz da fonte, mas foi obtido o documento XML "
+"inteiro."
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr "Ainda não é possível manipular conteúdo remoto."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
-msgstr ""
+msgstr "Ainda não é possível manipular conteúdo XML incorporado."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
-msgstr ""
+msgstr "Ainda não é possível manipular conteúdo Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Você não pode fazer alterações neste site."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Não são permitidas alterações a esse painel."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() não implementado."
@@ -5023,160 +5434,192 @@ msgstr "showForm() não implementado."
msgid "saveSettings() not implemented."
msgstr "saveSettings() não implementado."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Não foi possível excluir as configurações da aparência."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Configuração básica do site"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Configuração da aparência"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Aparência"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Configuração do usuário"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Usuário"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Configuração do acesso"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Configuração dos caminhos"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Configuração das sessões"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Mensagem do site"
+msgstr "Editar os avisos do site"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Configuração dos caminhos"
+msgstr "Configurações das estatísticas"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"Os recursos de API exigem acesso de leitura e escrita, mas você possui "
"somente acesso de leitura."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"A tentativa de autenticação na API falhou, identificação = %1$s, proxy = %2"
-"$s, ip = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Editar a aplicação"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Ãcone para esta aplicação"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Descreva a sua aplicação em %d caracteres"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Descreva sua aplicação"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL da fonte"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL do site desta aplicação"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL da fonte"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organização responsável por esta aplicação"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL para o site da organização"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL para o redirecionamento após a autenticação"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Navegador"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Desktop"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Tipo de aplicação: navegador ou desktop"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Somente leitura"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Leitura e escrita"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Acesso padrão para esta aplicação: somente leitura ou leitura e escrita"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "leitura e escrita"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "somente leitura"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Aprovado em %1$s - acesso \"%2$s\"."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Revogar"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Anexos"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Autor"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Operadora"
@@ -5188,45 +5631,64 @@ msgstr "Mensagens onde este anexo aparece"
msgid "Tags for this attachment"
msgstr "Etiquetas para este anexo"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Não foi possível alterar a senha"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Não é permitido alterar a senha"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultados do comando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "O comando foi completado"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "O comando falhou"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Desculpe, mas esse comando ainda não foi implementado."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Não existe uma mensagem com essa id"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "O usuário não tem uma \"última mensagem\""
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Não foi possível encontrar um usuário com a identificação %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Não foi possível encontrar um usuário local com a identificação %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Desculpe, mas esse comando ainda não foi implementado."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Não faz muito sentido chamar a sua própria atenção!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Foi enviada a chamada de atenção para %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5237,200 +5699,205 @@ msgstr ""
"Assinantes: %2$s\n"
"Mensagens: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Não existe uma mensagem com essa id"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "O usuário não tem uma \"última mensagem\""
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Mensagem marcada como favorita."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Você já é um membro desse grupo."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Não foi possível associar o usuário %s ao grupo %s"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s associou-se ao grupo %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Não foi possível remover o usuário %s do grupo %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Não foi possível associar o usuário %1$s ao grupo %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s deixou o grupo %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Não foi possível remover o usuário %1$s do grupo %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Nome completo: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Localização: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Site: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Sobre: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
msgstr ""
-"A mensagem é muito extensa - o máximo são %d caracteres e você enviou %d"
+"%s é um perfil remoto; você pode só pode enviar mensagens diretas para "
+"usuários do mesmo servidor."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"A mensagem é muito extensa - o máximo são %1$d caracteres e você enviou %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "A mensagem direta para %s foi enviada"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Ocorreu um erro durante o envio da mensagem direta."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Você não pode repetir sua própria mensagem"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Você já repetiu essa mensagem"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Mensagem de %s repetida"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Erro na repetição da mensagem."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
"A mensagem é muito extensa - o máximo são %d caracteres e você enviou %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "A resposta a %s foi enviada"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Erro no salvamento da mensagem."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Especifique o nome do usuário que será assinado"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Este usuário não existe."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Não é possível assinar perfis OMB com comandos."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Efetuada a assinatura de %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Especifique o nome do usuário cuja assinatura será cancelada"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Cancelada a assinatura de %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "O comando não foi implementado ainda."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notificação desligada."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Não é possível desligar a notificação."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notificação ligada."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Não é possível ligar a notificação."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "O comando para autenticação está desabilitado"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Este link é utilizável somente uma vez e é válido somente por dois minutos: %"
"s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
msgstr "Cancelada a assinatura de %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Você não está assinando ninguém."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Você já está assinando esta pessoa:"
msgstr[1] "Você já está assinando estas pessoas:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ninguém o assinou ainda."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Esta pessoa está assinando você:"
msgstr[1] "Estas pessoas estão assinando você:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Você não é membro de nenhum grupo."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Você é membro deste grupo:"
msgstr[1] "Você é membro destes grupos:"
-#: lib/command.php:769
-#, fuzzy
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5481,8 +5948,9 @@ msgstr ""
"subscribers - lista as pessoas que seguem você\n"
"leave <identificação> - deixa de assinar o usuário\n"
"d <identificação> <texto> - mensagem direta para o usuário\n"
-"get <nickname> - obtém a última mensagem do usuário\n"
-"whois <nickname> - obtém as informações do perfil do usuário\n"
+"get <identificação> - obtém a última mensagem do usuário\n"
+"whois <identificação> - obtém as informações do perfil do usuário\n"
+"lose <identificação> - obriga o usuário a deixar de segui-lo\n"
"fav <identificação> - adiciona a último mensagem do usuário como uma "
"'favorita'\n"
"fav #<id_da_mensagem> - adiciona a mensagem identificada como 'favorita'\n"
@@ -5510,19 +5978,19 @@ msgstr ""
"tracks - não implementado ainda\n"
"tracking - não implementado ainda\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Não foi encontrado nenhum arquivo de configuração. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Eu procurei pelos arquivos de configuração nos seguintes lugares: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Você pode querer executar o instalador para corrigir isto."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Ir para o instalador."
@@ -5623,7 +6091,7 @@ msgstr "Ir"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Associa o papel \"%s\" a este usuário"
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
@@ -5696,53 +6164,54 @@ msgstr "Grupos com mais mensagens"
msgid "Tags in %s group's notices"
msgstr "Etiquetas nas mensagens do grupo %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Esta página não está disponível em um tipo de mídia que você aceita"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Formato de imagem não suportado."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "O arquivo é muito grande. O tamanho máximo é de %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Envio parcial."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Erro no sistema durante o envio do arquivo."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Imagem inválida ou arquivo corrompido."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Formato de imagem não suportado."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Nosso arquivo foi perdido."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Tipo de arquivo desconhecido"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "Mb"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "Kb"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Fonte da caixa de entrada desconhecida %d."
@@ -5763,11 +6232,13 @@ msgstr "Autentique-se com um nome de usuário e uma senha"
msgid "Sign up for a new account"
msgstr "Cadastre-se para uma nova conta"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Confirmação do endereço de e-mail"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5796,12 +6267,24 @@ msgstr ""
"Obrigado pela sua atenção, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s agora está acompanhando suas mensagens no %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Se você acredita que esse usuário está se comportando de forma abusiva, você "
+"pode bloqueá-lo da sua lista de assinantes e reportá-lo como spammer ao "
+"administrador do site em %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5826,17 +6309,20 @@ msgstr ""
"----\n"
"Altere seu endereço de e-mail e suas opções de notificação em %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Descrição: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Novo endereço de e-mail para publicar no %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5857,21 +6343,33 @@ msgstr ""
"Atenciosamente,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "Mensagem de %s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Confirmação de SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s: confirme que você é o proprietário desse número de telefone com esse "
+"código:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Você teve a atenção chamada por %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5898,12 +6396,14 @@ msgstr ""
"Atenciosamente,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nova mensagem particular de %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5936,12 +6436,14 @@ msgstr ""
"Atenciosamente,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) marcou sua mensagem como favorita"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5978,12 +6480,25 @@ msgstr ""
"Atenciosamente,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"A conversa inteira pode ser lida aqui:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) enviou uma mensagem citando você"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5996,18 +6511,42 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) acabou de enviar uma mensagem citando você ('@usuário') no %2"
-"$s.\n"
+"%1$s (@%9$s) acabou de enviar uma mensagem citando você (do tipo '@usuário') "
+"em %2$s.\n"
"\n"
"A mensagem está aqui:\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
-"Está escrito:\n"
+"Nela está escrito:\n"
"\n"
-"\t%4$s\n"
+"%4$s\n"
+"\n"
+"%5$s Pode respondê-la aqui:\n"
+"\n"
+"%6$s\n"
+"\n"
+"A lista de todas as citações a você está aqui:\n"
"\n"
+"%7$s\n"
+"\n"
+"Atenciosamente,\n"
+"%2$s\n"
+"\n"
+"P.S.: Você pode cancelar a notificações por e-mail aqui: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -6022,7 +6561,7 @@ msgstr ""
"privadas para envolver outras pessoas em uma conversa. Você também pode "
"receber mensagens privadas."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "de"
@@ -6083,24 +6622,24 @@ msgstr "Erro ao salvar o arquivo no disco."
msgid "File upload stopped by extension."
msgstr "O arquivo a ser enviado foi barrado por causa de sua extensão."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "O arquivo excede a quota do usuário."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Não foi possível mover o arquivo para o diretório de destino."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Não foi possível determinar o tipo MIME do arquivo."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Tente usar outro formato %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s não é um tipo de arquivo suportado neste servidor."
@@ -6118,7 +6657,6 @@ msgid "Available characters"
msgstr "Caracteres disponíveis"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "Enviar"
@@ -6156,48 +6694,52 @@ msgstr ""
"Desculpe, mas recuperar a sua geolocalização está demorando mais que o "
"esperado. Por favor, tente novamente mais tarde."
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "L"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "O"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "em"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "no contexto"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Repetida por"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Responder a esta mensagem"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Responder"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Mensagem repetida"
@@ -6221,6 +6763,10 @@ msgstr "Erro na inserção do novo perfil"
msgid "Error inserting avatar"
msgstr "Erro na inserção do avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Ocorreu um erro na atualização do perfil remoto"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Erro na inserção do perfil remoto"
@@ -6243,7 +6789,7 @@ msgstr "Respostas"
#: lib/personalgroupnav.php:114
msgid "Favorites"
-msgstr "Favoritas"
+msgstr "Favoritos"
#: lib/personalgroupnav.php:125
msgid "Inbox"
@@ -6266,11 +6812,11 @@ msgstr "Suas mensagens enviadas"
msgid "Tags in %s's notices"
msgstr "Etiquetas nas mensagens de %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Desconhecido"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Assinaturas"
@@ -6278,31 +6824,32 @@ msgstr "Assinaturas"
msgid "All subscriptions"
msgstr "Todas as assinaturas"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Assinantes"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Todos os assinantes"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID do usuário"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Membro desde"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Média diária"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Todos os grupos"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Sem argumentos return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Método não implementado."
@@ -6326,20 +6873,28 @@ msgstr "Em destaque"
msgid "Popular"
msgstr "Popular"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Sem argumentos return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Repetir esta mensagem?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Sim"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Repetir esta mensagem"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Bloquear este usuário neste grupo"
+msgstr "Revoga o papel \"%s\" deste usuário"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Nenhum usuário definido para o modo de usuário único."
@@ -6437,6 +6992,52 @@ msgstr "Nuvem de etiquetas pessoais definidas pelos outros usuário"
msgid "None"
msgstr "Nenhuma"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+"Este servidor não pode processar o envio de temas sem suporte ao formato ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "O arquivo do tema não foi localizado ou ocorreu uma erro no envio."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Não foi possível salvar o tema."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Tema inválido: estrutura de diretórios incorreta."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"O tema enviado é muito grande; ele deve ter menos de %d bytes descomprimido."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Arquivo de tema inválido: está faltando o arquivo css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"O tema contém um nome de arquivo ou de diretório inválido. Use somente "
+"caracteres ASCII, números e os sinais de sublinhado e hífen."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "O tema contém um arquivo do tipo '.%s', que não é permitido."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Ocorreu um erro ao abrir o arquivo do tema."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Quem mais publica"
@@ -6465,92 +7066,108 @@ msgstr "Cancelar a assinatura deste usuário"
msgid "Unsubscribe"
msgstr "Cancelar"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "O usuário %s (%d) não tem nenhum registro do perfil."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Editar o avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Ações do usuário"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Exclusão do usuário em andamento..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Editar as configurações do perfil"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Editar"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Enviar uma mensagem para este usuário."
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Mensagem"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderar"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Perfil do usuário"
+msgstr "Papel do usuário"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administradores"
+msgstr "Administrador"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Moderar"
+msgstr "Moderador"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "alguns segundos atrás"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "cerca de 1 minuto atrás"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "cerca de %d minutos atrás"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "cerca de 1 hora atrás"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "cerca de %d horas atrás"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "cerca de 1 dia atrás"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "cerca de %d dias atrás"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "cerca de 1 mês atrás"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "cerca de %d meses atrás"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "cerca de 1 ano atrás"
@@ -6564,7 +7181,7 @@ msgstr "%s não é uma cor válida!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s não é uma cor válida! Utilize 3 ou 6 caracteres hexadecimais."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/ru/LC_MESSAGES/statusnet.po b/locale/ru/LC_MESSAGES/statusnet.po
index 03aaa074a..7027150bd 100644
--- a/locale/ru/LC_MESSAGES/statusnet.po
+++ b/locale/ru/LC_MESSAGES/statusnet.po
@@ -12,12 +12,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:54+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:57+0000\n"
"Language-Team: Russian\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: ru\n"
"X-Message-Group: out-statusnet\n"
@@ -26,9 +26,9 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
-msgstr "ПринÑÑ‚ÑŒ"
+msgstr "ДоÑтуп"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
@@ -77,84 +77,89 @@ msgstr "Закрыта"
msgid "Save access settings"
msgstr "Сохранить наÑтройки доÑтупа"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Сохранить"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Ðет такой Ñтраницы"
+msgid "No such page."
+msgstr "Ðет такой Ñтраницы."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Ðет такого пользователÑ."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s и друзьÑ, Ñтраница %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s и друзьÑ"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Лента друзей %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Лента друзей %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Лента друзей %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "Это лента %s и друзей, однако пока никто ничего не отправил."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -164,82 +169,85 @@ msgstr ""
"action.groups%%) или отправьте что-нибудь Ñами."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Ð’Ñ‹ можете попробовать [«подтолкнуть» %1$s](../%2$s) из Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð¸Ð»Ð¸ [напиÑать "
-"что-нибудь Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ ÐµÐ³Ð¾ или её вниманиÑ](%%%%action.newnotice%%%%?"
-"status_textarea=%3$s)."
+"Ð’Ñ‹ можете попробовать «[подтолкнуть %1$s](../%2$s)» из их Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð¸Ð»Ð¸ "
+"[напиÑать им что-нибудь](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
-"Почему бы не [зарегиÑтрироватьÑÑ](%%action.register%%), чтобы «подтолкнуть» %"
-"s или отправить запиÑÑŒ Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ ÐµÐ³Ð¾ или её вниманиÑ?"
+"Почему бы не [зарегиÑтрироватьÑÑ](%%%%action.register%%%%), чтобы "
+"«подтолкнуть» %s или оÑтавить запиÑÑŒ Ð´Ð»Ñ Ð½Ð¸Ñ…?"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Ð’Ñ‹ и друзьÑ"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Обновлено от %1$s и его друзей на %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "Метод API не найден."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Этот метод требует POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
-msgstr "Укажите параметр Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ 'device' и значением sms, im или none."
+"none."
+msgstr ""
+"Ð’Ñ‹ должны указать параметр Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ «device» и одним из значений: sms, im, "
+"none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ пользователÑ."
@@ -248,7 +256,7 @@ msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ пользователÑ."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "У Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½ÐµÑ‚ профилÑ."
@@ -258,9 +266,9 @@ msgid "Could not save profile."
msgstr "Ðе удаётÑÑ Ñохранить профиль."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,51 +326,49 @@ msgstr "ПрÑмые ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð´Ð»Ñ %s"
msgid "All the direct messages sent to %s"
msgstr "Ð’Ñе прÑмые ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñланные Ð´Ð»Ñ %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "ОтÑутÑтвует текÑÑ‚ ÑообщениÑ!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Слишком длинно. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ â€” %d знаков."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Получатель не найден."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Ðе удаётÑÑ Ð¿Ð¾Ñылать прÑмые ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñм, которые не ÑвлÑÑŽÑ‚ÑÑ "
"Вашими друзьÑми."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Ðет ÑтатуÑа Ñ Ñ‚Ð°ÐºÐ¸Ð¼ ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Этот ÑÑ‚Ð°Ñ‚ÑƒÑ ÑƒÐ¶Ðµ входит в чиÑло любимых."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Ðе удаётÑÑ Ñоздать любимую запиÑÑŒ."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Этот ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ðµ входит в чиÑло ваших любимых."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ любимую запиÑÑŒ."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
-"Ðе удаётÑÑ Ñледовать за пользователем, Ñ‚. к. такого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½Ðµ "
-"ÑущеÑтвует."
+msgid "Could not follow user: profile not found."
+msgstr "Ðе удаётÑÑ Ñледовать за пользователем: профиль не найден."
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -379,9 +385,9 @@ msgstr ""
msgid "You cannot unfollow yourself."
msgstr "Ð’Ñ‹ не можете переÑтать Ñледовать за Ñобой."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Ðадо предÑтавить два имени Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð»Ð¸ кода."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Ðеобходимо задать два идентификатора или screen_names."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -391,116 +397,128 @@ msgstr "Ðе удаётÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ иÑходного пользо
msgid "Could not find target user."
msgstr "Ðе удаётÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ целевого пользователÑ."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Ð˜Ð¼Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ ÑоÑтоÑÑ‚ÑŒ только из пропиÑных букв и цифр и не иметь пробелов."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Такое Ð¸Ð¼Ñ ÑƒÐ¶Ðµ иÑпользуетÑÑ. Попробуйте какое-нибудь другое."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Ðеверное имÑ."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "URL Главной Ñтраницы неверен."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Полное Ð¸Ð¼Ñ Ñлишком длинное (не больше 255 знаков)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Слишком длинное опиÑание (макÑимум %d Ñимволов)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Слишком длинное меÑтораÑположение (макÑимум 255 знаков)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Слишком много алиаÑов! МакÑимальное чиÑло — %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ðеверный алиаÑ: «%s»"
+msgid "Invalid alias: \"%s\"."
+msgstr "Ошибочный пÑевдоним: «%s»."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "ÐÐ»Ð¸Ð°Ñ Â«%s» уже иÑпользуетÑÑ. Попробуйте какой-нибудь другой."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "ÐÐ»Ð¸Ð°Ñ Ð½Ðµ может Ñовпадать Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Группа не найдена!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Группа не найдена."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Ð’Ñ‹ уже ÑвлÑетеÑÑŒ членом Ñтой группы."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Ð’Ñ‹ заблокированы из Ñтой группы админиÑтратором."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Ðе удаётÑÑ Ð¿Ñ€Ð¸Ñоединить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1$s к группе %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Ð’Ñ‹ не ÑвлÑетеÑÑŒ членом Ñтой группы."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1$s из группы %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "Группы %s"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Группы %1$s, в которых ÑоÑтоит %2$s."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "Группы %s"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "группы на %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Загрузка не удалаÑÑŒ."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Ðе задан параметр oauth_token."
@@ -510,17 +528,17 @@ msgid "Invalid token."
msgstr "Ðеправильный токен"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -552,12 +570,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Ð—Ð°Ð¿Ñ€Ð¾Ñ Ñ‚Ð¾ÐºÐµÐ½Ð° %s был запрещен и аннулирован."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Ðетиповое подтверждение формы."
@@ -581,20 +602,22 @@ msgstr ""
"предоÑтавлÑÑ‚ÑŒ разрешение на доÑтуп к вашей учётной запиÑи %4$s только тем "
"Ñторонним приложениÑм, которым вы доверÑете."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "ÐаÑтройки"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "ИмÑ"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Пароль"
@@ -610,11 +633,11 @@ msgstr "Разрешить"
msgid "Allow or deny access to your account information."
msgstr "Разрешить или запретить доÑтуп к информации вашей учётной запиÑи."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Этот метод требует POST или DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Ð’Ñ‹ не можете удалÑÑ‚ÑŒ ÑÑ‚Ð°Ñ‚ÑƒÑ Ð´Ñ€ÑƒÐ³Ð¸Ñ… пользователей."
@@ -631,59 +654,63 @@ msgstr "Ðевозможно повторить ÑобÑтвенную запиÑ
msgid "Already repeated that notice."
msgstr "ЗапиÑÑŒ уже повторена."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ ÑƒÐ´Ð°Ð»Ñ‘Ð½."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ðе найдено ÑтатуÑа Ñ Ñ‚Ð°ÐºÐ¸Ð¼ ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Клиент должен предоÑтавить параметр «status» Ñо значением."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Слишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ. МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° — %d знаков."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Ðе найдено"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ðе найдено."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° запиÑи — %d Ñимволов, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ URL вложениÑ."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Ðеподдерживаемый формат."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Любимое от %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "ÐžÐ±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ %1$s, отмеченные как любимые %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / ОбновлениÑ, упоминающие %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s обновил Ñтот ответ на Ñообщение: %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "ÐžÐ±Ñ‰Ð°Ñ Ð»ÐµÐ½Ñ‚Ð° %s"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "ÐžÐ±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ %s от вÑех!"
@@ -698,19 +725,19 @@ msgstr "Повторено Ð´Ð»Ñ %s"
msgid "Repeats of %s"
msgstr "Повторы за %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "ЗапиÑи Ñ Ñ‚ÐµÐ³Ð¾Ð¼ %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "ÐžÐ±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ñ Ñ‚ÐµÐ³Ð¾Ð¼ %1$s на %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ðе найдено."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Метод API реконÑтруируетÑÑ."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -731,8 +758,9 @@ msgstr "Ðет размера."
msgid "Invalid size."
msgstr "Ðеверный размер."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ðватара"
@@ -743,10 +771,10 @@ msgstr ""
"Ð’Ñ‹ можете загрузить Ñвою аватару. МакÑимальный размер файла ÑоÑтавлÑет %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Пользователь без ÑоответÑтвующего профилÑ"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Пользователь без ÑоответÑтвующего профилÑ."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -764,7 +792,7 @@ msgid "Preview"
msgstr "ПроÑмотр"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Удалить"
@@ -776,23 +804,27 @@ msgstr "Загрузить"
msgid "Crop"
msgstr "Обрезать"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Файл не загружен."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Подберите нужный квадратный учаÑток Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ¹ аватары"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "ПотерÑна Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¾ файле."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Ðватара обновлена."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Ðеудача при обновлении аватары."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ðватара удалена."
@@ -800,11 +832,11 @@ msgstr "Ðватара удалена."
msgid "You already blocked that user."
msgstr "Ð’Ñ‹ уже заблокировали Ñтого пользователÑ."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Заблокировать пользователÑ."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -814,27 +846,42 @@ msgstr ""
"будет отпиÑан от Ð²Ð°Ñ Ð±ÐµÐ· возможноÑти подпиÑатьÑÑ Ð² будущем, а вам не будут "
"приходить ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ð¾Ð± @-ответах от него."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Ðет"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Ðе блокировать Ñтого пользователÑ"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Да"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Заблокировать пользователÑ."
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Ðе удаётÑÑ Ñохранить информацию о блокировании."
@@ -847,8 +894,8 @@ msgstr "Ðе удаётÑÑ Ñохранить информацию о блокÐ
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Ðет такой группы."
@@ -878,9 +925,11 @@ msgstr "Разблокировать"
msgid "Unblock this user"
msgstr "Разблокировать пользователÑ."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Отправить в "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Отправить в %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -894,33 +943,43 @@ msgstr "Код Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð½Ðµ найден."
msgid "That confirmation code is not for you!"
msgstr "Это не Ваш код подтверждениÑ!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "ÐераÑпознанный тип адреÑа %s"
+msgid "Unrecognized address type %s."
+msgstr "ÐераÑпознанный тип адреÑа %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Этот Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ подтверждён."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ пользователÑ."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ подверждение по Ñлектронному адреÑу."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Подтвердить адреÑ"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "ÐÐ´Ñ€ÐµÑ Â«%s» подтверждён Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ аккаунта."
@@ -930,7 +989,7 @@ msgid "Conversation"
msgstr "ДиÑкуÑÑиÑ"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "ЗапиÑи"
@@ -949,7 +1008,7 @@ msgstr "Ð’Ñ‹ не ÑвлÑетеÑÑŒ владельцем Ñтого прилоÐ
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Проблема Ñ Ð’Ð°ÑˆÐµÐ¹ ÑеÑÑией. Попробуйте ещё раз, пожалуйÑта."
@@ -967,21 +1026,23 @@ msgstr ""
"применении из базы данных, Ð²ÐºÐ»ÑŽÑ‡Ð°Ñ Ð²Ñе ÑущеÑтвующие Ð¿Ð¾Ð´ÐºÐ»ÑŽÑ‡ÐµÐ½Ð¸Ñ "
"пользователей."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ðе удалÑйте Ñто приложение"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Удалить Ñто приложение"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ðе авторизован."
@@ -1006,11 +1067,13 @@ msgstr "Удалить запиÑÑŒ"
msgid "Are you sure you want to delete this notice?"
msgstr "Ð’Ñ‹ уверены, что хотите удалить Ñту запиÑÑŒ?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ðе удалÑÑ‚ÑŒ Ñту запиÑÑŒ"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Удалить Ñту запиÑÑŒ"
@@ -1034,58 +1097,69 @@ msgstr ""
"Ð’Ñ‹ дейÑтвительно хотите удалить Ñтого пользователÑ? Это повлечёт удаление "
"вÑех данных о пользователе из базы данных без возможноÑти воÑÑтановлениÑ."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Удалить Ñтого пользователÑ"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Оформление"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "ÐаÑтройки Ð¾Ñ„Ð¾Ñ€Ð¼Ð»ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñтого Ñайта StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Ðеверный URL логотипа."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Тема не доÑтупна: %s"
+msgid "Theme not available: %s."
+msgstr "Тема не доÑтупна: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Изменить логотип"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Логотип Ñайта"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Изменить тему"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Тема Ñайта"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Тема Ð´Ð»Ñ Ñайта."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "ОÑÐ¾Ð±Ð°Ñ Ñ‚ÐµÐ¼Ð°"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Ð’Ñ‹ можете загрузить оÑобую тему StatusNet в виде ZIP-архива."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Изменение фонового изображениÑ"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Фон"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1094,67 +1168,76 @@ msgstr ""
"Ð’Ñ‹ можете загрузить фоновое изображение Ð´Ð»Ñ Ñайта. МакÑимальный размер файла "
"ÑоÑтавлÑет %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Включить"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Отключить"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Включить или отключить показ фонового изображениÑ."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "РаÑÑ‚Ñнуть фоновое изображение"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Изменение цветовой гаммы"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Содержание"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Ð‘Ð¾ÐºÐ¾Ð²Ð°Ñ Ð¿Ð°Ð½ÐµÐ»ÑŒ"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "ТекÑÑ‚"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "СÑылки"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "РаÑширенный"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "ОÑобый CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "ИÑпользовать Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "ВоÑÑтановить оформление по умолчанию"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "ВоÑÑтановить Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¸Ñ Ð¿Ð¾ умолчанию"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Сохранить"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Сохранить оформление"
@@ -1259,11 +1342,17 @@ msgstr "Заполните информацию о группе в ÑледуюÑ
msgid "description is too long (max %d chars)."
msgstr "Слишком длинное опиÑание (макÑимум %d Ñимволов)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ðеверный алиаÑ: «%s»"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ информацию о группе."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Ðе удаётÑÑ Ñоздать алиаÑÑ‹."
@@ -1271,31 +1360,42 @@ msgstr "Ðе удаётÑÑ Ñоздать алиаÑÑ‹."
msgid "Options saved."
msgstr "ÐаÑтройки Ñохранены."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "ÐаÑтройка почты"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Управление процеÑÑом Ð¿Ð¾Ð»ÑƒÑ‡ÐµÐ½Ð¸Ñ Ñлектронной почты Ñ %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ÐдреÑ"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "ÐÐ´Ñ€ÐµÑ Ñл. почты"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Подтверждённый в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Ñлектронный адреÑ."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
-msgstr "Убрать"
+msgstr "Удалить"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1303,116 +1403,146 @@ msgstr ""
"Ожидание Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ñтого адреÑа. Проверьте Ñвой почтовый Ñщик (и папку "
"Ð´Ð»Ñ Ñпама!), там будут дальнейшие инÑтрукции."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
-msgstr "Отменить"
-
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "ÐÐ´Ñ€ÐµÑ Ñл. почты"
+msgstr "Отмена"
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "Электронный Ð°Ð´Ñ€ÐµÑ Ð²Ð¸Ð´Ð° \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Добавить"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "ВходÑщий Ñлектронный адреÑ"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
"ОтправлÑйте Ñлектронные пиÑьма на Ñтот Ð°Ð´Ñ€ÐµÑ Ð´Ð»Ñ Ð¾Ñ‚Ñылки новых запиÑей."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Создать новый Ð°Ð´Ñ€ÐµÑ Ñлектронной почты Ð´Ð»Ñ Ð¾Ñ‚Ñылки Ñообщений; отменÑет Ñтарый "
"адреÑ."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Ðовый"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "ПредпочтениÑ"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "ÐаÑтройки Ñл. почты"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "УведомлÑÑ‚ÑŒ Ð¼ÐµÐ½Ñ Ð¾ новых подпиÑчиках по почте."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"ПоÑылать мне Ñообщение по Ñлектронной почте, еÑли кто-нибудь добавит мою "
"запиÑÑŒ в чиÑло любимых."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
"ПоÑылать мне Ñообщение по Ñлектронной почте, еÑли кто-нибудь пошлёт мне "
"приватное Ñообщение."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
"ПоÑылать мне Ñообщение по Ñлектронной почте, еÑли кто-нибудь пошлёт мне «@-"
"ответ»."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
"Разрешить друзьÑм «подталкивать» Ð¼ÐµÐ½Ñ Ð¸ поÑылать мне Ñлектронные ÑообщениÑ."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Я хочу отправлÑÑ‚ÑŒ запиÑи по Ñлектронной почте."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Опубликовать MicroID Ð´Ð»Ñ Ð¼Ð¾ÐµÐ³Ð¾ Ñлектронного адреÑа."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "ÐŸÑ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ñохранены."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "ÐаÑтройки Ñл. почты Ñохранены."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ðет Ñлектронного адреÑа."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Ðе удаётÑÑ Ñтандартизировать Ñтот Ñлектронный адреÑ"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Ðеверный Ñлектронный адреÑ."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Это уже Ваш Ñлектронный адреÑ."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Этот Ñлектронный Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ задейÑтвован другим пользователем."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Ðе удаётÑÑ Ð²Ñтавить код подтверждениÑ."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1421,43 +1551,53 @@ msgstr ""
"папку входÑщей почты (а также папку Ñпама!), чтобы найти Ñтот кода и "
"инÑтрукции по его иÑпользованию."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ðет Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð¾Ñ‚ÐºÐ°Ð·Ð°."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Это неверный IM-адреÑ."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Это неверный Ð°Ð´Ñ€ÐµÑ Ñл. почты."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Подтверждение отменено."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "Подтверждение Ñл. почты отменено."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Это не Ваш Ñлектронный адреÑ."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "ÐÐ´Ñ€ÐµÑ ÑƒÐ´Ð°Ð»Ñ‘Ð½."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "ÐÐ´Ñ€ÐµÑ Ñл. почты удалён."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ðет входÑщего Ñлектронного адреÑа."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ пользовательÑкую запиÑÑŒ."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "ВходÑщий Ñлектронный Ð°Ð´Ñ€ÐµÑ ÑƒÐ´Ð°Ð»Ñ‘Ð½."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Ðовый входÑщий Ñлектронный Ð°Ð´Ñ€ÐµÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½."
@@ -1576,9 +1716,9 @@ msgstr "Ðе удаётÑÑ Ð¿Ñ€ÐµÐ¾Ð±Ñ€Ð°Ð·Ð¾Ð²Ð°Ñ‚ÑŒ ключ запроÑа Ð
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Удалённый ÑÐµÑ€Ð²Ð¸Ñ Ð¸Ñпользует неизвеÑтную верÑию протокола OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Ошибка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½Ð½Ð¾Ð³Ð¾ профилÑ"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Ошибка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½Ð½Ð¾Ð³Ð¾ профилÑ."
#: actions/getfile.php:79
msgid "No such file."
@@ -1606,13 +1746,13 @@ msgstr "Пользователь уже имеет Ñту роль."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Профиль не определен."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ðет Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ñ Ñ‚Ð°ÐºÐ¸Ð¼ ID."
@@ -1633,11 +1773,11 @@ msgstr "Пользователь уже заблокирован из групп
msgid "User is not a member of group."
msgstr "Пользователь не ÑвлÑетÑÑ Ñ‡Ð»ÐµÐ½Ð¾Ð¼ Ñтой группы."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Заблокировать Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы."
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1648,15 +1788,17 @@ msgstr ""
"Пользователь будет удалён из группы без возможноÑти отправлÑÑ‚ÑŒ и "
"подпиÑыватьÑÑ Ð½Ð° группу в будущем."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Ðе блокировать Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· Ñтой группы"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Заблокировать Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· Ñтой группы"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Ошибка базы данных при блокировании Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð¸Ð· группы."
@@ -1701,10 +1843,6 @@ msgstr ""
"ЗдеÑÑŒ вы можете загрузить логотип Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹. МакÑимальный размер файла "
"ÑоÑтавлÑет %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Пользователь без ÑоответÑтвующего профилÑ."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Подберите нужный квадратный учаÑток Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ логотипа."
@@ -1735,34 +1873,38 @@ msgstr "СпиÑок пользователей, ÑвлÑющихÑÑ Ñ‡Ð»ÐµÐ½Ð°
msgid "Admin"
msgstr "ÐаÑтройки"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Блокировать"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Сделать Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратором группы"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Сделать админиÑтратором"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Сделать Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð°Ð´Ð¼Ð¸Ð½Ð¸Ñтратором"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "Лента %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "ÐžÐ±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑƒÑ‡Ð°Ñтников %1$s на %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Группы"
@@ -1787,7 +1929,7 @@ msgstr ""
"группу, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð²Ð°Ñ Ð¸Ð½Ñ‚ÐµÑ€ÐµÑует? Попробуйте [найти её](%%%%action.groupsearch%"
"%%%) или [Ñоздайте ÑобÑтвенную](%%%%action.newgroup%%%%)!"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Создать новую группу"
@@ -1839,11 +1981,15 @@ msgstr "Пользователь не заблокировал Ð²Ð°Ñ Ð¸Ð· грÑ
msgid "Error removing the block."
msgstr "Ошибка при удалении данного блока."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM-уÑтановки"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1852,15 +1998,24 @@ msgstr ""
"Ð’Ñ‹ можете отправлÑÑ‚ÑŒ и получать запиÑи через Jabber/GTalk [онлайн-меÑÑенджер]"
"(%%doc.im%%). ÐаÑтройте ваш аккаунт и Ð¿Ñ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð½Ð¸Ð¶Ðµ."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM не доÑтупен."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM-адреÑ"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Подтверждённый в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ Jabber/Gtalk - адреÑ."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1870,11 +2025,9 @@ msgstr ""
"ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñ Ð´Ð°Ð»ÑŒÐ½ÐµÐ¹ÑˆÐ¸Ð¼Ð¸ инÑтрукциÑми. (Ð’Ñ‹ включили %s в ваш ÑпиÑок "
"контактов?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM-адреÑ"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1884,44 +2037,65 @@ msgstr ""
"убедитеÑÑŒ, что добавили %s в ÑпиÑок Ваших корреÑпондентов на Вашем IM-"
"меÑÑенджере или в GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "ÐаÑтройки IM"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "ПоÑылать мне запиÑи через Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Публиковать запиÑÑŒ, когда мой Jabber/GTalk - ÑÑ‚Ð°Ñ‚ÑƒÑ Ð¸Ð·Ð¼ÐµÐ½ÑетÑÑ."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"ПоÑылать мне реплики через Jabber/GTalk от людей, на которых Ñ Ð½Ðµ подпиÑан."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Опубликовать MicroID Ð´Ð»Ñ Ð¼Ð¾ÐµÐ³Ð¾ Jabber/GTalk - адреÑа."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "ÐŸÑ€ÐµÐ´Ð¿Ð¾Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ñохранены."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ðе Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Ðе удаётÑÑ Ñтандартизировать Ñтот Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Ðеверный код Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Это уже Ваш Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Этот Jabber ID уже иÑпользуетÑÑ Ð´Ñ€ÑƒÐ³Ð¸Ð¼ пользователем."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1930,10 +2104,32 @@ msgstr ""
"Код Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñлан на добавленный вами IM-адреÑ. Ð’Ñ‹ должны подтвердить "
"%s Ð´Ð»Ñ Ð¾Ñ‚Ð¿Ñ€Ð°Ð²ÐºÐ¸ вам Ñообщений."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Это неверный IM-адреÑ."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ подверждение IM."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Подтверждение IM отменено."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Это не Ваш Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "ÐÐ´Ñ€ÐµÑ IM удалён."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1956,10 +2152,10 @@ msgstr "ÐŸÑ€Ð¸Ð³Ð»Ð°ÑˆÐµÐ½Ð¸Ñ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡ÐµÐ½Ñ‹."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
+msgid "You must be logged in to invite other users to use %s."
msgstr ""
-"Ð’Ñ‹ должны авторизоватьÑÑ, чтобы приглашать других пользователей Ñледовать за "
-"%s"
+"Ð’Ñ‹ должны авторизоватьÑÑ, чтобы приглашать других пользователей иÑпользовать "
+"%s."
#: actions/invite.php:72
#, php-format
@@ -1978,7 +2174,9 @@ msgstr "ПриглаÑить новых пользователей"
msgid "You are already subscribed to these users:"
msgstr "Ð’Ñ‹ уже подпиÑаны на пользователÑ:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2029,12 +2227,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Отправить"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s приглаÑил Ð²Ð°Ñ Ð¿Ñ€Ð¸ÑоединитьÑÑ Ðº нему на %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2099,7 +2299,9 @@ msgstr "Ð’Ñ‹ должны авторизоватьÑÑ Ð´Ð»Ñ Ð²Ñтуплени
msgid "No nickname or ID."
msgstr "Ðет имени или ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s вÑтупил в группу %2$s"
@@ -2108,48 +2310,50 @@ msgstr "%1$s вÑтупил в группу %2$s"
msgid "You must be logged in to leave a group."
msgstr "Ð’Ñ‹ должны авторизоватьÑÑ, чтобы покинуть группу."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Ð’Ñ‹ не ÑвлÑетеÑÑŒ членом Ñтой группы."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s покинул группу %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Ð’Ñ‹ уже авторизовалиÑÑŒ."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Ðекорректное Ð¸Ð¼Ñ Ð¸Ð»Ð¸ пароль."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Ошибка уÑтановки пользователÑ. Ð’Ñ‹, вероÑтно, не авторизованы."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Вход"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "ÐвторизоватьÑÑ"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Запомнить менÑ"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "ÐвтоматичеÑкии входить в дальнейшем. Ðе Ð´Ð»Ñ Ð¾Ð±Ñ‰ÐµÐ´Ð¾Ñтупных компьютеров!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "ПотерÑли или забыли пароль?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2157,14 +2361,17 @@ msgstr ""
"По причинам ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑноÑти введите Ð¸Ð¼Ñ Ð¸ пароль ещё раз, прежде чем "
"изменÑÑ‚ÑŒ Ваши уÑтановки."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Войти Ñ Ð²Ð°ÑˆÐ¸Ð¼ именем учаÑтника и паролем."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Вход Ñ Ð²Ð°ÑˆÐ¸Ð¼ логином и паролем. Ðет аккаунта? [ЗарегиÑтрируйте](%%action."
-"register%%) новый аккаунт."
+"У Ð²Ð°Ñ Ð½ÐµÑ‚ логина? [ЗарегиÑтрируйте](%%action.register%%) новую учётную "
+"запиÑÑŒ."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2187,8 +2394,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Ðевозможно Ñделать %1$s админиÑтратором группы %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Ðет текущего ÑтатуÑа"
+msgid "No current status."
+msgstr "Ðет текущего ÑоÑтоÑниÑ."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2222,12 +2429,12 @@ msgstr "ИÑпользуйте Ñту форму Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð
msgid "New message"
msgstr "Ðовое Ñообщение"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Ð’Ñ‹ не можете поÑлать Ñообщение Ñтому пользователю."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ðет контента!"
@@ -2235,7 +2442,7 @@ msgstr "Ðет контента!"
msgid "No recipient specified."
msgstr "Ðет адреÑата."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "Ðе поÑылайте ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ñами Ñебе; проÑто потихоньку Ñкажите Ñто Ñебе."
@@ -2249,7 +2456,7 @@ msgstr "Сообщение отправлено"
msgid "Direct message to %s sent."
msgstr "ПрÑмое Ñообщение Ð´Ð»Ñ %s поÑлано."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ошибка AJAX"
@@ -2257,7 +2464,7 @@ msgstr "Ошибка AJAX"
msgid "New notice"
msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "ЗапиÑÑŒ опубликована"
@@ -2309,10 +2516,10 @@ msgstr "Ð’Ñе обновлениÑ, ÑоответÑтвующие поиÑко
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
-"Этот пользователь не разрешает \"подталкивать\" его, или ещё не подтверждён "
-"или ещё не предÑтавил Ñвой Ñлектронный адреÑ."
+"Этот пользователь не разрешает «подталкивать» его или ещё не указал Ñвой "
+"email-адреÑ."
#: actions/nudge.php:94
msgid "Nudge sent"
@@ -2352,11 +2559,11 @@ msgid "You are not a user of that application."
msgstr "Ð’Ñ‹ не ÑвлÑетеÑÑŒ пользователем Ñтого приложениÑ."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Ðе удаётÑÑ Ð¾Ñ‚Ð¾Ð·Ð²Ð°Ñ‚ÑŒ права Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Ðе удаётÑÑ Ð¾Ñ‚Ð¾Ð·Ð²Ð°Ñ‚ÑŒ доÑтуп Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Ð’Ñ‹ не разрешили приложениÑм иÑпользовать вашу учётную запиÑÑŒ."
@@ -2364,25 +2571,30 @@ msgstr "Ð’Ñ‹ не разрешили приложениÑм иÑпользова
msgid "Developers can edit the registration settings for their applications "
msgstr "Разработчики могут изменÑÑ‚ÑŒ наÑтройки региÑтрации Ñвоих приложений "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "ЗапиÑÑŒ без профилÑ"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Уведомление не имеет профилÑ."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ %1$s на %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "тип Ñодержимого "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Тип Ñодержимого %s не поддерживаетÑÑ."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Только "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Только %s URL в проÑтом HTTP, пожалуйÑта."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Ðеподдерживаемый формат данных."
@@ -2487,7 +2699,7 @@ msgid "6 or more characters"
msgstr "6 или больше знаков"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Подтверждение"
@@ -2499,11 +2711,11 @@ msgstr "Тот же пароль, что и выше"
msgid "Change"
msgstr "Изменить"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Пароль должен быть длиной не менее 6 Ñимволов."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Пароли не Ñовпадают."
@@ -2515,7 +2727,7 @@ msgstr "Ðекорректный Ñтарый пароль"
msgid "Error saving user; invalid."
msgstr "Ошибка ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ; неверное имÑ."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Ðе удаётÑÑ Ñохранить новый пароль."
@@ -2524,7 +2736,7 @@ msgid "Password saved."
msgstr "Пароль Ñохранён."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Пути"
@@ -2534,23 +2746,23 @@ msgstr "ÐаÑтройки путей и Ñерверов Ð´Ð»Ñ Ñтого Ñа
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ‚ÐµÐ¼ недоÑтупна Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ‚ÐµÐ¼ не доÑтупна Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€ не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€ не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ„Ð¾Ð½Ð¾Ð²Ñ‹Ñ… изображений не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи: %s"
+msgid "Background directory not writable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ñ„Ð¾Ð½Ð¾Ð²Ñ‹Ñ… изображений не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¹ не доÑтупна Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ð¸Ñ Ð»Ð¾ÐºÐ°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¹ не доÑтупна Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2578,7 +2790,7 @@ msgstr "Путь к Ñайту"
#: actions/pathsadminpanel.php:246
msgid "Path to locales"
-msgstr "ПуÑÑ‚ÑŒ к локализациÑм"
+msgstr "Путь к локализациÑм"
#: actions/pathsadminpanel.php:246
msgid "Directory path to locales"
@@ -2689,19 +2901,19 @@ msgstr ""
msgid "People search"
msgstr "ПоиÑк людей"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Ðеверный тег человека: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Ðеверный тег человека: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Пользователи, уÑтановившие Ñебе тег %1$s — Ñтраница %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Ðеверный контент запиÑи"
+msgid "Invalid notice content."
+msgstr "Ошибочное Ñодержание запиÑи."
#: actions/postnotice.php:101
#, php-format
@@ -2727,42 +2939,43 @@ msgstr "Ð˜Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 латинÑких Ñтрочных буквы или цифры, без пробелов"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Полное имÑ"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "ГлавнаÑ"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "ÐÐ´Ñ€ÐµÑ Ñ‚Ð²Ð¾ÐµÐ¹ Ñтраницы, дневника или Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð½Ð° другом портале"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Опишите ÑÐµÐ±Ñ Ð¸ Ñвои ÑƒÐ²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸ помощи %d Ñимволов"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Опишите ÑÐµÐ±Ñ Ð¸ Ñвои интереÑÑ‹"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "БиографиÑ"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "МеÑтораÑположение"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Где вы находитеÑÑŒ, например «Город, облаÑÑ‚ÑŒ, Ñтрана»"
@@ -2772,7 +2985,7 @@ msgstr "ДелитьÑÑ Ñвоим текущим меÑтоположениеÐ
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Теги"
@@ -2804,7 +3017,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "ÐвтоматичеÑки подпиÑыватьÑÑ Ð½Ð° вÑех, кто подпиÑалÑÑ Ð½Ð° менÑ"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Слишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ Ð±Ð¸Ð¾Ð³Ñ€Ð°Ñ„Ð¸Ñ (макÑимум %d Ñимволов)."
@@ -2815,7 +3028,7 @@ msgstr "ЧаÑовой поÑÑ Ð½Ðµ выбран."
#: actions/profilesettings.php:241
msgid "Language is too long (max 50 chars)."
-msgstr "Слишком длинный Ñзык (более 50 Ñимволов). "
+msgstr "Слишком длинный Ñзык (не может быть более 50 Ñимволов)."
#: actions/profilesettings.php:253 actions/tagother.php:178
#, php-format
@@ -2845,8 +3058,8 @@ msgstr "ÐаÑтройки Ñохранены."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Превышен предел Ñтраницы (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Превышен предел Ñтраницы (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -3012,7 +3225,7 @@ msgstr "ПереуÑтановить пароль"
msgid "Recover password"
msgstr "ВоÑÑтановление паролÑ"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Запрошено воÑÑтановление паролÑ"
@@ -3032,19 +3245,19 @@ msgstr "СброÑить"
msgid "Enter a nickname or email address."
msgstr "Введите Ð¸Ð¼Ñ Ð¸Ð»Ð¸ Ñлектронный адреÑ."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Ðет Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ñ‚Ð°ÐºÐ¸Ð¼ Ñлектронным адреÑом или именем."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ðет зарегиÑтрированных Ñлектронных адреÑов Ð´Ð»Ñ Ñтого пользователÑ."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Ошибка ÑÐ¾Ñ…Ñ€Ð°Ð½ÐµÐ½Ð¸Ñ Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´Ñ‘Ð½Ð½Ð¾Ð³Ð¾ адреÑа."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3052,113 +3265,130 @@ msgstr ""
"ИнÑтрукции по воÑÑтановлению Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð¿Ð¾Ñланы на Ñлектронный адреÑ, который Ð’Ñ‹ "
"указали при региÑтрации вашего аккаунта."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "ÐÐµÑ‚Ð¸Ð¿Ð¾Ð²Ð°Ñ Ð¿ÐµÑ€ÐµÑƒÑтановка паролÑ."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Пароль должен быть длиной не менее 6 Ñимволов."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Пароль и его подтверждение не Ñовпадают."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Ошибка в уÑтановках пользователÑ."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Ðовый пароль уÑпешно Ñохранён. Ð’Ñ‹ авторизовалиÑÑŒ."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "ПроÑтите, региÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ по приглашению."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Извините, неверный приглаÑительный код."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ ÑƒÑпешна!"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "РегиÑтрациÑ"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "РегиÑÑ‚Ñ€Ð°Ñ†Ð¸Ñ Ð½ÐµÐ´Ð¾Ð¿ÑƒÑтима."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
"Ð’Ñ‹ не можете зарегиÑтрироватьÑÑ, еÑли Ð’Ñ‹ не подтверждаете лицензионного "
"ÑоглашениÑ."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Такой Ñлектронный Ð°Ð´Ñ€ÐµÑ ÑƒÐ¶Ðµ задейÑтвован."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ðеверное Ð¸Ð¼Ñ Ð¸Ð»Ð¸ пароль."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-"При помощи Ñтой формы вы можете Ñоздать новый аккаунт, чтобы публиковать "
-"короткие ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ уÑтанавливать ÑвÑзи Ñ Ð´Ñ€ÑƒÐ·ÑŒÑми и коллегами (ЕÑÑ‚ÑŒ "
-"[OpenID](http://openid.net/) аккаунт? Тогда иÑпользуй [OpenID региÑтрацию](%%"
-"action.openidlogin%%)!)"
+"С помощью Ñтой формы вы можете Ñоздать новую учётную запиÑÑŒ. Тогда вы "
+"получите возможноÑÑ‚ÑŒ публиковать короткие ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¸ уÑтанавливать ÑвÑзи Ñ "
+"друзьÑми и коллегами. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 латинÑких Ñтрочных букв или цифр, без пробелов. ОбÑзательное поле."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 или более Ñимволов. ОбÑзательное поле."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Тот же пароль что и Ñверху. ОбÑзательное поле."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Email"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Ðужна только Ð´Ð»Ñ Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ð¹, оÑведомлений и воÑÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð°Ñ€Ð¾Ð»Ñ."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Полное имÑ, предпочтительно Ваше наÑтоÑщее имÑ"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Мои текÑÑ‚Ñ‹ и файлы находÑÑ‚ÑÑ Ð¿Ð¾Ð´ лицензией"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Я понимаю, что Ñодержание и данные %1$s ÑвлÑÑŽÑ‚ÑÑ Ñ‡Ð°Ñтными и "
+"конфиденциальными."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "ÐвторÑким правом на мои текÑÑ‚Ñ‹ и файлы обладает %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "ÐвторÑкие права на мои текÑÑ‚Ñ‹ и файлы оÑтаютÑÑ Ð·Ð° мной."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Ð’Ñе права защищены."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-", за иÑключением моей личной информации: паролÑ, почты, меÑÑенджера и номера "
-"телефона."
+"Мои текÑÑ‚Ñ‹ и файлы доÑтупны на уÑловиÑÑ… %s, за иÑключением Ñледующей личной "
+"информации: паролÑ, почтового адреÑа, номера меÑÑенджера и номера телефона."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3192,7 +3422,7 @@ msgstr ""
"СпаÑибо за то, что приÑоединилиÑÑŒ к нам, надеемÑÑ, что вы получите "
"удовольÑтвие от иÑÐ¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ ÑервиÑа!"
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3235,7 +3465,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "ÐÐ´Ñ€ÐµÑ URL твоего Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð½Ð° другом подходÑщем ÑервиÑе микроблогинга"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "ПодпиÑатьÑÑ"
@@ -3271,7 +3501,7 @@ msgstr "Ð’Ñ‹ не можете повторить ÑобÑтвенную запÐ
msgid "You already repeated that notice."
msgstr "Ð’Ñ‹ уже повторили Ñту запиÑÑŒ."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Повторено"
@@ -3309,9 +3539,10 @@ msgstr "Лента запиÑей Ð´Ð»Ñ %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
-"Эта лента Ñодержит ответы на запиÑи %1$s, однако %2$s пока не получал их."
+"Эта лента Ñодержит ответы Ð´Ð»Ñ %1$s, однако %2$s пока не получил уведомление "
+"о них."
#: actions/replies.php:204
#, php-format
@@ -3325,12 +3556,11 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-"Ð’Ñ‹ можете попробовать [«подтолкнуть» %1$s](../%2$s) или [напиÑать что-нибудь "
-"Ð´Ð»Ñ Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ ÐµÐ³Ð¾ или её вниманиÑ](%%%%action.newnotice%%%%?"
-"status_textarea=%3$s)."
+"Ð’Ñ‹ можете попробовать «[подтолкнуть %1$s](../%2$s)» или [напиÑать им что-"
+"нибудь](%%%%action.newnotice%%%%?status_textarea=%3$s)."
#: actions/repliesrss.php:72
#, php-format
@@ -3345,7 +3575,7 @@ msgstr "Ð’Ñ‹ не можете Ñнимать роли пользователеÐ
msgid "User doesn't have this role."
msgstr "Пользователь не имеет Ñтой роли."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3360,7 +3590,7 @@ msgstr "Пользователь уже в режиме пеÑочницы."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "СеÑÑии"
@@ -3397,26 +3627,30 @@ msgstr "Ð’Ñ‹ должны авторизоватьÑÑ, чтобы проÑмаÑ
msgid "Application profile"
msgstr "Профиль приложениÑ"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Иконка"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "ИмÑ"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "ОрганизациÑ"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "ОпиÑание"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "СтатиÑтика"
@@ -3505,8 +3739,8 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s пока не выбрал ни одной любимой запиÑи. Ðапишите такую интереÑную запиÑÑŒ, "
"которую он добавит её в чиÑло любимых :)"
@@ -3514,17 +3748,17 @@ msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
-"%s пока не добавил ни одноз запиÑи в любимые. Почему бы не "
+"%s пока не добавил ни одной запиÑи в любимые. Почему бы не "
"[зарегиÑтрироватьÑÑ](%%%%action.register%%%%) и не напиÑать что-нибудь "
"интереÑное, что понравилоÑÑŒ бы Ñтому пользователю? :)"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
-msgstr "Это ÑпоÑоб разделить то, что вам нравитÑÑ."
+msgstr "Это ÑпоÑоб поделитьÑÑ Ñ‚ÐµÐ¼, что вам нравитÑÑ."
#: actions/showgroup.php:82 lib/groupnav.php:86
#, php-format
@@ -3536,67 +3770,67 @@ msgstr "Группа %s"
msgid "%1$s group, page %2$d"
msgstr "Группа %1$s, Ñтраница %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Профиль группы"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "ЗапиÑÑŒ"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "ÐлиаÑÑ‹"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "ДейÑÑ‚Ð²Ð¸Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Лента запиÑей группы %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Лента запиÑей группы %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Лента запиÑей группы %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¿Ñ‹ %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "УчаÑтники"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(пока ничего нет)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Ð’Ñе учаÑтники"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Создано"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3612,7 +3846,7 @@ msgstr ""
"action.register%%%%), чтобы Ñтать учаÑтником группы и получить множеÑтво "
"других возможноÑтей! ([Читать далее](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3625,7 +3859,7 @@ msgstr ""
"обеÑпечении [StatusNet](http://status.net/). УчаÑтники обмениваютÑÑ "
"короткими ÑообщениÑми о Ñвоей жизни и интереÑах. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "ÐдминиÑтраторы"
@@ -3702,12 +3936,11 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
-"Ð’Ñ‹ можете попробовать «подтолкнуть» %1$s или [напиÑать что-нибудь Ð´Ð»Ñ "
-"Ð¿Ñ€Ð¸Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ ÐµÐ³Ð¾ или её вниманиÑ](%%%%action.newnotice%%%%?status_textarea=%2"
-"$s)."
+"Ð’Ñ‹ можете попробовать «подтолкнуть» %1$s или [напиÑать что-нибудь Ð´Ð»Ñ Ð½Ð¸Ñ…](%%%"
+"%action.newnotice%%%%?status_textarea=%2$s)."
#: actions/showstream.php:243
#, php-format
@@ -3731,10 +3964,10 @@ msgid ""
"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
"[StatusNet](http://status.net/) tool. "
msgstr ""
-"**%s** ÑвлÑетÑÑ Ð·Ð°Ñ€ÐµÐ³Ð¸Ñтрированным учаÑтником %%%%site.name%%%% - Ñайта Ð´Ð»Ñ "
+"**%s** ÑвлÑетÑÑ Ð·Ð°Ñ€ÐµÐ³Ð¸Ñтрированным учаÑтником %%%%site.name%%%% — Ñайта Ð´Ð»Ñ "
"[микроблогинга](http://ru.wikipedia.org/wiki/Микроблоггинг), Ñозданного Ñ "
"иÑпользованием Ñвободного программного обеÑÐ¿ÐµÑ‡ÐµÐ½Ð¸Ñ [StatusNet](http://status."
-"net/)."
+"net/). "
#: actions/showstream.php:305
#, php-format
@@ -3767,12 +4000,12 @@ msgid "Unknown language \"%s\"."
msgstr "ÐеизвеÑтный Ñзык «%s»."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Минимальное ограничение текÑта ÑоÑтавлÑет 140 Ñимволов."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Минимальное ограничение текÑта ÑоÑтавлÑет 0 (без ограничений)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr "Ограничение Ð´ÑƒÐ±Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ ÑоÑтавлÑÑ‚ÑŒ 1 или более Ñекунд."
+msgid "Dupe limit must be one or more seconds."
+msgstr "Ограничение Ð´ÑƒÐ±Ð»Ð¸Ñ€Ð¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ð¾ ÑоÑтавлÑÑ‚ÑŒ одну или более Ñекунд."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3863,8 +4096,8 @@ msgid "Unable to save site notice."
msgstr "Ðе удаётÑÑ Ñохранить уведомление Ñайта."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ñайта ÑоÑтавлÑет 255 Ñимволов"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "МакÑÐ¸Ð¼Ð°Ð»ÑŒÐ½Ð°Ñ Ð´Ð»Ð¸Ð½Ð° ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ñайта ÑоÑтавлÑет 255 Ñимволов."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
@@ -3878,46 +4111,73 @@ msgstr "ТекÑÑ‚ ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ñайта (макÑимум 255 ÑиÐ
msgid "Save site notice"
msgstr "Сохранить уведомление Ñайта"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "УÑтановки СМС"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
"Ð’Ñ‹ можете отправлÑÑ‚ÑŒ СМС-ÑÐ¾Ð¾Ð±Ñ‰ÐµÐ½Ð¸Ñ Ð¿Ð¾ Ñлектронному адреÑу от %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "Отправка СМС недоÑтупна."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-адреÑ"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
"Подтверждённый в наÑтоÑщее Ð²Ñ€ÐµÐ¼Ñ SMS-доÑтупный номер мобильного телефона."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Ð’ ожидании Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½Ð¾Ð³Ð¾ номера телефона."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Код подтверждениÑ"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Введите код, который вы получили по телефону."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Подтвердить"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Ðомер телефона Ð´Ð»Ñ Ð¡ÐœÐ¡"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Ðомер телефона, без пробелов, Ñ ÐºÐ¾Ð´Ð¾Ð¼ зоны"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "ÐаÑтройки SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3925,23 +4185,33 @@ msgstr ""
"ПоÑылать мне запиÑи через СМС; Ñ Ð¿Ð¾Ð½Ð¸Ð¼Ð°ÑŽ, что Ñто может привеÑти к раÑходам "
"по переÑылке."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "ÐаÑтройки SMS Ñохранены."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ðет номера телефона."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Провайдер не выбран."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Это уже ваш номер телефона."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Этот телефонный номер уже задейÑтвован другим пользователем."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3949,23 +4219,40 @@ msgstr ""
"Код Ð¿Ð¾Ð´Ñ‚Ð²ÐµÑ€Ð¶Ð´ÐµÐ½Ð¸Ñ Ð²Ñ‹Ñлан на мобильный номер, который вы добавили. Проверьте "
"телефон Ð´Ð»Ñ Ð½Ð°Ñ…Ð¾Ð¶Ð´ÐµÐ½Ð¸Ñ Ñтого кода и инÑтрукций по его иÑпользованию."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Это неверный номер подтверждениÑ."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "Подтверждение SMS отменено."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Это не Ваш номер телефона."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Ðомер SMS телефона удалён."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Выбор провайдера"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Выбор провайдера"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3975,13 +4262,14 @@ msgstr ""
"принимает СМС при помощи Ñлектронных адреÑов и которого нет в ÑпиÑке ниже, "
"то Ñообщите нам об Ñтом по Ñлектронной почте %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Код не введён"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Снимки"
@@ -4002,8 +4290,8 @@ msgid "Invalid snapshot report URL."
msgstr "Ðеверный URL отчёта Ñнимка."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr "При Ñлучайном поÑещении"
+msgid "Randomly during web hit"
+msgstr "При Ñлучайном веб-обращении"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
@@ -4041,8 +4329,8 @@ msgstr "Сохранить наÑтройки Ñнимка"
msgid "You are not subscribed to that profile."
msgstr "Ð’Ñ‹ не подпиÑаны на Ñтот профиль."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Ðе удаётÑÑ Ñохранить подпиÑку."
@@ -4145,11 +4433,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s не проÑматривает ничьи запиÑи."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "СМС"
@@ -4182,12 +4470,12 @@ msgstr "Ðет аргумента ID."
msgid "Tag %s"
msgstr "Теги %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Профиль пользователÑ"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Фото"
@@ -4223,10 +4511,6 @@ msgstr ""
msgid "No such tag."
msgstr "Ðет такого тега."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Метод API реконÑтруируетÑÑ."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Ð’Ñ‹ не заблокировали Ñтого пользователÑ."
@@ -4240,7 +4524,7 @@ msgid "User is not silenced."
msgstr "Пользователь не заглушён."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Ðет ID Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ Ð² запроÑе."
#: actions/unsubscribe.php:98
@@ -4262,7 +4546,7 @@ msgstr "Пользователь"
#: actions/useradminpanel.php:70
msgid "User settings for this StatusNet site."
-msgstr "ПользовательÑкие наÑтройки Ð´Ð»Ñ Ñтого Ñайта StatusNet."
+msgstr "ÐаÑтройки Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ñтого Ñайта StatusNet."
#: actions/useradminpanel.php:149
msgid "Invalid bio limit. Must be numeric."
@@ -4278,7 +4562,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "ÐÐµÐ²ÐµÑ€Ð½Ð°Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñка по умолчанию: «%1$s» не ÑвлÑетÑÑ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÐµÐ¼."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Профиль"
@@ -4337,7 +4622,7 @@ msgstr ""
"подпиÑатьÑÑ Ð½Ð° запиÑи Ñтого пользователÑ. ЕÑли Ð’Ñ‹ Ñтого не хотите делать, "
"нажмите «Отказ»."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "ЛицензиÑ"
@@ -4348,7 +4633,7 @@ msgstr "ПринÑÑ‚ÑŒ"
#: actions/userauthorization.php:218 lib/subscribeform.php:115
#: lib/subscribeform.php:139
msgid "Subscribe to this user"
-msgstr "ПодпиÑатьÑÑ Ð½Ð° %s"
+msgstr "ПодпиÑатьÑÑ Ð½Ð° Ñтого пользователÑ"
#: actions/userauthorization.php:219
msgid "Reject"
@@ -4439,38 +4724,44 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "ПриÑтного аппетита!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Группы %1$s, Ñтраница %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "ИÑкать другие группы"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s не ÑоÑтоит ни в одной группе."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Попробуйте [найти группы](%%action.groupsearch%%) и приÑоединитьÑÑ Ðº ним."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Обновлено от %1$s на %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4479,11 +4770,11 @@ msgstr ""
"Этот Ñайт Ñоздан на оÑнове %1$s верÑии %2$s, Copyright 2008-2010 StatusNet, "
"Inc. и учаÑтники."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Разработчики"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4495,7 +4786,7 @@ msgstr ""
"License, опубликованной Free Software Foundation, либо под верÑией 3, либо "
"(на выбор) под любой более поздней верÑией. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4507,7 +4798,7 @@ msgstr ""
"или ПРИГОДÐОСТИ ДЛЯ ЧÐСТÐОГО ИСПОЛЬЗОВÐÐИЯ. См. GNU Affero General Public "
"License Ð´Ð»Ñ Ð±Ð¾Ð»ÐµÐµ подробной информации. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4516,91 +4807,140 @@ msgstr ""
"Ð’Ñ‹ должны были получить копию GNU Affero General Public License вмеÑте Ñ "
"Ñтой программой. ЕÑли нет, Ñм. %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Плагины"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "ВерÑиÑ"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Ðвтор(Ñ‹)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Ðевозможно обработать URL «%s»"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Робин Ñчитает, что Ñто невозможно."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-"Файл не может быть больше %d байт, тогда как отправленный вами файл Ñодержал "
-"%d байт. Попробуйте загрузить меньшую верÑию."
+"Файл не может быть больше %1$d байт, тогда как отправленный вами файл "
+"Ñодержал %2$d байт. Попробуйте загрузить меньшую верÑию."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Файл такого размера превыÑит вашу пользовательÑкую квоту в %d байта."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Файл такого размера превыÑит вашу меÑÑчную квоту в %d байта."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ðеверное Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð°."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Ðе удаётÑÑ Ð¿Ñ€Ð¸ÑоединитьÑÑ Ðº группе."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Ðе ÑвлÑетÑÑ Ñ‡Ð°Ñтью группы."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Ðе удаётÑÑ Ð¿Ð¾ÐºÐ¸Ð½ÑƒÑ‚ÑŒ группу."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ локальную группу."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Ðе удаётÑÑ Ñоздать токен входа Ð´Ð»Ñ %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Ð˜Ð¼Ñ Ð±Ð°Ð·Ñ‹ данных или DSN не найдено."
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Ð’Ñ‹ заблокированы от отправки прÑмых Ñообщений."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Ðе удаётÑÑ Ð²Ñтавить Ñообщение."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Ðе удаётÑÑ Ð¾Ð±Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ Ñообщение Ñ Ð½Ð¾Ð²Ñ‹Ð¼ URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Ðет такого Ð¿Ñ€Ð¾Ñ„Ð¸Ð»Ñ (%1$d) Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñи (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Ошибка баз данных при вÑтавке хеш-тегов Ð´Ð»Ñ %s"
+msgid "Database error inserting hashtag: %s"
+msgstr "Ошибка баз данных при вÑтавке хеш-тегов: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Проблемы Ñ Ñохранением запиÑи. Слишком длинно."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Проблема при Ñохранении запиÑи. ÐеизвеÑтный пользователь."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Слишком много запиÑей за Ñтоль короткий Ñрок; передохните немного и "
"попробуйте вновь через пару минут."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4608,287 +4948,368 @@ msgstr ""
"Слишком много одинаковых запиÑей за Ñтоль короткий Ñрок; передохните немного "
"и попробуйте вновь через пару минут."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Вам запрещено поÑтитьÑÑ Ð½Ð° Ñтом Ñайте (бан)"
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Проблемы Ñ Ñохранением запиÑи."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "Ð”Ð»Ñ saveKnownGroups указан неверный тип"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Проблемы Ñ Ñохранением входÑщих Ñообщений группы."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+"Ðе удаётÑÑ Ð¾Ñ‚Ð¾Ð·Ð²Ð°Ñ‚ÑŒ право «%1%s» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ #%2$d; пользователь не "
+"ÑущеÑтвует."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Ðе удаётÑÑ Ð¾Ñ‚Ð¾Ð·Ð²Ð°Ñ‚ÑŒ право «%1$s» Ð´Ð»Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ #%2$d; ошибка базы данных."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "ОтÑутÑтвующий профиль."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Ðе удаётÑÑ Ñохранить тег."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Ð’Ñ‹ заблокированы от подпиÑки."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Уже подпиÑаны!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Пользователь заблокировал ВаÑ."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Ðе подпиÑаны!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
-msgstr "Ðевозможно удалить ÑамоподпиÑку."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr "Ðевозможно удалить подпиÑку на Ñамого ÑебÑ."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ подпиÑочный жетон OMB."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ подпиÑку."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Добро пожаловать на %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Ðе удаётÑÑ Ñоздать группу."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Ðе удаётÑÑ Ð½Ð°Ð·Ð½Ð°Ñ‡Ð¸Ñ‚ÑŒ URI группы."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Ðе удаётÑÑ Ð½Ð°Ð·Ð½Ð°Ñ‡Ð¸Ñ‚ÑŒ членÑтво в группе."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Ðе удаётÑÑ Ñохранить информацию о локальной группе."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Изменить ваши наÑтройки профилÑ"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Загрузить аватару"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Измените Ñвой пароль"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Изменить Ñлектронный адреÑ"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Оформить ваш профиль"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Другое"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Другие опции"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Другое"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s — %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Страница без названиÑ"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Ð“Ð»Ð°Ð²Ð½Ð°Ñ Ð½Ð°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Личный профиль и лента друзей"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Личное"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Изменить ваш email, аватар, пароль, профиль"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Соединить Ñ ÑервиÑами"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Соединить"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Изменить конфигурацию Ñайта"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "ÐаÑтройки"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "ПриглаÑите друзей и коллег Ñтать такими же как Ð’Ñ‹ учаÑтниками %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "ПриглаÑить"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Выйти"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Выход"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Создать новый аккаунт"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "РегиÑтрациÑ"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Войти"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Вход"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Помощь"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Помощь"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "ИÑкать людей или текÑÑ‚"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "ПоиÑк"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ"
+msgstr "Уведомление Ñайта"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Локальные виды"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "ÐÐ¾Ð²Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "ÐÐ°Ð²Ð¸Ð³Ð°Ñ†Ð¸Ñ Ð¿Ð¾ подпиÑкам"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Помощь"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "О проекте"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "ЧаВо"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "TOS"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "ПользовательÑкое Ñоглашение"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "ИÑходный код"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "ÐšÐ¾Ð½Ñ‚Ð°ÐºÑ‚Ð½Ð°Ñ Ð¸Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ð¸Ñ"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Бедж"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet лицензиÑ"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
-"**%%site.name%%** — Ñто ÑÐµÑ€Ð²Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð±Ð»Ð¾Ð³Ð¸Ð½Ð³Ð°, Ñозданный Ð´Ð»Ñ Ð²Ð°Ñ Ð¿Ñ€Ð¸ помощи [%"
-"%site.broughtby%%](%%site.broughtbyurl%%). "
+"**%%site.name%%** — Ñто Ñлужба микроблогинга, Ð¾Ñ€Ð³Ð°Ð½Ð¸Ð·Ð¾Ð²Ð°Ð½Ð½Ð°Ñ [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** — ÑÐµÑ€Ð²Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð±Ð»Ð¾Ð³Ð¸Ð½Ð³Ð°. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** — ÑÐµÑ€Ð²Ð¸Ñ Ð¼Ð¸ÐºÑ€Ð¾Ð±Ð»Ð¾Ð³Ð¸Ð½Ð³Ð°."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4900,70 +5321,84 @@ msgstr ""
"лицензией [GNU Affero General Public License](http://www.fsf.org/licensing/"
"licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Ð›Ð¸Ñ†ÐµÐ½Ð·Ð¸Ñ Ñодержимого Ñайта"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Содержание и данные %1$s ÑвлÑÑŽÑ‚ÑÑ Ð»Ð¸Ñ‡Ð½Ñ‹Ð¼Ð¸ и конфиденциальными."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
"ÐвторÑкие права на Ñодержание и данные принадлежат %1$s. Ð’Ñе права защищены."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"ÐвторÑкие права на Ñодержание и данные принадлежат разработчикам. Ð’Ñе права "
"защищены."
-#: lib/action.php:847
-msgid "All "
-msgstr "All "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Ð’Ñе материалы и данные %1$s доÑтупны на уÑловиÑÑ… лицензии %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Разбиение на Ñтраницы"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Сюда"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Туда"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "ОжидалÑÑ ÐºÐ¾Ñ€Ð½ÐµÐ²Ð¾Ð¹ Ñлемент потока, а получен XML-документ целиком."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Пока ещё Ð½ÐµÐ»ÑŒÐ·Ñ Ð¾Ð±Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°Ñ‚ÑŒ удалённое Ñодержимое."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Пока ещё Ð½ÐµÐ»ÑŒÐ·Ñ Ð¾Ð±Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°Ñ‚ÑŒ вÑтроенный XML."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Пока ещё Ð½ÐµÐ»ÑŒÐ·Ñ Ð¾Ð±Ñ€Ð°Ð±Ð°Ñ‚Ñ‹Ð²Ð°Ñ‚ÑŒ вÑтроенное Ñодержание Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Ð’Ñ‹ не можете изменÑÑ‚ÑŒ Ñтот Ñайт."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Ð˜Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸Ñ Ð´Ð»Ñ Ñтой панели недопуÑтимы."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() не реализована."
@@ -4973,156 +5408,192 @@ msgstr "showForm() не реализована."
msgid "saveSettings() not implemented."
msgstr "saveSettings() не реализована."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ наÑтройки оформлениÑ."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "ОÑÐ½Ð¾Ð²Ð½Ð°Ñ ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ñайта"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Сайт"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¾Ñ„Ð¾Ñ€Ð¼Ð»ÐµÐ½Ð¸Ñ"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Оформление"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Пользователь"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð´Ð¾Ñтупа"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ð¿ÑƒÑ‚ÐµÐ¹"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ ÑеÑÑий"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Изменить уведомление Ñайта"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð°Ñ†Ð¸Ñ Ñнимков"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"API реÑурÑа требует доÑтуп Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ Ð¸ запиÑи, но у Ð²Ð°Ñ ÐµÑÑ‚ÑŒ только доÑтуп "
"Ð´Ð»Ñ Ñ‡Ñ‚ÐµÐ½Ð¸Ñ."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"ÐÐµÑƒÐ´Ð°Ñ‡Ð½Ð°Ñ Ð¿Ð¾Ð¿Ñ‹Ñ‚ÐºÐ° авторизации через API, nickname = %1$s, proxy = %2$s, ip = "
-"%3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Изменить приложение"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Иконка Ð´Ð»Ñ Ñтого приложениÑ"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Опишите ваше приложение при помощи %d Ñимволов"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Опишите ваше приложение"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL иÑточника"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL-Ð°Ð´Ñ€ÐµÑ Ð´Ð¾Ð¼Ð°ÑˆÐ½ÐµÐ¹ Ñтраницы Ñтого приложениÑ"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL иÑточника"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "ОрганизациÑ, ответÑÑ‚Ð²ÐµÐ½Ð½Ð°Ñ Ð·Ð° Ñто приложение"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL-Ð°Ð´Ñ€ÐµÑ Ð´Ð¾Ð¼Ð°ÑˆÐ½ÐµÐ¹ Ñтраницы организации"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL Ð´Ð»Ñ Ð¿ÐµÑ€ÐµÐ½Ð°Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾Ñле проверки подлинноÑти"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Браузер"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "ÐžÐ¿ÐµÑ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð°Ñ ÑиÑтема"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Среда Ð²Ñ‹Ð¿Ð¾Ð»Ð½ÐµÐ½Ð¸Ñ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ: браузер или Ð¾Ð¿ÐµÑ€Ð°Ñ†Ð¸Ð¾Ð½Ð½Ð°Ñ ÑиÑтема"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Только чтение"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Чтение и запиÑÑŒ"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"ДоÑтуп по умолчанию Ð´Ð»Ñ Ñтого приложениÑ: только чтение или чтение и запиÑÑŒ"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Отменить"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "чтение/запиÑÑŒ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "только чтение"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Подтверждён доÑтуп %1$s — «%2$s»."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Отозвать"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "ВложениÑ"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Ðвтор"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "СервиÑ"
@@ -5134,45 +5605,64 @@ msgstr "Сообщает, где поÑвлÑетÑÑ Ñто вложение"
msgid "Tags for this attachment"
msgstr "Теги Ð´Ð»Ñ Ñтого вложениÑ"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Изменение Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð½Ðµ удалоÑÑŒ"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Смена Ð¿Ð°Ñ€Ð¾Ð»Ñ Ð½Ðµ разрешена"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Команда иÑполнена"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Команда завершена"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Команда неудачна"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "ПроÑтите, Ñта команда ещё не выполнена."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "ЗапиÑи Ñ Ñ‚Ð°ÐºÐ¸Ð¼ id не ÑущеÑтвует"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "У Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½ÐµÑ‚ поÑледней запиÑи."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Ðе удаётÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Ðе удаётÑÑ Ð½Ð°Ð¹Ñ‚Ð¸ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ Ð¸Ð¼ÐµÐ½ÐµÐ¼ %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "ПроÑтите, Ñта команда ещё не выполнена."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Ðет ÑмыÑла «подталкивать» Ñамого ÑебÑ!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "«Подталкивание» поÑлано %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5183,198 +5673,206 @@ msgstr ""
"ПодпиÑчиков: %2$s\n"
"ЗапиÑей: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "ЗапиÑи Ñ Ñ‚Ð°ÐºÐ¸Ð¼ id не ÑущеÑтвует"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "У Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð½ÐµÑ‚ поÑледней запиÑи."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "ЗапиÑÑŒ помечена как любимаÑ."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Ð’Ñ‹ уже ÑвлÑетеÑÑŒ членом Ñтой группы."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Ðе удаётÑÑ Ð¿Ñ€Ð¸Ñоединить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %s к группе %s"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%1$s вÑтупил в группу %2$s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1$s из группы %2$s."
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Ðе удаётÑÑ Ð¿Ñ€Ð¸Ñоединить Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1$s к группе %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%1$s покинул группу %2$s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Ðе удаётÑÑ ÑƒÐ´Ð°Ð»Ð¸Ñ‚ÑŒ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %1$s из группы %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Полное имÑ: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "МеÑтораÑположение: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "ДомашнÑÑ Ñтраница: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "О пользователе: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Сообщение Ñлишком длинное — не больше %d Ñимволов, вы поÑылаете %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s профиль другой ÑиÑтемы; вы можете отÑылать личное Ñообщение только "
+"пользователÑм Ñтой ÑиÑтемы."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"Сообщение Ñлишком велико. Предельно допуÑÑ‚Ð¸Ð¼Ð°Ñ Ð´Ð»Ð¸Ð½Ð° ÑоÑтавлÑет %1$d "
+"Ñимволов, вы отправили %2$d."
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "ПрÑмое Ñообщение Ð´Ð»Ñ %s поÑлано."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Ошибка при отправке прÑмого ÑообщениÑ."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Ðевозможно повторить ÑобÑтвенную запиÑÑŒ."
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Эта запиÑÑŒ уже повторена"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "ЗапиÑÑŒ %s повторена"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Ошибка при повторении запиÑи."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "ЗапиÑÑŒ Ñлишком Ð´Ð»Ð¸Ð½Ð½Ð°Ñ â€” не больше %d Ñимволов, вы поÑылаете %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Ответ %s отправлен"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Проблемы Ñ Ñохранением запиÑи."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Укажите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð¿Ð¾Ð´Ð¿Ð¸Ñки."
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Ðет такого пользователÑ."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Ðевозможно подпиÑатьÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¾Ð¹ на профили OMB."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "ПодпиÑано на %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Укажите Ð¸Ð¼Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ð´Ð»Ñ Ð¾Ñ‚Ð¼ÐµÐ½Ñ‹ подпиÑки."
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "ОтпиÑано от %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Команда ещё не выполнена."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Оповещение отÑутÑтвует."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Ðет оповещениÑ."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "ЕÑÑ‚ÑŒ оповещение."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "ЕÑÑ‚ÑŒ оповещение."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Команда входа отключена"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr "Эта ÑÑылка дейÑтвительна только один раз в течение 2 минут: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "ОтпиÑано %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Ð’Ñ‹ ни на кого не подпиÑаны."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ð’Ñ‹ подпиÑаны на Ñтих людей:"
msgstr[1] "Ð’Ñ‹ подпиÑаны на Ñтих людей:"
msgstr[2] "Ð’Ñ‹ подпиÑаны на Ñтих людей:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ðикто не подпиÑан на ваÑ."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Эти люди подпиÑалиÑÑŒ на ваÑ:"
msgstr[1] "Эти люди подпиÑалиÑÑŒ на ваÑ:"
msgstr[2] "Эти люди подпиÑалиÑÑŒ на ваÑ:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Ð’Ñ‹ не ÑоÑтоите ни в одной группе."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Ð’Ñ‹ ÑвлÑетеÑÑŒ учаÑтником Ñледующих групп:"
msgstr[1] "Ð’Ñ‹ ÑвлÑетеÑÑŒ учаÑтником Ñледующих групп:"
msgstr[2] "Ð’Ñ‹ ÑвлÑетеÑÑŒ учаÑтником Ñледующих групп:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5454,19 +5952,19 @@ msgstr ""
"tracks — пока не реализовано.\n"
"tracking — пока не реализовано.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Конфигурационный файл не найден. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Конфигурационные файлы иÑкалиÑÑŒ в Ñледующих меÑтах: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Возможно, вы решите запуÑтить уÑтановщик Ð´Ð»Ñ Ð¸ÑÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ñтого."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Перейти к уÑтановщику"
@@ -5640,53 +6138,54 @@ msgstr "Группы Ñ Ð½Ð°Ð¸Ð±Ð¾Ð»ÑŒÑˆÐ¸Ð¼ количеÑтвом запиÑе
msgid "Tags in %s group's notices"
msgstr "Теги запиÑей группы %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Страница недоÑтупна Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ типа, который Ð’Ñ‹ задейÑтвовали."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Ðеподдерживаемый формат файла изображениÑ."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Этот файл Ñлишком большой. МакÑимальный размер файла ÑоÑтавлÑет %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "ЧаÑÑ‚Ð¸Ñ‡Ð½Ð°Ñ Ð·Ð°Ð³Ñ€ÑƒÐ·ÐºÐ°."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "СиÑÑ‚ÐµÐ¼Ð½Ð°Ñ Ð¾ÑˆÐ¸Ð±ÐºÐ° при загрузке файла."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Ðе ÑвлÑетÑÑ Ð¸Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸ÐµÐ¼ или повреждённый файл."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Ðеподдерживаемый формат файла изображениÑ."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "ПотерÑн файл."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Ðеподдерживаемый тип файла"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "МБ"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "КБ"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "ÐеизвеÑтный иÑточник входÑщих Ñообщений %d."
@@ -5707,11 +6206,13 @@ msgstr "Войти Ñ Ð²Ð°ÑˆÐ¸Ð¼ ником и паролем."
msgid "Sign up for a new account"
msgstr "Создать новый аккаунт"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Подтверждение Ñлектронного адреÑа"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5741,12 +6242,24 @@ msgstr ""
"Благодарим за потраченное времÑ, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s теперь Ñледит за вашими запиÑÑми на %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"ЕÑли вы Ñчитаете, Ñта ÑƒÑ‡Ñ‘Ñ‚Ð½Ð°Ñ Ð·Ð°Ð¿Ð¸ÑÑŒ иÑпользуетÑÑ Ñо злоупотреблениÑми, вы "
+"можете заблокировать её включение в Ñвой ÑпиÑок подпиÑчиков и Ñообщить о "
+"Ñпаме админиÑтраторам Ñайта по %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5771,17 +6284,20 @@ msgstr ""
"----\n"
"Измените email-Ð°Ð´Ñ€ÐµÑ Ð¸ наÑтройки уведомлений на %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "БиографиÑ: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ðовый Ñлектронный Ð°Ð´Ñ€ÐµÑ Ð´Ð»Ñ Ð¿Ð¾Ñтинга %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5802,21 +6318,31 @@ msgstr ""
"ИÑкренне Ваш,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s ÑтатуÑ"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Подтверждение СМС"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s. Подтвердите, что Ñто ваш телефон, Ñледующим кодом:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Ð’Ð°Ñ Â«Ð¿Ð¾Ð´Ñ‚Ð¾Ð»ÐºÐ½ÑƒÐ»Â» пользователь %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5843,12 +6369,14 @@ msgstr ""
"С уважением,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ðовое приватное Ñообщение от %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5881,12 +6409,14 @@ msgstr ""
"С уважением,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) добавил вашу запиÑÑŒ в чиÑло Ñвоих любимых"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5923,12 +6453,25 @@ msgstr ""
"С уважением,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Ð’ÑÑŽ цепочку можно прочитать здеÑÑŒ:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) отправил запиÑÑŒ Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ вниманиÑ"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5941,18 +6484,41 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) только что отправил запиÑÑŒ Ð´Ð»Ñ Ð²Ð°ÑˆÐµÐ³Ð¾ Ð²Ð½Ð¸Ð¼Ð°Ð½Ð¸Ñ («@-ответ») на %2"
-"$s.\n"
+"%1$s (@%9$s) отправил вам Ñообщение («@-ответ») на %2$s.\n"
"\n"
-"ТекÑÑ‚ запиÑи:\n"
+"Сообщение находитÑÑ Ð·Ð´ÐµÑÑŒ:\n"
"\n"
"%3$s\n"
"\n"
-"Оно Ñодержит:\n"
+"Ð’ нём говоритÑÑ:\n"
"\n"
"%4$s\n"
"\n"
+"%5$sÐ’Ñ‹ можете ответить здеÑÑŒ:\n"
+"\n"
+"%6$s\n"
+"\n"
+"СпиÑок вÑех @-ответов Ð´Ð»Ñ Ð²Ð°Ñ Ð½Ð°Ñ…Ð¾Ð´Ð¸Ñ‚ÑÑ Ð·Ð´ÐµÑÑŒ:\n"
+"\n"
+"%7$s\n"
+"\n"
+"С уважением,\n"
+"%2$s\n"
+"\n"
+"PS Ð’Ñ‹ можете отключить Ñти ÑƒÐ²ÐµÐ´Ð¾Ð¼Ð»ÐµÐ½Ð¸Ñ Ð¿Ð¾ Ñлектронной почте здеÑÑŒ: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5967,9 +6533,9 @@ msgstr ""
"Ð²Ð¾Ð²Ð»ÐµÑ‡ÐµÐ½Ð¸Ñ Ð´Ñ€ÑƒÐ³Ð¸Ñ… пользователей в разговор. СообщениÑ, получаемые от других "
"людей, видите только вы."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
-msgstr "от "
+msgstr "от"
#: lib/mailhandler.php:37
msgid "Could not parse message."
@@ -6025,24 +6591,24 @@ msgstr "Ðе удаётÑÑ Ð·Ð°Ð¿Ð¸Ñать файл на диÑк."
msgid "File upload stopped by extension."
msgstr "Загрузка файла оÑтановлена по раÑширению."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Файл превышает пользовательÑкую квоту."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Файл не может быть перемещён в целевую директорию."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Ðе удаётÑÑ Ð¾Ð¿Ñ€ÐµÐ´ÐµÐ»Ð¸Ñ‚ÑŒ mime-тип файла."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Попробуйте иÑпользовать другой формат %s."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "Тип файла %s не поддерживаетÑÑ Ð½Ðµ Ñтом Ñервере."
@@ -6097,48 +6663,52 @@ msgstr ""
"К Ñожалению, получение информации о вашем меÑтонахождении занÑло больше "
"времени, чем ожидалоÑÑŒ; повторите попытку позже"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\" %4$s %5$u°%6$u'%7$u\" %8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "Ñ. ш."
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "ю. ш."
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "в. д."
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "з. д."
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\" %4$s %5$u°%6$u'%7$u\" %8$s"
+
+#: lib/noticelist.php:453
msgid "at"
-msgstr "на"
+msgstr "из"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
-msgstr "в контекÑте"
+msgstr "перепиÑка"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Повторено"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Ответить на Ñту запиÑÑŒ"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Ответить"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "ЗапиÑÑŒ повторена"
@@ -6162,6 +6732,10 @@ msgstr "Ошибка при вÑтавке нового профилÑ"
msgid "Error inserting avatar"
msgstr "Ошибка при вÑтавке аватары"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Ошибка Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ñ ÑƒÐ´Ð°Ð»Ñ‘Ð½Ð½Ð¾Ð³Ð¾ профилÑ"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Ошибка вÑтавки удалённого профилÑ"
@@ -6207,11 +6781,11 @@ msgstr "Ваши иÑходÑщие ÑообщениÑ"
msgid "Tags in %s's notices"
msgstr "Теги запиÑей Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "ÐеизвеÑтно"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "ПодпиÑки"
@@ -6219,31 +6793,32 @@ msgstr "ПодпиÑки"
msgid "All subscriptions"
msgstr "Ð’Ñе подпиÑки."
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "ПодпиÑчики"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Ð’Ñе подпиÑчики"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ID пользователÑ"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "РегиÑтрациÑ"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "СреднеÑуточнаÑ"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Ð’Ñе группы"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Ðет аргумента return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Ðереализованный метод."
@@ -6267,11 +6842,19 @@ msgstr "ОÑобые"
msgid "Popular"
msgstr "ПопулÑрное"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Ðет аргумента return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Повторить Ñту запиÑÑŒ?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Да"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Повторить Ñту запиÑÑŒ"
@@ -6280,7 +6863,7 @@ msgstr "Повторить Ñту запиÑÑŒ"
msgid "Revoke the \"%s\" role from this user"
msgstr "Отозвать у Ñтого Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ Ñ€Ð¾Ð»ÑŒ «%s»"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Ðи задан пользователь Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»ÑŒÑкого режима."
@@ -6378,6 +6961,52 @@ msgstr "Облако тегов людей"
msgid "None"
msgstr "Ðет тегов"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "Этот Ñервер не может обработать загруженные темы без поддержки ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Файл темы отÑутÑтвует или произошёл Ñбой при загрузке."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Ошибка при Ñохранении темы."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "ÐžÑˆÐ¸Ð±Ð¾Ñ‡Ð½Ð°Ñ Ñ‚ÐµÐ¼Ð°. ÐŸÐ»Ð¾Ñ…Ð°Ñ Ñтруктура директорий."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Размер загруженной темы Ñлишком велик, в раÑпакованном виде она должна "
+"занимать не более %d байт."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "ÐедопуÑтимый архив: темы. ОтÑутÑтвует файл css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Тема Ñодержит недопуÑтимое Ð¸Ð¼Ñ Ñ„Ð°Ð¹Ð»Ð° или папки. ДопуÑтимы буквы ASCII, "
+"цифры, подчеркивание и знак минуÑа."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Тема Ñодержит файл недопуÑтимого типа «.%s»."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Ошибка Ð¾Ñ‚ÐºÑ€Ñ‹Ñ‚Ð¸Ñ Ð°Ñ€Ñ…Ð¸Ð²Ð° темы."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Самые активные"
@@ -6406,89 +7035,108 @@ msgstr "ОтпиÑатьÑÑ Ð¾Ñ‚ Ñтого пользователÑ"
msgid "Unsubscribe"
msgstr "ОтпиÑатьÑÑ"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "У Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ %s (%d) нет профильной запиÑи."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Изменить аватару"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "ДейÑÑ‚Ð²Ð¸Ñ Ð¿Ð¾Ð»ÑŒÐ·Ð¾Ð²Ð°Ñ‚ÐµÐ»Ñ"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Идёт удаление пользователÑ…"
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Изменение наÑтроек профилÑ"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Редактировать"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "ПоÑлать приватное Ñообщение Ñтому пользователю."
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Сообщение"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Модерировать"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Роль пользователÑ"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "ÐдминиÑтратор"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Модератор"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "пару Ñекунд назад"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "около минуты назад"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "около %d минут(ы) назад"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "около чаÑа назад"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "около %d чаÑа(ов) назад"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "около Ð´Ð½Ñ Ð½Ð°Ð·Ð°Ð´"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "около %d днÑ(ей) назад"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "около меÑÑца назад"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "около %d меÑÑца(ев) назад"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "около года назад"
@@ -6504,7 +7152,7 @@ msgstr ""
"%s не ÑвлÑетÑÑ Ð´Ð¾Ð¿ÑƒÑтимым цветом! ИÑпользуйте 3 или 6 шеÑтнадцатеричных "
"Ñимволов."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/statusnet.pot b/locale/statusnet.pot
new file mode 100644
index 000000000..81c5a97c4
--- /dev/null
+++ b/locale/statusnet.pot
@@ -0,0 +1,6685 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
+
+#. TRANS: Page title
+#. TRANS: Menu item for site administration
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
+msgid "Access"
+msgstr ""
+
+#. TRANS: Page notice
+#: actions/accessadminpanel.php:67
+msgid "Site access settings"
+msgstr ""
+
+#. TRANS: Form legend for registration form.
+#: actions/accessadminpanel.php:161
+msgid "Registration"
+msgstr ""
+
+#. TRANS: Checkbox instructions for admin setting "Private"
+#: actions/accessadminpanel.php:165
+msgid "Prohibit anonymous users (not logged in) from viewing site?"
+msgstr ""
+
+#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
+#: actions/accessadminpanel.php:167
+msgctxt "LABEL"
+msgid "Private"
+msgstr ""
+
+#. TRANS: Checkbox instructions for admin setting "Invite only"
+#: actions/accessadminpanel.php:174
+msgid "Make registration invitation only."
+msgstr ""
+
+#. TRANS: Checkbox label for configuring site as invite only.
+#: actions/accessadminpanel.php:176
+msgid "Invite only"
+msgstr ""
+
+#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
+#: actions/accessadminpanel.php:183
+msgid "Disable new registrations."
+msgstr ""
+
+#. TRANS: Checkbox label for disabling new user registrations.
+#: actions/accessadminpanel.php:185
+msgid "Closed"
+msgstr ""
+
+#. TRANS: Title / tooltip for button to save access settings in site admin panel
+#: actions/accessadminpanel.php:202
+msgid "Save access settings"
+msgstr ""
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
+msgctxt "BUTTON"
+msgid "Save"
+msgstr ""
+
+#. TRANS: Server error when page not found (404)
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
+#: actions/showfavorites.php:138 actions/tag.php:52
+msgid "No such page."
+msgstr ""
+
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
+#: actions/apiaccountupdateprofile.php:105
+#: actions/apiaccountupdateprofilebackgroundimage.php:116
+#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
+#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
+#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
+#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
+#: actions/otp.php:76 actions/remotesubscribe.php:145
+#: actions/remotesubscribe.php:154 actions/replies.php:73
+#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
+msgid "No such user."
+msgstr ""
+
+#. TRANS: Page title. %1$s is user nickname, %2$d is page number
+#: actions/all.php:90
+#, php-format
+msgid "%1$s and friends, page %2$d"
+msgstr ""
+
+#. TRANS: Page title. %1$s is user nickname
+#. TRANS: H1 text. %1$s is user nickname
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
+#: lib/personalgroupnav.php:100
+#, php-format
+msgid "%s and friends"
+msgstr ""
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:107
+#, php-format
+msgid "Feed for friends of %s (RSS 1.0)"
+msgstr ""
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:116
+#, php-format
+msgid "Feed for friends of %s (RSS 2.0)"
+msgstr ""
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:125
+#, php-format
+msgid "Feed for friends of %s (Atom)"
+msgstr ""
+
+#. TRANS: %1$s is user nickname
+#: actions/all.php:138
+#, php-format
+msgid ""
+"This is the timeline for %s and friends but no one has posted anything yet."
+msgstr ""
+
+#: actions/all.php:143
+#, php-format
+msgid ""
+"Try subscribing to more people, [join a group](%%action.groups%%) or post "
+"something yourself."
+msgstr ""
+
+#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
+#: actions/all.php:146
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
+"post a notice to them."
+msgstr ""
+
+#. TRANS: H1 text
+#: actions/all.php:182
+msgid "You and friends"
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
+#, php-format
+msgid "Updates from %1$s and friends on %2$s!"
+msgstr ""
+
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
+#: actions/apiaccountupdateprofile.php:97
+#: actions/apiaccountupdateprofilebackgroundimage.php:94
+#: actions/apiaccountupdateprofilecolors.php:118
+#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
+#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
+#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
+#: actions/apitimelineretweetedtome.php:121
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
+msgid "API method not found."
+msgstr ""
+
+#: actions/apiaccountupdatedeliverydevice.php:86
+#: actions/apiaccountupdateprofile.php:89
+#: actions/apiaccountupdateprofilebackgroundimage.php:86
+#: actions/apiaccountupdateprofilecolors.php:110
+#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
+#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
+msgid "This method requires a POST."
+msgstr ""
+
+#: actions/apiaccountupdatedeliverydevice.php:106
+msgid ""
+"You must specify a parameter named 'device' with a value of one of: sms, im, "
+"none."
+msgstr ""
+
+#: actions/apiaccountupdatedeliverydevice.php:133
+msgid "Could not update user."
+msgstr ""
+
+#: actions/apiaccountupdateprofile.php:112
+#: actions/apiaccountupdateprofilebackgroundimage.php:194
+#: actions/apiaccountupdateprofilecolors.php:185
+#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
+#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
+#: lib/profileaction.php:84
+msgid "User has no profile."
+msgstr ""
+
+#: actions/apiaccountupdateprofile.php:147
+msgid "Could not save profile."
+msgstr ""
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:108
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
+#: actions/newapplication.php:101 actions/newnotice.php:94
+#: lib/designsettings.php:283
+#, php-format
+msgid ""
+"The server was unable to handle that much POST data (%s bytes) due to its "
+"current configuration."
+msgstr ""
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:136
+#: actions/apiaccountupdateprofilebackgroundimage.php:146
+#: actions/apiaccountupdateprofilecolors.php:164
+#: actions/apiaccountupdateprofilecolors.php:174
+#: actions/groupdesignsettings.php:290 actions/groupdesignsettings.php:300
+#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
+#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
+msgid "Unable to save your design settings."
+msgstr ""
+
+#: actions/apiaccountupdateprofilebackgroundimage.php:187
+#: actions/apiaccountupdateprofilecolors.php:142
+msgid "Could not update your design."
+msgstr ""
+
+#: actions/apiblockcreate.php:105
+msgid "You cannot block yourself!"
+msgstr ""
+
+#: actions/apiblockcreate.php:126
+msgid "Block user failed."
+msgstr ""
+
+#: actions/apiblockdestroy.php:114
+msgid "Unblock user failed."
+msgstr ""
+
+#: actions/apidirectmessage.php:89
+#, php-format
+msgid "Direct messages from %s"
+msgstr ""
+
+#: actions/apidirectmessage.php:93
+#, php-format
+msgid "All the direct messages sent from %s"
+msgstr ""
+
+#: actions/apidirectmessage.php:101
+#, php-format
+msgid "Direct messages to %s"
+msgstr ""
+
+#: actions/apidirectmessage.php:105
+#, php-format
+msgid "All the direct messages sent to %s"
+msgstr ""
+
+#: actions/apidirectmessagenew.php:118
+msgid "No message text!"
+msgstr ""
+
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
+#, php-format
+msgid "That's too long. Max message size is %d chars."
+msgstr ""
+
+#: actions/apidirectmessagenew.php:138
+msgid "Recipient user not found."
+msgstr ""
+
+#: actions/apidirectmessagenew.php:142
+msgid "Can't send direct messages to users who aren't your friend."
+msgstr ""
+
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
+msgid "No status found with that ID."
+msgstr ""
+
+#: actions/apifavoritecreate.php:120
+msgid "This status is already a favorite."
+msgstr ""
+
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
+msgid "Could not create favorite."
+msgstr ""
+
+#: actions/apifavoritedestroy.php:123
+msgid "That status is not a favorite."
+msgstr ""
+
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
+msgid "Could not delete favorite."
+msgstr ""
+
+#: actions/apifriendshipscreate.php:109
+msgid "Could not follow user: profile not found."
+msgstr ""
+
+#: actions/apifriendshipscreate.php:118
+#, php-format
+msgid "Could not follow user: %s is already on your list."
+msgstr ""
+
+#: actions/apifriendshipsdestroy.php:109
+msgid "Could not unfollow user: User not found."
+msgstr ""
+
+#: actions/apifriendshipsdestroy.php:120
+msgid "You cannot unfollow yourself."
+msgstr ""
+
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr ""
+
+#: actions/apifriendshipsshow.php:134
+msgid "Could not determine source user."
+msgstr ""
+
+#: actions/apifriendshipsshow.php:142
+msgid "Could not find target user."
+msgstr ""
+
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
+#: actions/newgroup.php:126 actions/profilesettings.php:215
+#: actions/register.php:212
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr ""
+
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
+#: actions/newgroup.php:130 actions/profilesettings.php:238
+#: actions/register.php:215
+msgid "Nickname already in use. Try another one."
+msgstr ""
+
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
+#: actions/newgroup.php:133 actions/profilesettings.php:218
+#: actions/register.php:217
+msgid "Not a valid nickname."
+msgstr ""
+
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
+#: actions/editgroup.php:199 actions/newapplication.php:203
+#: actions/newgroup.php:139 actions/profilesettings.php:222
+#: actions/register.php:224
+msgid "Homepage is not a valid URL."
+msgstr ""
+
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
+#: actions/newgroup.php:142 actions/profilesettings.php:225
+#: actions/register.php:227
+msgid "Full name is too long (max 255 chars)."
+msgstr ""
+
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
+#: actions/newapplication.php:172
+#, php-format
+msgid "Description is too long (max %d chars)."
+msgstr ""
+
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
+#: actions/newgroup.php:148 actions/profilesettings.php:232
+#: actions/register.php:234
+msgid "Location is too long (max 255 chars)."
+msgstr ""
+
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
+#: actions/newgroup.php:159
+#, php-format
+msgid "Too many aliases! Maximum %d."
+msgstr ""
+
+#: actions/apigroupcreate.php:267
+#, php-format
+msgid "Invalid alias: \"%s\"."
+msgstr ""
+
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
+#: actions/newgroup.php:172
+#, php-format
+msgid "Alias \"%s\" already in use. Try another one."
+msgstr ""
+
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
+#: actions/newgroup.php:178
+msgid "Alias can't be the same as nickname."
+msgstr ""
+
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr ""
+
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
+msgid "You are already a member of that group."
+msgstr ""
+
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
+msgid "You have been blocked from that group by the admin."
+msgstr ""
+
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
+msgid "Could not join user %1$s to group %2$s."
+msgstr ""
+
+#: actions/apigroupleave.php:115
+msgid "You are not a member of this group."
+msgstr ""
+
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
+msgid "Could not remove user %1$s from group %2$s."
+msgstr ""
+
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
+#, php-format
+msgid "%s's groups"
+msgstr ""
+
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr ""
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
+#, php-format
+msgid "%s groups"
+msgstr ""
+
+#: actions/apigrouplistall.php:96
+#, php-format
+msgid "groups on %s"
+msgstr ""
+
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr ""
+
+#: actions/apioauthauthorize.php:101
+msgid "No oauth_token parameter provided."
+msgstr ""
+
+#: actions/apioauthauthorize.php:106
+msgid "Invalid token."
+msgstr ""
+
+#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
+#: actions/groupblock.php:66 actions/grouplogo.php:312
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
+#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
+#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
+#: actions/othersettings.php:145 actions/passwordsettings.php:138
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
+#: actions/subscribe.php:86 actions/tagother.php:166
+#: actions/unsubscribe.php:69 actions/userauthorization.php:52
+#: lib/designsettings.php:294
+msgid "There was a problem with your session token. Try again, please."
+msgstr ""
+
+#: actions/apioauthauthorize.php:135
+msgid "Invalid nickname / password!"
+msgstr ""
+
+#: actions/apioauthauthorize.php:159
+msgid "Database error deleting OAuth application user."
+msgstr ""
+
+#: actions/apioauthauthorize.php:185
+msgid "Database error inserting OAuth application user."
+msgstr ""
+
+#: actions/apioauthauthorize.php:214
+#, php-format
+msgid ""
+"The request token %s has been authorized. Please exchange it for an access "
+"token."
+msgstr ""
+
+#: actions/apioauthauthorize.php:227
+#, php-format
+msgid "The request token %s has been denied and revoked."
+msgstr ""
+
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
+#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
+#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
+#: actions/smssettings.php:277 lib/designsettings.php:304
+msgid "Unexpected form submission."
+msgstr ""
+
+#: actions/apioauthauthorize.php:259
+msgid "An application would like to connect to your account"
+msgstr ""
+
+#: actions/apioauthauthorize.php:276
+msgid "Allow or deny access"
+msgstr ""
+
+#: actions/apioauthauthorize.php:292
+#, php-format
+msgid ""
+"The application <strong>%1$s</strong> by <strong>%2$s</strong> would like "
+"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."
+msgstr ""
+
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
+msgid "Account"
+msgstr ""
+
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
+#: actions/userauthorization.php:145 lib/groupeditform.php:152
+#: lib/userprofile.php:132
+msgid "Nickname"
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
+msgid "Password"
+msgstr ""
+
+#: actions/apioauthauthorize.php:328
+msgid "Deny"
+msgstr ""
+
+#: actions/apioauthauthorize.php:334
+msgid "Allow"
+msgstr ""
+
+#: actions/apioauthauthorize.php:351
+msgid "Allow or deny access to your account information."
+msgstr ""
+
+#: actions/apistatusesdestroy.php:112
+msgid "This method requires a POST or DELETE."
+msgstr ""
+
+#: actions/apistatusesdestroy.php:135
+msgid "You may not delete another user's status."
+msgstr ""
+
+#: actions/apistatusesretweet.php:75 actions/apistatusesretweets.php:72
+#: actions/deletenotice.php:52 actions/shownotice.php:92
+msgid "No such notice."
+msgstr ""
+
+#: actions/apistatusesretweet.php:83
+msgid "Cannot repeat your own notice."
+msgstr ""
+
+#: actions/apistatusesretweet.php:91
+msgid "Already repeated that notice."
+msgstr ""
+
+#: actions/apistatusesshow.php:139
+msgid "Status deleted."
+msgstr ""
+
+#: actions/apistatusesshow.php:145
+msgid "No status with that ID found."
+msgstr ""
+
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
+#: lib/mailhandler.php:60
+#, php-format
+msgid "That's too long. Max notice size is %d chars."
+msgstr ""
+
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr ""
+
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
+#, php-format
+msgid "Max notice size is %d chars, including attachment URL."
+msgstr ""
+
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
+msgid "Unsupported format."
+msgstr ""
+
+#: actions/apitimelinefavorites.php:110
+#, php-format
+msgid "%1$s / Favorites from %2$s"
+msgstr ""
+
+#: actions/apitimelinefavorites.php:119
+#, php-format
+msgid "%1$s updates favorited by %2$s / %2$s."
+msgstr ""
+
+#: actions/apitimelinementions.php:118
+#, php-format
+msgid "%1$s / Updates mentioning %2$s"
+msgstr ""
+
+#: actions/apitimelinementions.php:131
+#, php-format
+msgid "%1$s updates that reply to updates from %2$s / %3$s."
+msgstr ""
+
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
+#, php-format
+msgid "%s public timeline"
+msgstr ""
+
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
+#, php-format
+msgid "%s updates from everyone!"
+msgstr ""
+
+#: actions/apitimelineretweetedtome.php:111
+#, php-format
+msgid "Repeated to %s"
+msgstr ""
+
+#: actions/apitimelineretweetsofme.php:114
+#, php-format
+msgid "Repeats of %s"
+msgstr ""
+
+#: actions/apitimelinetag.php:105 actions/tag.php:67
+#, php-format
+msgid "Notices tagged with %s"
+msgstr ""
+
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#, php-format
+msgid "Updates tagged with %1$s on %2$s!"
+msgstr ""
+
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
+
+#: actions/attachment.php:73
+msgid "No such attachment."
+msgstr ""
+
+#: actions/avatarbynickname.php:59 actions/blockedfromgroup.php:73
+#: actions/editgroup.php:84 actions/groupdesignsettings.php:84
+#: actions/grouplogo.php:86 actions/groupmembers.php:76
+#: actions/grouprss.php:91 actions/showgroup.php:121
+msgid "No nickname."
+msgstr ""
+
+#: actions/avatarbynickname.php:64
+msgid "No size."
+msgstr ""
+
+#: actions/avatarbynickname.php:69
+msgid "Invalid size."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
+msgid "Avatar"
+msgstr ""
+
+#: actions/avatarsettings.php:78
+#, php-format
+msgid "You can upload your personal avatar. The maximum file size is %s."
+msgstr ""
+
+#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr ""
+
+#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
+#: actions/grouplogo.php:254
+msgid "Avatar settings"
+msgstr ""
+
+#: actions/avatarsettings.php:127 actions/avatarsettings.php:205
+#: actions/grouplogo.php:202 actions/grouplogo.php:262
+msgid "Original"
+msgstr ""
+
+#: actions/avatarsettings.php:142 actions/avatarsettings.php:217
+#: actions/grouplogo.php:213 actions/grouplogo.php:274
+msgid "Preview"
+msgstr ""
+
+#: actions/avatarsettings.php:149 actions/showapplication.php:252
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
+msgid "Delete"
+msgstr ""
+
+#: actions/avatarsettings.php:166 actions/grouplogo.php:236
+msgid "Upload"
+msgstr ""
+
+#: actions/avatarsettings.php:231 actions/grouplogo.php:289
+msgid "Crop"
+msgstr ""
+
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr ""
+
+#: actions/avatarsettings.php:332
+msgid "Pick a square area of the image to be your avatar"
+msgstr ""
+
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
+msgid "Lost our file data."
+msgstr ""
+
+#: actions/avatarsettings.php:370
+msgid "Avatar updated."
+msgstr ""
+
+#: actions/avatarsettings.php:373
+msgid "Failed updating avatar."
+msgstr ""
+
+#: actions/avatarsettings.php:397
+msgid "Avatar deleted."
+msgstr ""
+
+#: actions/block.php:69
+msgid "You already blocked that user."
+msgstr ""
+
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
+msgid "Block user"
+msgstr ""
+
+#: actions/block.php:138
+msgid ""
+"Are you sure you want to block this user? Afterwards, they will be "
+"unsubscribed from you, unable to subscribe to you in the future, and you "
+"will not be notified of any @-replies from them."
+msgstr ""
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
+#: actions/groupblock.php:178
+msgctxt "BUTTON"
+msgid "No"
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
+msgid "Do not block this user"
+msgstr ""
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
+msgid "Yes"
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
+msgid "Block this user"
+msgstr ""
+
+#: actions/block.php:187
+msgid "Failed to save block information."
+msgstr ""
+
+#: actions/blockedfromgroup.php:80 actions/blockedfromgroup.php:87
+#: actions/editgroup.php:100 actions/foafgroup.php:44 actions/foafgroup.php:62
+#: actions/foafgroup.php:69 actions/groupblock.php:86 actions/groupbyid.php:83
+#: actions/groupdesignsettings.php:100 actions/grouplogo.php:102
+#: actions/groupmembers.php:83 actions/groupmembers.php:90
+#: actions/grouprss.php:98 actions/grouprss.php:105
+#: actions/groupunblock.php:86 actions/joingroup.php:82
+#: actions/joingroup.php:93 actions/leavegroup.php:82
+#: actions/leavegroup.php:93 actions/makeadmin.php:86
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
+msgid "No such group."
+msgstr ""
+
+#: actions/blockedfromgroup.php:97
+#, php-format
+msgid "%s blocked profiles"
+msgstr ""
+
+#: actions/blockedfromgroup.php:100
+#, php-format
+msgid "%1$s blocked profiles, page %2$d"
+msgstr ""
+
+#: actions/blockedfromgroup.php:115
+msgid "A list of the users blocked from joining this group."
+msgstr ""
+
+#: actions/blockedfromgroup.php:288
+msgid "Unblock user from group"
+msgstr ""
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:69
+msgid "Unblock"
+msgstr ""
+
+#: actions/blockedfromgroup.php:320 lib/unblockform.php:80
+msgid "Unblock this user"
+msgstr ""
+
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr ""
+
+#: actions/confirmaddress.php:75
+msgid "No confirmation code."
+msgstr ""
+
+#: actions/confirmaddress.php:80
+msgid "Confirmation code not found."
+msgstr ""
+
+#: actions/confirmaddress.php:85
+msgid "That confirmation code is not for you!"
+msgstr ""
+
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, php-format
+msgid "Unrecognized address type %s."
+msgstr ""
+
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
+msgid "That address has already been confirmed."
+msgstr ""
+
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
+msgid "Couldn't update user."
+msgstr ""
+
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
+msgid "Couldn't delete email confirmation."
+msgstr ""
+
+#: actions/confirmaddress.php:146
+msgid "Confirm address"
+msgstr ""
+
+#: actions/confirmaddress.php:161
+#, php-format
+msgid "The address \"%s\" has been confirmed for your account."
+msgstr ""
+
+#: actions/conversation.php:99
+msgid "Conversation"
+msgstr ""
+
+#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
+msgid "Notices"
+msgstr ""
+
+#: actions/deleteapplication.php:63
+msgid "You must be logged in to delete an application."
+msgstr ""
+
+#: actions/deleteapplication.php:71
+msgid "Application not found."
+msgstr ""
+
+#: actions/deleteapplication.php:78 actions/editapplication.php:77
+#: actions/showapplication.php:94
+msgid "You are not the owner of this application."
+msgstr ""
+
+#: actions/deleteapplication.php:102 actions/editapplication.php:127
+#: actions/newapplication.php:110 actions/showapplication.php:118
+#: lib/action.php:1263
+msgid "There was a problem with your session token."
+msgstr ""
+
+#: actions/deleteapplication.php:123 actions/deleteapplication.php:147
+msgid "Delete application"
+msgstr ""
+
+#: actions/deleteapplication.php:149
+msgid ""
+"Are you sure you want to delete this application? This will clear all data "
+"about the application from the database, including all existing user "
+"connections."
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
+msgid "Do not delete this application"
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
+msgid "Delete this application"
+msgstr ""
+
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
+#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
+#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
+#: actions/tagother.php:33 actions/unsubscribe.php:52
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
+#: lib/settingsaction.php:72
+msgid "Not logged in."
+msgstr ""
+
+#: actions/deletenotice.php:71
+msgid "Can't delete this notice."
+msgstr ""
+
+#: actions/deletenotice.php:103
+msgid ""
+"You are about to permanently delete a notice. Once this is done, it cannot "
+"be undone."
+msgstr ""
+
+#: actions/deletenotice.php:109 actions/deletenotice.php:141
+msgid "Delete notice"
+msgstr ""
+
+#: actions/deletenotice.php:144
+msgid "Are you sure you want to delete this notice?"
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
+msgid "Do not delete this notice"
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
+msgid "Delete this notice"
+msgstr ""
+
+#: actions/deleteuser.php:67
+msgid "You cannot delete users."
+msgstr ""
+
+#: actions/deleteuser.php:74
+msgid "You can only delete local users."
+msgstr ""
+
+#: actions/deleteuser.php:110 actions/deleteuser.php:133
+msgid "Delete user"
+msgstr ""
+
+#: actions/deleteuser.php:136
+msgid ""
+"Are you sure you want to delete this user? This will clear all data about "
+"the user from the database, without a backup."
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
+msgid "Delete this user"
+msgstr ""
+
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
+#: lib/groupnav.php:119
+msgid "Design"
+msgstr ""
+
+#: actions/designadminpanel.php:74
+msgid "Design settings for this StatusNet site."
+msgstr ""
+
+#: actions/designadminpanel.php:318
+msgid "Invalid logo URL."
+msgstr ""
+
+#: actions/designadminpanel.php:322
+#, php-format
+msgid "Theme not available: %s."
+msgstr ""
+
+#: actions/designadminpanel.php:426
+msgid "Change logo"
+msgstr ""
+
+#: actions/designadminpanel.php:431
+msgid "Site logo"
+msgstr ""
+
+#: actions/designadminpanel.php:443
+msgid "Change theme"
+msgstr ""
+
+#: actions/designadminpanel.php:460
+msgid "Site theme"
+msgstr ""
+
+#: actions/designadminpanel.php:461
+msgid "Theme for the site."
+msgstr ""
+
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr ""
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
+msgid "Change background image"
+msgstr ""
+
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
+#: lib/designsettings.php:178
+msgid "Background"
+msgstr ""
+
+#: actions/designadminpanel.php:496
+#, php-format
+msgid ""
+"You can upload a background image for the site. The maximum file size is %1"
+"$s."
+msgstr ""
+
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
+msgid "On"
+msgstr ""
+
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
+msgid "Off"
+msgstr ""
+
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
+msgid "Turn background image on or off."
+msgstr ""
+
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
+msgid "Tile background image"
+msgstr ""
+
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
+msgid "Change colours"
+msgstr ""
+
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
+msgid "Content"
+msgstr ""
+
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
+msgid "Sidebar"
+msgstr ""
+
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
+msgid "Text"
+msgstr ""
+
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
+msgid "Links"
+msgstr ""
+
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
+msgid "Use defaults"
+msgstr ""
+
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
+msgid "Restore default designs"
+msgstr ""
+
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
+msgid "Reset back to default"
+msgstr ""
+
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
+#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
+#: lib/designsettings.php:256 lib/groupeditform.php:202
+msgid "Save"
+msgstr ""
+
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
+msgid "Save design"
+msgstr ""
+
+#: actions/disfavor.php:81
+msgid "This notice is not a favorite!"
+msgstr ""
+
+#: actions/disfavor.php:94
+msgid "Add to favorites"
+msgstr ""
+
+#: actions/doc.php:158
+#, php-format
+msgid "No such document \"%s\""
+msgstr ""
+
+#: actions/editapplication.php:54
+msgid "Edit Application"
+msgstr ""
+
+#: actions/editapplication.php:66
+msgid "You must be logged in to edit an application."
+msgstr ""
+
+#: actions/editapplication.php:81 actions/oauthconnectionssettings.php:166
+#: actions/showapplication.php:87
+msgid "No such application."
+msgstr ""
+
+#: actions/editapplication.php:161
+msgid "Use this form to edit your application."
+msgstr ""
+
+#: actions/editapplication.php:177 actions/newapplication.php:159
+msgid "Name is required."
+msgstr ""
+
+#: actions/editapplication.php:180 actions/newapplication.php:165
+msgid "Name is too long (max 255 chars)."
+msgstr ""
+
+#: actions/editapplication.php:183 actions/newapplication.php:162
+msgid "Name already in use. Try another one."
+msgstr ""
+
+#: actions/editapplication.php:186 actions/newapplication.php:168
+msgid "Description is required."
+msgstr ""
+
+#: actions/editapplication.php:194
+msgid "Source URL is too long."
+msgstr ""
+
+#: actions/editapplication.php:200 actions/newapplication.php:185
+msgid "Source URL is not valid."
+msgstr ""
+
+#: actions/editapplication.php:203 actions/newapplication.php:188
+msgid "Organization is required."
+msgstr ""
+
+#: actions/editapplication.php:206 actions/newapplication.php:191
+msgid "Organization is too long (max 255 chars)."
+msgstr ""
+
+#: actions/editapplication.php:209 actions/newapplication.php:194
+msgid "Organization homepage is required."
+msgstr ""
+
+#: actions/editapplication.php:218 actions/newapplication.php:206
+msgid "Callback is too long."
+msgstr ""
+
+#: actions/editapplication.php:225 actions/newapplication.php:215
+msgid "Callback URL is not valid."
+msgstr ""
+
+#: actions/editapplication.php:258
+msgid "Could not update application."
+msgstr ""
+
+#: actions/editgroup.php:56
+#, php-format
+msgid "Edit %s group"
+msgstr ""
+
+#: actions/editgroup.php:68 actions/grouplogo.php:70 actions/newgroup.php:65
+msgid "You must be logged in to create a group."
+msgstr ""
+
+#: actions/editgroup.php:107 actions/editgroup.php:172
+#: actions/groupdesignsettings.php:107 actions/grouplogo.php:109
+msgid "You must be an admin to edit the group."
+msgstr ""
+
+#: actions/editgroup.php:158
+msgid "Use this form to edit the group."
+msgstr ""
+
+#: actions/editgroup.php:205 actions/newgroup.php:145
+#, php-format
+msgid "description is too long (max %d chars)."
+msgstr ""
+
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr ""
+
+#: actions/editgroup.php:258
+msgid "Could not update group."
+msgstr ""
+
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
+msgid "Could not create aliases."
+msgstr ""
+
+#: actions/editgroup.php:280
+msgid "Options saved."
+msgstr ""
+
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
+msgid "Email settings"
+msgstr ""
+
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
+#, php-format
+msgid "Manage how you get email from %%site.name%%."
+msgstr ""
+
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr ""
+
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
+msgid "Current confirmed email address."
+msgstr ""
+
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
+msgid "Remove"
+msgstr ""
+
+#: actions/emailsettings.php:122
+msgid ""
+"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
+"a message with further instructions."
+msgstr ""
+
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
+msgid "Cancel"
+msgstr ""
+
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
+msgid "Email address, like \"UserName@example.org\""
+msgstr ""
+
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
+msgid "Add"
+msgstr ""
+
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
+msgid "Incoming email"
+msgstr ""
+
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
+msgid "Send email to this address to post new notices."
+msgstr ""
+
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
+msgid "Make a new email address for posting to; cancels the old one."
+msgstr ""
+
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
+msgid "New"
+msgstr ""
+
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
+msgid "Send me notices of new subscriptions through email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
+msgid "Send me email when someone adds my notice as a favorite."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
+msgid "Send me email when someone sends me a private message."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
+msgid "Send me email when someone sends me an \"@-reply\"."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
+msgid "Allow friends to nudge me and send me an email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
+msgid "I want to post notices by email."
+msgstr ""
+
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
+msgid "Publish a MicroID for my email address."
+msgstr ""
+
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
+msgid "No email address."
+msgstr ""
+
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
+msgid "Cannot normalize that email address"
+msgstr ""
+
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
+#: actions/siteadminpanel.php:144
+msgid "Not a valid email address."
+msgstr ""
+
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
+msgid "That is already your email address."
+msgstr ""
+
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
+msgid "That email address already belongs to another user."
+msgstr ""
+
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
+msgid "Couldn't insert confirmation code."
+msgstr ""
+
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
+msgid ""
+"A confirmation code was sent to the email address you added. Check your "
+"inbox (and spam box!) for the code and instructions on how to use it."
+msgstr ""
+
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
+msgid "No pending confirmation to cancel."
+msgstr ""
+
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr ""
+
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
+msgid "That is not your email address."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr ""
+
+#: actions/emailsettings.php:493 actions/smssettings.php:568
+msgid "No incoming email address."
+msgstr ""
+
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
+msgid "Couldn't update user record."
+msgstr ""
+
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
+msgid "Incoming email address removed."
+msgstr ""
+
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
+msgid "New incoming email address added."
+msgstr ""
+
+#: actions/favor.php:79
+msgid "This notice is already a favorite!"
+msgstr ""
+
+#: actions/favor.php:92 lib/disfavorform.php:140
+msgid "Disfavor favorite"
+msgstr ""
+
+#: actions/favorited.php:65 lib/popularnoticesection.php:91
+#: lib/publicgroupnav.php:93
+msgid "Popular notices"
+msgstr ""
+
+#: actions/favorited.php:67
+#, php-format
+msgid "Popular notices, page %d"
+msgstr ""
+
+#: actions/favorited.php:79
+msgid "The most popular notices on the site right now."
+msgstr ""
+
+#: actions/favorited.php:150
+msgid "Favorite notices appear on this page but no one has favorited one yet."
+msgstr ""
+
+#: actions/favorited.php:153
+msgid ""
+"Be the first to add a notice to your favorites by clicking the fave button "
+"next to any notice you like."
+msgstr ""
+
+#: actions/favorited.php:156
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to add a "
+"notice to your favorites!"
+msgstr ""
+
+#: actions/favoritesrss.php:111 actions/showfavorites.php:77
+#: lib/personalgroupnav.php:115
+#, php-format
+msgid "%s's favorite notices"
+msgstr ""
+
+#: actions/favoritesrss.php:115
+#, php-format
+msgid "Updates favored by %1$s on %2$s!"
+msgstr ""
+
+#: actions/featured.php:69 lib/featureduserssection.php:87
+#: lib/publicgroupnav.php:89
+msgid "Featured users"
+msgstr ""
+
+#: actions/featured.php:71
+#, php-format
+msgid "Featured users, page %d"
+msgstr ""
+
+#: actions/featured.php:99
+#, php-format
+msgid "A selection of some great users on %s"
+msgstr ""
+
+#: actions/file.php:34
+msgid "No notice ID."
+msgstr ""
+
+#: actions/file.php:38
+msgid "No notice."
+msgstr ""
+
+#: actions/file.php:42
+msgid "No attachments."
+msgstr ""
+
+#: actions/file.php:51
+msgid "No uploaded attachments."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:69
+msgid "Not expecting this response!"
+msgstr ""
+
+#: actions/finishremotesubscribe.php:80
+msgid "User being listened to does not exist."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:87 actions/remotesubscribe.php:59
+msgid "You can use the local subscription!"
+msgstr ""
+
+#: actions/finishremotesubscribe.php:99
+msgid "That user has blocked you from subscribing."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:110
+msgid "You are not authorized."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:113
+msgid "Could not convert request token to access token."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:118
+msgid "Remote service uses unknown version of OMB protocol."
+msgstr ""
+
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr ""
+
+#: actions/getfile.php:79
+msgid "No such file."
+msgstr ""
+
+#: actions/getfile.php:83
+msgid "Cannot read file."
+msgstr ""
+
+#: actions/grantrole.php:62 actions/revokerole.php:62
+msgid "Invalid role."
+msgstr ""
+
+#: actions/grantrole.php:66 actions/revokerole.php:66
+msgid "This role is reserved and cannot be set."
+msgstr ""
+
+#: actions/grantrole.php:75
+msgid "You cannot grant user roles on this site."
+msgstr ""
+
+#: actions/grantrole.php:82
+msgid "User already has this role."
+msgstr ""
+
+#: actions/groupblock.php:71 actions/groupunblock.php:71
+#: actions/makeadmin.php:71 actions/subedit.php:46
+#: lib/profileformaction.php:79
+msgid "No profile specified."
+msgstr ""
+
+#: actions/groupblock.php:76 actions/groupunblock.php:76
+#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
+msgid "No profile with that ID."
+msgstr ""
+
+#: actions/groupblock.php:81 actions/groupunblock.php:81
+#: actions/makeadmin.php:81
+msgid "No group specified."
+msgstr ""
+
+#: actions/groupblock.php:91
+msgid "Only an admin can block group members."
+msgstr ""
+
+#: actions/groupblock.php:95
+msgid "User is already blocked from group."
+msgstr ""
+
+#: actions/groupblock.php:100
+msgid "User is not a member of group."
+msgstr ""
+
+#: actions/groupblock.php:134 actions/groupmembers.php:360
+msgid "Block user from group"
+msgstr ""
+
+#: actions/groupblock.php:160
+#, php-format
+msgid ""
+"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
+"will be removed from the group, unable to post, and unable to subscribe to "
+"the group in the future."
+msgstr ""
+
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
+msgid "Do not block this user from this group"
+msgstr ""
+
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
+msgid "Block this user from this group"
+msgstr ""
+
+#: actions/groupblock.php:206
+msgid "Database error blocking user from group."
+msgstr ""
+
+#: actions/groupbyid.php:74 actions/userbyid.php:70
+msgid "No ID."
+msgstr ""
+
+#: actions/groupdesignsettings.php:68
+msgid "You must be logged in to edit a group."
+msgstr ""
+
+#: actions/groupdesignsettings.php:144
+msgid "Group design"
+msgstr ""
+
+#: actions/groupdesignsettings.php:155
+msgid ""
+"Customize the way your group looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+
+#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
+#: lib/designsettings.php:391 lib/designsettings.php:413
+msgid "Couldn't update your design."
+msgstr ""
+
+#: actions/groupdesignsettings.php:311 actions/userdesignsettings.php:231
+msgid "Design preferences saved."
+msgstr ""
+
+#: actions/grouplogo.php:142 actions/grouplogo.php:195
+msgid "Group logo"
+msgstr ""
+
+#: actions/grouplogo.php:153
+#, php-format
+msgid ""
+"You can upload a logo image for your group. The maximum file size is %s."
+msgstr ""
+
+#: actions/grouplogo.php:365
+msgid "Pick a square area of the image to be the logo."
+msgstr ""
+
+#: actions/grouplogo.php:399
+msgid "Logo updated."
+msgstr ""
+
+#: actions/grouplogo.php:401
+msgid "Failed updating logo."
+msgstr ""
+
+#: actions/groupmembers.php:100 lib/groupnav.php:92
+#, php-format
+msgid "%s group members"
+msgstr ""
+
+#: actions/groupmembers.php:103
+#, php-format
+msgid "%1$s group members, page %2$d"
+msgstr ""
+
+#: actions/groupmembers.php:118
+msgid "A list of the users in this group."
+msgstr ""
+
+#: actions/groupmembers.php:182 lib/groupnav.php:107
+msgid "Admin"
+msgstr ""
+
+#: actions/groupmembers.php:392 lib/blockform.php:69
+msgid "Block"
+msgstr ""
+
+#: actions/groupmembers.php:487
+msgid "Make user an admin of the group"
+msgstr ""
+
+#: actions/groupmembers.php:519
+msgid "Make Admin"
+msgstr ""
+
+#: actions/groupmembers.php:519
+msgid "Make this user an admin"
+msgstr ""
+
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
+#, php-format
+msgid "%s timeline"
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
+#, php-format
+msgid "Updates from members of %1$s on %2$s!"
+msgstr ""
+
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
+#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
+msgid "Groups"
+msgstr ""
+
+#: actions/groups.php:64
+#, php-format
+msgid "Groups, page %d"
+msgstr ""
+
+#: actions/groups.php:90
+#, php-format
+msgid ""
+"%%%%site.name%%%% groups let you find and talk with people of similar "
+"interests. After you join a group you can send messages to all other members "
+"using the syntax \"!groupname\". Don't see a group you like? Try [searching "
+"for one](%%%%action.groupsearch%%%%) or [start your own!](%%%%action.newgroup"
+"%%%%)"
+msgstr ""
+
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
+msgid "Create a new group"
+msgstr ""
+
+#: actions/groupsearch.php:52
+#, php-format
+msgid ""
+"Search for groups on %%site.name%% by their name, location, or description. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/groupsearch.php:58
+msgid "Group search"
+msgstr ""
+
+#: actions/groupsearch.php:79 actions/noticesearch.php:117
+#: actions/peoplesearch.php:83
+msgid "No results."
+msgstr ""
+
+#: actions/groupsearch.php:82
+#, php-format
+msgid ""
+"If you can't find the group you're looking for, you can [create it](%%action."
+"newgroup%%) yourself."
+msgstr ""
+
+#: actions/groupsearch.php:85
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and [create the group](%%"
+"action.newgroup%%) yourself!"
+msgstr ""
+
+#: actions/groupunblock.php:91
+msgid "Only an admin can unblock group members."
+msgstr ""
+
+#: actions/groupunblock.php:95
+msgid "User is not blocked from group."
+msgstr ""
+
+#: actions/groupunblock.php:128 actions/unblock.php:86
+msgid "Error removing the block."
+msgstr ""
+
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
+msgid "IM settings"
+msgstr ""
+
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
+#, php-format
+msgid ""
+"You can send and receive notices through Jabber/GTalk [instant messages](%%"
+"doc.im%%). Configure your address and settings below."
+msgstr ""
+
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
+msgid "IM is not available."
+msgstr ""
+
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr ""
+
+#: actions/imsettings.php:113
+msgid "Current confirmed Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
+#, php-format
+msgid ""
+"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
+"message with further instructions. (Did you add %s to your buddy list?)"
+msgstr ""
+
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
+#, php-format
+msgid ""
+"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
+"add %s to your buddy list in your IM client or on GTalk."
+msgstr ""
+
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
+msgid "Send me notices through Jabber/GTalk."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
+msgid "Post a notice when my Jabber/GTalk status changes."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
+msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
+msgid "Publish a MicroID for my Jabber/GTalk address."
+msgstr ""
+
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
+msgid "No Jabber ID."
+msgstr ""
+
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
+msgid "Cannot normalize that Jabber ID"
+msgstr ""
+
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
+msgid "Not a valid Jabber ID"
+msgstr ""
+
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
+msgid "That is already your Jabber ID."
+msgstr ""
+
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
+msgid "Jabber ID already belongs to another user."
+msgstr ""
+
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
+#, php-format
+msgid ""
+"A confirmation code was sent to the IM address you added. You must approve %"
+"s for sending messages to you."
+msgstr ""
+
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr ""
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr ""
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
+msgid "That is not your Jabber ID."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr ""
+
+#: actions/inbox.php:59
+#, php-format
+msgid "Inbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/inbox.php:62
+#, php-format
+msgid "Inbox for %s"
+msgstr ""
+
+#: actions/inbox.php:115
+msgid "This is your inbox, which lists your incoming private messages."
+msgstr ""
+
+#: actions/invite.php:39
+msgid "Invites have been disabled."
+msgstr ""
+
+#: actions/invite.php:41
+#, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr ""
+
+#: actions/invite.php:72
+#, php-format
+msgid "Invalid email address: %s"
+msgstr ""
+
+#: actions/invite.php:110
+msgid "Invitation(s) sent"
+msgstr ""
+
+#: actions/invite.php:112
+msgid "Invite new users"
+msgstr ""
+
+#: actions/invite.php:128
+msgid "You are already subscribed to these users:"
+msgstr ""
+
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
+#, php-format
+msgid "%1$s (%2$s)"
+msgstr ""
+
+#: actions/invite.php:136
+msgid ""
+"These people are already users and you were automatically subscribed to them:"
+msgstr ""
+
+#: actions/invite.php:144
+msgid "Invitation(s) sent to the following people:"
+msgstr ""
+
+#: actions/invite.php:150
+msgid ""
+"You will be notified when your invitees accept the invitation and register "
+"on the site. Thanks for growing the community!"
+msgstr ""
+
+#: actions/invite.php:162
+msgid ""
+"Use this form to invite your friends and colleagues to use this service."
+msgstr ""
+
+#: actions/invite.php:187
+msgid "Email addresses"
+msgstr ""
+
+#: actions/invite.php:189
+msgid "Addresses of friends to invite (one per line)"
+msgstr ""
+
+#: actions/invite.php:192
+msgid "Personal message"
+msgstr ""
+
+#: actions/invite.php:194
+msgid "Optionally add a personal message to the invitation."
+msgstr ""
+
+#. TRANS: Send button for inviting friends
+#: actions/invite.php:198
+msgctxt "BUTTON"
+msgid "Send"
+msgstr ""
+
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
+#, php-format
+msgid "%1$s has invited you to join them on %2$s"
+msgstr ""
+
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
+#, php-format
+msgid ""
+"%1$s has invited you to join them on %2$s (%3$s).\n"
+"\n"
+"%2$s is a micro-blogging service that lets you keep up-to-date with people "
+"you know and people who interest you.\n"
+"\n"
+"You can also share news about yourself, your thoughts, or your life online "
+"with people who know about you. It's also great for meeting new people who "
+"share your interests.\n"
+"\n"
+"%1$s said:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see %1$s's profile page on %2$s here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"If you'd like to try the service, click on the link below to accept the "
+"invitation.\n"
+"\n"
+"%6$s\n"
+"\n"
+"If not, you can ignore this message. Thanks for your patience and your "
+"time.\n"
+"\n"
+"Sincerely, %2$s\n"
+msgstr ""
+
+#: actions/joingroup.php:60
+msgid "You must be logged in to join a group."
+msgstr ""
+
+#: actions/joingroup.php:88 actions/leavegroup.php:88
+msgid "No nickname or ID."
+msgstr ""
+
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
+#, php-format
+msgid "%1$s joined group %2$s"
+msgstr ""
+
+#: actions/leavegroup.php:60
+msgid "You must be logged in to leave a group."
+msgstr ""
+
+#: actions/leavegroup.php:100 lib/command.php:373
+msgid "You are not a member of that group."
+msgstr ""
+
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
+#, php-format
+msgid "%1$s left group %2$s"
+msgstr ""
+
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
+msgid "Already logged in."
+msgstr ""
+
+#: actions/login.php:148
+msgid "Incorrect username or password."
+msgstr ""
+
+#: actions/login.php:154 actions/otp.php:120
+msgid "Error setting user. You are probably not authorized."
+msgstr ""
+
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
+msgid "Login"
+msgstr ""
+
+#: actions/login.php:249
+msgid "Login to site"
+msgstr ""
+
+#: actions/login.php:258 actions/register.php:485
+msgid "Remember me"
+msgstr ""
+
+#: actions/login.php:259 actions/register.php:487
+msgid "Automatically login in the future; not for shared computers!"
+msgstr ""
+
+#: actions/login.php:269
+msgid "Lost or forgotten password?"
+msgstr ""
+
+#: actions/login.php:288
+msgid ""
+"For security reasons, please re-enter your user name and password before "
+"changing your settings."
+msgstr ""
+
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr ""
+
+#: actions/login.php:295
+#, php-format
+msgid ""
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr ""
+
+#: actions/makeadmin.php:92
+msgid "Only an admin can make another user an admin."
+msgstr ""
+
+#: actions/makeadmin.php:96
+#, php-format
+msgid "%1$s is already an admin for group \"%2$s\"."
+msgstr ""
+
+#: actions/makeadmin.php:133
+#, php-format
+msgid "Can't get membership record for %1$s in group %2$s."
+msgstr ""
+
+#: actions/makeadmin.php:146
+#, php-format
+msgid "Can't make %1$s an admin for group %2$s."
+msgstr ""
+
+#: actions/microsummary.php:69
+msgid "No current status."
+msgstr ""
+
+#: actions/newapplication.php:52
+msgid "New Application"
+msgstr ""
+
+#: actions/newapplication.php:64
+msgid "You must be logged in to register an application."
+msgstr ""
+
+#: actions/newapplication.php:143
+msgid "Use this form to register a new application."
+msgstr ""
+
+#: actions/newapplication.php:176
+msgid "Source URL is required."
+msgstr ""
+
+#: actions/newapplication.php:258 actions/newapplication.php:267
+msgid "Could not create application."
+msgstr ""
+
+#: actions/newgroup.php:53
+msgid "New group"
+msgstr ""
+
+#: actions/newgroup.php:110
+msgid "Use this form to create a new group."
+msgstr ""
+
+#: actions/newmessage.php:71 actions/newmessage.php:231
+msgid "New message"
+msgstr ""
+
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
+msgid "You can't send a message to this user."
+msgstr ""
+
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
+msgid "No content!"
+msgstr ""
+
+#: actions/newmessage.php:158
+msgid "No recipient specified."
+msgstr ""
+
+#: actions/newmessage.php:164 lib/command.php:484
+msgid ""
+"Don't send a message to yourself; just say it to yourself quietly instead."
+msgstr ""
+
+#: actions/newmessage.php:181
+msgid "Message sent"
+msgstr ""
+
+#: actions/newmessage.php:185
+#, php-format
+msgid "Direct message to %s sent."
+msgstr ""
+
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
+msgid "Ajax Error"
+msgstr ""
+
+#: actions/newnotice.php:69
+msgid "New notice"
+msgstr ""
+
+#: actions/newnotice.php:217
+msgid "Notice posted"
+msgstr ""
+
+#: actions/noticesearch.php:68
+#, php-format
+msgid ""
+"Search for notices on %%site.name%% by their contents. Separate search terms "
+"by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/noticesearch.php:78
+msgid "Text search"
+msgstr ""
+
+#: actions/noticesearch.php:91
+#, php-format
+msgid "Search results for \"%1$s\" on %2$s"
+msgstr ""
+
+#: actions/noticesearch.php:121
+#, php-format
+msgid ""
+"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
+"status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearch.php:124
+#, php-format
+msgid ""
+"Why not [register an account](%%%%action.register%%%%) and be the first to "
+"[post on this topic](%%%%action.newnotice%%%%?status_textarea=%s)!"
+msgstr ""
+
+#: actions/noticesearchrss.php:96
+#, php-format
+msgid "Updates with \"%s\""
+msgstr ""
+
+#: actions/noticesearchrss.php:98
+#, php-format
+msgid "Updates matching search term \"%1$s\" on %2$s!"
+msgstr ""
+
+#: actions/nudge.php:85
+msgid ""
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
+msgstr ""
+
+#: actions/nudge.php:94
+msgid "Nudge sent"
+msgstr ""
+
+#: actions/nudge.php:97
+msgid "Nudge sent!"
+msgstr ""
+
+#: actions/oauthappssettings.php:59
+msgid "You must be logged in to list your applications."
+msgstr ""
+
+#: actions/oauthappssettings.php:74
+msgid "OAuth applications"
+msgstr ""
+
+#: actions/oauthappssettings.php:85
+msgid "Applications you have registered"
+msgstr ""
+
+#: actions/oauthappssettings.php:135
+#, php-format
+msgid "You have not registered any applications yet."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:72
+msgid "Connected applications"
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:83
+msgid "You have allowed the following applications to access you account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:175
+msgid "You are not a user of that application."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:186
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:198
+msgid "You have not authorized any applications to use your account."
+msgstr ""
+
+#: actions/oauthconnectionssettings.php:211
+msgid "Developers can edit the registration settings for their applications "
+msgstr ""
+
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr ""
+
+#: actions/oembed.php:87 actions/shownotice.php:175
+#, php-format
+msgid "%1$s's status on %2$s"
+msgstr ""
+
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr ""
+
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
+
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
+msgid "Not a supported data format."
+msgstr ""
+
+#: actions/opensearch.php:64
+msgid "People Search"
+msgstr ""
+
+#: actions/opensearch.php:67
+msgid "Notice Search"
+msgstr ""
+
+#: actions/othersettings.php:60
+msgid "Other settings"
+msgstr ""
+
+#: actions/othersettings.php:71
+msgid "Manage various other options."
+msgstr ""
+
+#: actions/othersettings.php:108
+msgid " (free service)"
+msgstr ""
+
+#: actions/othersettings.php:116
+msgid "Shorten URLs with"
+msgstr ""
+
+#: actions/othersettings.php:117
+msgid "Automatic shortening service to use."
+msgstr ""
+
+#: actions/othersettings.php:122
+msgid "View profile designs"
+msgstr ""
+
+#: actions/othersettings.php:123
+msgid "Show or hide profile designs."
+msgstr ""
+
+#: actions/othersettings.php:153
+msgid "URL shortening service is too long (max 50 chars)."
+msgstr ""
+
+#: actions/otp.php:69
+msgid "No user ID specified."
+msgstr ""
+
+#: actions/otp.php:83
+msgid "No login token specified."
+msgstr ""
+
+#: actions/otp.php:90
+msgid "No login token requested."
+msgstr ""
+
+#: actions/otp.php:95
+msgid "Invalid login token specified."
+msgstr ""
+
+#: actions/otp.php:104
+msgid "Login token expired."
+msgstr ""
+
+#: actions/outbox.php:58
+#, php-format
+msgid "Outbox for %1$s - page %2$d"
+msgstr ""
+
+#: actions/outbox.php:61
+#, php-format
+msgid "Outbox for %s"
+msgstr ""
+
+#: actions/outbox.php:116
+msgid "This is your outbox, which lists private messages you have sent."
+msgstr ""
+
+#: actions/passwordsettings.php:58
+msgid "Change password"
+msgstr ""
+
+#: actions/passwordsettings.php:69
+msgid "Change your password."
+msgstr ""
+
+#: actions/passwordsettings.php:96 actions/recoverpassword.php:231
+msgid "Password change"
+msgstr ""
+
+#: actions/passwordsettings.php:104
+msgid "Old password"
+msgstr ""
+
+#: actions/passwordsettings.php:108 actions/recoverpassword.php:235
+msgid "New password"
+msgstr ""
+
+#: actions/passwordsettings.php:109
+msgid "6 or more characters"
+msgstr ""
+
+#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
+#: actions/register.php:440
+msgid "Confirm"
+msgstr ""
+
+#: actions/passwordsettings.php:113 actions/recoverpassword.php:240
+msgid "Same as password above"
+msgstr ""
+
+#: actions/passwordsettings.php:117
+msgid "Change"
+msgstr ""
+
+#: actions/passwordsettings.php:154 actions/register.php:237
+msgid "Password must be 6 or more characters."
+msgstr ""
+
+#: actions/passwordsettings.php:157 actions/register.php:240
+msgid "Passwords don't match."
+msgstr ""
+
+#: actions/passwordsettings.php:165
+msgid "Incorrect old password"
+msgstr ""
+
+#: actions/passwordsettings.php:181
+msgid "Error saving user; invalid."
+msgstr ""
+
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
+msgid "Can't save new password."
+msgstr ""
+
+#: actions/passwordsettings.php:192 actions/recoverpassword.php:211
+msgid "Password saved."
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
+msgid "Paths"
+msgstr ""
+
+#: actions/pathsadminpanel.php:70
+msgid "Path and server settings for this StatusNet site."
+msgstr ""
+
+#: actions/pathsadminpanel.php:157
+#, php-format
+msgid "Theme directory not readable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:163
+#, php-format
+msgid "Avatar directory not writable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:169
+#, php-format
+msgid "Background directory not writable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:177
+#, php-format
+msgid "Locales directory not readable: %s."
+msgstr ""
+
+#: actions/pathsadminpanel.php:183
+msgid "Invalid SSL server. The maximum length is 255 characters."
+msgstr ""
+
+#: actions/pathsadminpanel.php:234 actions/siteadminpanel.php:58
+msgid "Site"
+msgstr ""
+
+#: actions/pathsadminpanel.php:238
+msgid "Server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:238
+msgid "Site's server hostname."
+msgstr ""
+
+#: actions/pathsadminpanel.php:242
+msgid "Path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:242
+msgid "Site path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:246
+msgid "Directory path to locales"
+msgstr ""
+
+#: actions/pathsadminpanel.php:250
+msgid "Fancy URLs"
+msgstr ""
+
+#: actions/pathsadminpanel.php:252
+msgid "Use fancy (more readable and memorable) URLs?"
+msgstr ""
+
+#: actions/pathsadminpanel.php:259
+msgid "Theme"
+msgstr ""
+
+#: actions/pathsadminpanel.php:264
+msgid "Theme server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:268
+msgid "Theme path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:272
+msgid "Theme directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:279
+msgid "Avatars"
+msgstr ""
+
+#: actions/pathsadminpanel.php:284
+msgid "Avatar server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:288
+msgid "Avatar path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:292
+msgid "Avatar directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:301
+msgid "Backgrounds"
+msgstr ""
+
+#: actions/pathsadminpanel.php:305
+msgid "Background server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:309
+msgid "Background path"
+msgstr ""
+
+#: actions/pathsadminpanel.php:313
+msgid "Background directory"
+msgstr ""
+
+#: actions/pathsadminpanel.php:320
+msgid "SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:323 actions/snapshotadminpanel.php:202
+msgid "Never"
+msgstr ""
+
+#: actions/pathsadminpanel.php:324
+msgid "Sometimes"
+msgstr ""
+
+#: actions/pathsadminpanel.php:325
+msgid "Always"
+msgstr ""
+
+#: actions/pathsadminpanel.php:329
+msgid "Use SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:330
+msgid "When to use SSL"
+msgstr ""
+
+#: actions/pathsadminpanel.php:335
+msgid "SSL server"
+msgstr ""
+
+#: actions/pathsadminpanel.php:336
+msgid "Server to direct SSL requests to"
+msgstr ""
+
+#: actions/pathsadminpanel.php:352
+msgid "Save paths"
+msgstr ""
+
+#: actions/peoplesearch.php:52
+#, php-format
+msgid ""
+"Search for people on %%site.name%% by their name, location, or interests. "
+"Separate the terms by spaces; they must be 3 characters or more."
+msgstr ""
+
+#: actions/peoplesearch.php:58
+msgid "People search"
+msgstr ""
+
+#: actions/peopletag.php:68
+#, php-format
+msgid "Not a valid people tag: %s."
+msgstr ""
+
+#: actions/peopletag.php:142
+#, php-format
+msgid "Users self-tagged with %1$s - page %2$d"
+msgstr ""
+
+#: actions/postnotice.php:95
+msgid "Invalid notice content."
+msgstr ""
+
+#: actions/postnotice.php:101
+#, php-format
+msgid "Notice license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#: actions/profilesettings.php:60
+msgid "Profile settings"
+msgstr ""
+
+#: actions/profilesettings.php:71
+msgid ""
+"You can update your personal profile info here so people know more about you."
+msgstr ""
+
+#: actions/profilesettings.php:99
+msgid "Profile information"
+msgstr ""
+
+#: actions/profilesettings.php:108 lib/groupeditform.php:154
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr ""
+
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
+msgid "Full name"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
+msgid "Homepage"
+msgstr ""
+
+#: actions/profilesettings.php:117 actions/register.php:462
+msgid "URL of your homepage, blog, or profile on another site"
+msgstr ""
+
+#: actions/profilesettings.php:122 actions/register.php:468
+#, php-format
+msgid "Describe yourself and your interests in %d chars"
+msgstr ""
+
+#: actions/profilesettings.php:125 actions/register.php:471
+msgid "Describe yourself and your interests"
+msgstr ""
+
+#: actions/profilesettings.php:127 actions/register.php:473
+msgid "Bio"
+msgstr ""
+
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
+#: actions/userauthorization.php:166 lib/groupeditform.php:177
+#: lib/userprofile.php:165
+msgid "Location"
+msgstr ""
+
+#: actions/profilesettings.php:134 actions/register.php:480
+msgid "Where you are, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: actions/profilesettings.php:138
+msgid "Share my current location when posting notices"
+msgstr ""
+
+#: actions/profilesettings.php:145 actions/tagother.php:149
+#: actions/tagother.php:209 lib/subscriptionlist.php:106
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
+msgid "Tags"
+msgstr ""
+
+#: actions/profilesettings.php:147
+msgid ""
+"Tags for yourself (letters, numbers, -, ., and _), comma- or space- separated"
+msgstr ""
+
+#: actions/profilesettings.php:151
+msgid "Language"
+msgstr ""
+
+#: actions/profilesettings.php:152
+msgid "Preferred language"
+msgstr ""
+
+#: actions/profilesettings.php:161
+msgid "Timezone"
+msgstr ""
+
+#: actions/profilesettings.php:162
+msgid "What timezone are you normally in?"
+msgstr ""
+
+#: actions/profilesettings.php:167
+msgid ""
+"Automatically subscribe to whoever subscribes to me (best for non-humans)"
+msgstr ""
+
+#: actions/profilesettings.php:228 actions/register.php:230
+#, php-format
+msgid "Bio is too long (max %d chars)."
+msgstr ""
+
+#: actions/profilesettings.php:235 actions/siteadminpanel.php:151
+msgid "Timezone not selected."
+msgstr ""
+
+#: actions/profilesettings.php:241
+msgid "Language is too long (max 50 chars)."
+msgstr ""
+
+#: actions/profilesettings.php:253 actions/tagother.php:178
+#, php-format
+msgid "Invalid tag: \"%s\""
+msgstr ""
+
+#: actions/profilesettings.php:306
+msgid "Couldn't update user for autosubscribe."
+msgstr ""
+
+#: actions/profilesettings.php:363
+msgid "Couldn't save location prefs."
+msgstr ""
+
+#: actions/profilesettings.php:375
+msgid "Couldn't save profile."
+msgstr ""
+
+#: actions/profilesettings.php:383
+msgid "Couldn't save tags."
+msgstr ""
+
+#. TRANS: Message after successful saving of administrative settings.
+#: actions/profilesettings.php:391 lib/adminpanelaction.php:141
+msgid "Settings saved."
+msgstr ""
+
+#: actions/public.php:83
+#, php-format
+msgid "Beyond the page limit (%s)."
+msgstr ""
+
+#: actions/public.php:92
+msgid "Could not retrieve public stream."
+msgstr ""
+
+#: actions/public.php:130
+#, php-format
+msgid "Public timeline, page %d"
+msgstr ""
+
+#: actions/public.php:132 lib/publicgroupnav.php:79
+msgid "Public timeline"
+msgstr ""
+
+#: actions/public.php:160
+msgid "Public Stream Feed (RSS 1.0)"
+msgstr ""
+
+#: actions/public.php:164
+msgid "Public Stream Feed (RSS 2.0)"
+msgstr ""
+
+#: actions/public.php:168
+msgid "Public Stream Feed (Atom)"
+msgstr ""
+
+#: actions/public.php:188
+#, php-format
+msgid ""
+"This is the public timeline for %%site.name%% but no one has posted anything "
+"yet."
+msgstr ""
+
+#: actions/public.php:191
+msgid "Be the first to post!"
+msgstr ""
+
+#: actions/public.php:195
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post!"
+msgstr ""
+
+#: actions/public.php:242
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool. [Join now](%%action.register%%) to share notices about yourself with "
+"friends, family, and colleagues! ([Read more](%%doc.help%%))"
+msgstr ""
+
+#: actions/public.php:247
+#, php-format
+msgid ""
+"This is %%site.name%%, a [micro-blogging](http://en.wikipedia.org/wiki/Micro-"
+"blogging) service based on the Free Software [StatusNet](http://status.net/) "
+"tool."
+msgstr ""
+
+#: actions/publictagcloud.php:57
+msgid "Public tag cloud"
+msgstr ""
+
+#: actions/publictagcloud.php:63
+#, php-format
+msgid "These are most popular recent tags on %s "
+msgstr ""
+
+#: actions/publictagcloud.php:69
+#, php-format
+msgid "No one has posted a notice with a [hashtag](%%doc.tags%%) yet."
+msgstr ""
+
+#: actions/publictagcloud.php:72
+msgid "Be the first to post one!"
+msgstr ""
+
+#: actions/publictagcloud.php:75
+#, php-format
+msgid ""
+"Why not [register an account](%%action.register%%) and be the first to post "
+"one!"
+msgstr ""
+
+#: actions/publictagcloud.php:134
+msgid "Tag cloud"
+msgstr ""
+
+#: actions/recoverpassword.php:36
+msgid "You are already logged in!"
+msgstr ""
+
+#: actions/recoverpassword.php:62
+msgid "No such recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:66
+msgid "Not a recovery code."
+msgstr ""
+
+#: actions/recoverpassword.php:73
+msgid "Recovery code for unknown user."
+msgstr ""
+
+#: actions/recoverpassword.php:86
+msgid "Error with confirmation code."
+msgstr ""
+
+#: actions/recoverpassword.php:97
+msgid "This confirmation code is too old. Please start again."
+msgstr ""
+
+#: actions/recoverpassword.php:111
+msgid "Could not update user with confirmed email address."
+msgstr ""
+
+#: actions/recoverpassword.php:152
+msgid ""
+"If you have forgotten or lost your password, you can get a new one sent to "
+"the email address you have stored in your account."
+msgstr ""
+
+#: actions/recoverpassword.php:158
+msgid "You have been identified. Enter a new password below. "
+msgstr ""
+
+#: actions/recoverpassword.php:188
+msgid "Password recovery"
+msgstr ""
+
+#: actions/recoverpassword.php:191
+msgid "Nickname or email address"
+msgstr ""
+
+#: actions/recoverpassword.php:193
+msgid "Your nickname on this server, or your registered email address."
+msgstr ""
+
+#: actions/recoverpassword.php:199 actions/recoverpassword.php:200
+msgid "Recover"
+msgstr ""
+
+#: actions/recoverpassword.php:208
+msgid "Reset password"
+msgstr ""
+
+#: actions/recoverpassword.php:209
+msgid "Recover password"
+msgstr ""
+
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
+msgid "Password recovery requested"
+msgstr ""
+
+#: actions/recoverpassword.php:213
+msgid "Unknown action"
+msgstr ""
+
+#: actions/recoverpassword.php:236
+msgid "6 or more characters, and don't forget it!"
+msgstr ""
+
+#: actions/recoverpassword.php:243
+msgid "Reset"
+msgstr ""
+
+#: actions/recoverpassword.php:252
+msgid "Enter a nickname or email address."
+msgstr ""
+
+#: actions/recoverpassword.php:282
+msgid "No user with that email address or username."
+msgstr ""
+
+#: actions/recoverpassword.php:299
+msgid "No registered email address for that user."
+msgstr ""
+
+#: actions/recoverpassword.php:313
+msgid "Error saving address confirmation."
+msgstr ""
+
+#: actions/recoverpassword.php:338
+msgid ""
+"Instructions for recovering your password have been sent to the email "
+"address registered to your account."
+msgstr ""
+
+#: actions/recoverpassword.php:357
+msgid "Unexpected password reset."
+msgstr ""
+
+#: actions/recoverpassword.php:365
+msgid "Password must be 6 chars or more."
+msgstr ""
+
+#: actions/recoverpassword.php:369
+msgid "Password and confirmation do not match."
+msgstr ""
+
+#: actions/recoverpassword.php:388 actions/register.php:255
+msgid "Error setting user."
+msgstr ""
+
+#: actions/recoverpassword.php:395
+msgid "New password successfully saved. You are now logged in."
+msgstr ""
+
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
+msgid "Sorry, only invited people can register."
+msgstr ""
+
+#: actions/register.php:99
+msgid "Sorry, invalid invitation code."
+msgstr ""
+
+#: actions/register.php:119
+msgid "Registration successful"
+msgstr ""
+
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
+msgid "Register"
+msgstr ""
+
+#: actions/register.php:142
+msgid "Registration not allowed."
+msgstr ""
+
+#: actions/register.php:205
+msgid "You can't register if you don't agree to the license."
+msgstr ""
+
+#: actions/register.php:219
+msgid "Email address already exists."
+msgstr ""
+
+#: actions/register.php:250 actions/register.php:272
+msgid "Invalid username or password."
+msgstr ""
+
+#: actions/register.php:350
+msgid ""
+"With this form you can create a new account. You can then post notices and "
+"link up to friends and colleagues. "
+msgstr ""
+
+#: actions/register.php:432
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
+msgstr ""
+
+#: actions/register.php:437
+msgid "6 or more characters. Required."
+msgstr ""
+
+#: actions/register.php:441
+msgid "Same as password above. Required."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
+msgid "Email"
+msgstr ""
+
+#: actions/register.php:446 actions/register.php:450
+msgid "Used only for updates, announcements, and password recovery"
+msgstr ""
+
+#: actions/register.php:457
+msgid "Longer name, preferably your \"real\" name"
+msgstr ""
+
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
+msgid ""
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
+msgstr ""
+
+#: actions/register.php:583
+#, php-format
+msgid ""
+"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
+"want to...\n"
+"\n"
+"* Go to [your profile](%2$s) and post your first message.\n"
+"* Add a [Jabber/GTalk address](%%%%action.imsettings%%%%) so you can send "
+"notices through instant messages.\n"
+"* [Search for people](%%%%action.peoplesearch%%%%) that you may know or that "
+"share your interests. \n"
+"* Update your [profile settings](%%%%action.profilesettings%%%%) to tell "
+"others more about you. \n"
+"* Read over the [online docs](%%%%doc.help%%%%) for features you may have "
+"missed. \n"
+"\n"
+"Thanks for signing up and we hope you enjoy using this service."
+msgstr ""
+
+#: actions/register.php:607
+msgid ""
+"(You should receive a message by email momentarily, with instructions on how "
+"to confirm your email address.)"
+msgstr ""
+
+#: actions/remotesubscribe.php:98
+#, php-format
+msgid ""
+"To subscribe, you can [login](%%action.login%%), or [register](%%action."
+"register%%) a new account. If you already have an account on a [compatible "
+"microblogging site](%%doc.openmublog%%), enter your profile URL below."
+msgstr ""
+
+#: actions/remotesubscribe.php:112
+msgid "Remote subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:124
+msgid "Subscribe to a remote user"
+msgstr ""
+
+#: actions/remotesubscribe.php:129
+msgid "User nickname"
+msgstr ""
+
+#: actions/remotesubscribe.php:130
+msgid "Nickname of the user you want to follow"
+msgstr ""
+
+#: actions/remotesubscribe.php:133
+msgid "Profile URL"
+msgstr ""
+
+#: actions/remotesubscribe.php:134
+msgid "URL of your profile on another compatible microblogging service"
+msgstr ""
+
+#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
+#: lib/userprofile.php:406
+msgid "Subscribe"
+msgstr ""
+
+#: actions/remotesubscribe.php:159
+msgid "Invalid profile URL (bad format)"
+msgstr ""
+
+#: actions/remotesubscribe.php:168
+msgid "Not a valid profile URL (no YADIS document or invalid XRDS defined)."
+msgstr ""
+
+#: actions/remotesubscribe.php:176
+msgid "That’s a local profile! Login to subscribe."
+msgstr ""
+
+#: actions/remotesubscribe.php:183
+msgid "Couldn’t get a request token."
+msgstr ""
+
+#: actions/repeat.php:57
+msgid "Only logged-in users can repeat notices."
+msgstr ""
+
+#: actions/repeat.php:64 actions/repeat.php:71
+msgid "No notice specified."
+msgstr ""
+
+#: actions/repeat.php:76
+msgid "You can't repeat your own notice."
+msgstr ""
+
+#: actions/repeat.php:90
+msgid "You already repeated that notice."
+msgstr ""
+
+#: actions/repeat.php:114 lib/noticelist.php:675
+msgid "Repeated"
+msgstr ""
+
+#: actions/repeat.php:119
+msgid "Repeated!"
+msgstr ""
+
+#: actions/replies.php:126 actions/repliesrss.php:68
+#: lib/personalgroupnav.php:105
+#, php-format
+msgid "Replies to %s"
+msgstr ""
+
+#: actions/replies.php:128
+#, php-format
+msgid "Replies to %1$s, page %2$d"
+msgstr ""
+
+#: actions/replies.php:145
+#, php-format
+msgid "Replies feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/replies.php:152
+#, php-format
+msgid "Replies feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/replies.php:159
+#, php-format
+msgid "Replies feed for %s (Atom)"
+msgstr ""
+
+#: actions/replies.php:199
+#, php-format
+msgid ""
+"This is the timeline showing replies to %1$s but %2$s hasn't received a "
+"notice to them yet."
+msgstr ""
+
+#: actions/replies.php:204
+#, php-format
+msgid ""
+"You can engage other users in a conversation, subscribe to more people or "
+"[join groups](%%action.groups%%)."
+msgstr ""
+
+#: actions/replies.php:206
+#, php-format
+msgid ""
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
+msgstr ""
+
+#: actions/repliesrss.php:72
+#, php-format
+msgid "Replies to %1$s on %2$s!"
+msgstr ""
+
+#: actions/revokerole.php:75
+msgid "You cannot revoke user roles on this site."
+msgstr ""
+
+#: actions/revokerole.php:82
+msgid "User doesn't have this role."
+msgstr ""
+
+#: actions/rsd.php:146 actions/version.php:159
+msgid "StatusNet"
+msgstr ""
+
+#: actions/sandbox.php:65 actions/unsandbox.php:65
+msgid "You cannot sandbox users on this site."
+msgstr ""
+
+#: actions/sandbox.php:72
+msgid "User is already sandboxed."
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
+#: lib/adminpanelaction.php:392
+msgid "Sessions"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:65
+msgid "Session settings for this StatusNet site."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:175
+msgid "Handle sessions"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:177
+msgid "Whether to handle sessions ourselves."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:181
+msgid "Session debugging"
+msgstr ""
+
+#: actions/sessionsadminpanel.php:183
+msgid "Turn on debugging output for sessions."
+msgstr ""
+
+#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
+#: actions/useradminpanel.php:294
+msgid "Save site settings"
+msgstr ""
+
+#: actions/showapplication.php:82
+msgid "You must be logged in to view an application."
+msgstr ""
+
+#: actions/showapplication.php:157
+msgid "Application profile"
+msgstr ""
+
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
+msgid "Icon"
+msgstr ""
+
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
+msgid "Name"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
+msgid "Organization"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
+msgid "Description"
+msgstr ""
+
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
+msgid "Statistics"
+msgstr ""
+
+#: actions/showapplication.php:203
+#, php-format
+msgid "Created by %1$s - %2$s access by default - %3$d users"
+msgstr ""
+
+#: actions/showapplication.php:213
+msgid "Application actions"
+msgstr ""
+
+#: actions/showapplication.php:236
+msgid "Reset key & secret"
+msgstr ""
+
+#: actions/showapplication.php:261
+msgid "Application info"
+msgstr ""
+
+#: actions/showapplication.php:263
+msgid "Consumer key"
+msgstr ""
+
+#: actions/showapplication.php:268
+msgid "Consumer secret"
+msgstr ""
+
+#: actions/showapplication.php:273
+msgid "Request token URL"
+msgstr ""
+
+#: actions/showapplication.php:278
+msgid "Access token URL"
+msgstr ""
+
+#: actions/showapplication.php:283
+msgid "Authorize URL"
+msgstr ""
+
+#: actions/showapplication.php:288
+msgid ""
+"Note: We support HMAC-SHA1 signatures. We do not support the plaintext "
+"signature method."
+msgstr ""
+
+#: actions/showapplication.php:309
+msgid "Are you sure you want to reset your consumer key and secret?"
+msgstr ""
+
+#: actions/showfavorites.php:79
+#, php-format
+msgid "%1$s's favorite notices, page %2$d"
+msgstr ""
+
+#: actions/showfavorites.php:132
+msgid "Could not retrieve favorite notices."
+msgstr ""
+
+#: actions/showfavorites.php:171
+#, php-format
+msgid "Feed for favorites of %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showfavorites.php:178
+#, php-format
+msgid "Feed for favorites of %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showfavorites.php:185
+#, php-format
+msgid "Feed for favorites of %s (Atom)"
+msgstr ""
+
+#: actions/showfavorites.php:206
+msgid ""
+"You haven't chosen any favorite notices yet. Click the fave button on "
+"notices you like to bookmark them for later or shed a spotlight on them."
+msgstr ""
+
+#: actions/showfavorites.php:208
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:212
+#, php-format
+msgid ""
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
+msgstr ""
+
+#: actions/showfavorites.php:243
+msgid "This is a way to share what you like."
+msgstr ""
+
+#: actions/showgroup.php:82 lib/groupnav.php:86
+#, php-format
+msgid "%s group"
+msgstr ""
+
+#: actions/showgroup.php:84
+#, php-format
+msgid "%1$s group, page %2$d"
+msgstr ""
+
+#: actions/showgroup.php:227
+msgid "Group profile"
+msgstr ""
+
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
+msgid "URL"
+msgstr ""
+
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
+msgid "Note"
+msgstr ""
+
+#: actions/showgroup.php:293 lib/groupeditform.php:184
+msgid "Aliases"
+msgstr ""
+
+#: actions/showgroup.php:302
+msgid "Group actions"
+msgstr ""
+
+#: actions/showgroup.php:338
+#, php-format
+msgid "Notice feed for %s group (RSS 1.0)"
+msgstr ""
+
+#: actions/showgroup.php:344
+#, php-format
+msgid "Notice feed for %s group (RSS 2.0)"
+msgstr ""
+
+#: actions/showgroup.php:350
+#, php-format
+msgid "Notice feed for %s group (Atom)"
+msgstr ""
+
+#: actions/showgroup.php:355
+#, php-format
+msgid "FOAF for %s group"
+msgstr ""
+
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
+msgid "Members"
+msgstr ""
+
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
+msgid "(None)"
+msgstr ""
+
+#: actions/showgroup.php:404
+msgid "All members"
+msgstr ""
+
+#: actions/showgroup.php:439
+msgid "Created"
+msgstr ""
+
+#: actions/showgroup.php:455
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. [Join now](%%%%action.register%%%%) to become part "
+"of this group and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showgroup.php:461
+#, php-format
+msgid ""
+"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. Its members share short messages about "
+"their life and interests. "
+msgstr ""
+
+#: actions/showgroup.php:489
+msgid "Admins"
+msgstr ""
+
+#: actions/showmessage.php:81
+msgid "No such message."
+msgstr ""
+
+#: actions/showmessage.php:98
+msgid "Only the sender and recipient may read this message."
+msgstr ""
+
+#: actions/showmessage.php:108
+#, php-format
+msgid "Message to %1$s on %2$s"
+msgstr ""
+
+#: actions/showmessage.php:113
+#, php-format
+msgid "Message from %1$s on %2$s"
+msgstr ""
+
+#: actions/shownotice.php:90
+msgid "Notice deleted."
+msgstr ""
+
+#: actions/showstream.php:73
+#, php-format
+msgid " tagged %s"
+msgstr ""
+
+#: actions/showstream.php:79
+#, php-format
+msgid "%1$s, page %2$d"
+msgstr ""
+
+#: actions/showstream.php:122
+#, php-format
+msgid "Notice feed for %1$s tagged %2$s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:129
+#, php-format
+msgid "Notice feed for %s (RSS 1.0)"
+msgstr ""
+
+#: actions/showstream.php:136
+#, php-format
+msgid "Notice feed for %s (RSS 2.0)"
+msgstr ""
+
+#: actions/showstream.php:143
+#, php-format
+msgid "Notice feed for %s (Atom)"
+msgstr ""
+
+#: actions/showstream.php:148
+#, php-format
+msgid "FOAF for %s"
+msgstr ""
+
+#: actions/showstream.php:200
+#, php-format
+msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
+msgstr ""
+
+#: actions/showstream.php:205
+msgid ""
+"Seen anything interesting recently? You haven't posted any notices yet, now "
+"would be a good time to start :)"
+msgstr ""
+
+#: actions/showstream.php:207
+#, php-format
+msgid ""
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
+msgstr ""
+
+#: actions/showstream.php:243
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. [Join now](%%%%action.register%%%%) to "
+"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
+msgstr ""
+
+#: actions/showstream.php:248
+#, php-format
+msgid ""
+"**%s** has an account on %%%%site.name%%%%, a [micro-blogging](http://en."
+"wikipedia.org/wiki/Micro-blogging) service based on the Free Software "
+"[StatusNet](http://status.net/) tool. "
+msgstr ""
+
+#: actions/showstream.php:305
+#, php-format
+msgid "Repeat of %s"
+msgstr ""
+
+#: actions/silence.php:65 actions/unsilence.php:65
+msgid "You cannot silence users on this site."
+msgstr ""
+
+#: actions/silence.php:72
+msgid "User is already silenced."
+msgstr ""
+
+#: actions/siteadminpanel.php:69
+msgid "Basic settings for this StatusNet site"
+msgstr ""
+
+#: actions/siteadminpanel.php:133
+msgid "Site name must have non-zero length."
+msgstr ""
+
+#: actions/siteadminpanel.php:141
+msgid "You must have a valid contact email address."
+msgstr ""
+
+#: actions/siteadminpanel.php:159
+#, php-format
+msgid "Unknown language \"%s\"."
+msgstr ""
+
+#: actions/siteadminpanel.php:165
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr ""
+
+#: actions/siteadminpanel.php:171
+msgid "Dupe limit must be one or more seconds."
+msgstr ""
+
+#: actions/siteadminpanel.php:221
+msgid "General"
+msgstr ""
+
+#: actions/siteadminpanel.php:224
+msgid "Site name"
+msgstr ""
+
+#: actions/siteadminpanel.php:225
+msgid "The name of your site, like \"Yourcompany Microblog\""
+msgstr ""
+
+#: actions/siteadminpanel.php:229
+msgid "Brought by"
+msgstr ""
+
+#: actions/siteadminpanel.php:230
+msgid "Text used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:234
+msgid "Brought by URL"
+msgstr ""
+
+#: actions/siteadminpanel.php:235
+msgid "URL used for credits link in footer of each page"
+msgstr ""
+
+#: actions/siteadminpanel.php:239
+msgid "Contact email address for your site"
+msgstr ""
+
+#: actions/siteadminpanel.php:245
+msgid "Local"
+msgstr ""
+
+#: actions/siteadminpanel.php:256
+msgid "Default timezone"
+msgstr ""
+
+#: actions/siteadminpanel.php:257
+msgid "Default timezone for the site; usually UTC."
+msgstr ""
+
+#: actions/siteadminpanel.php:262
+msgid "Default language"
+msgstr ""
+
+#: actions/siteadminpanel.php:263
+msgid "Site language when autodetection from browser settings is not available"
+msgstr ""
+
+#: actions/siteadminpanel.php:271
+msgid "Limits"
+msgstr ""
+
+#: actions/siteadminpanel.php:274
+msgid "Text limit"
+msgstr ""
+
+#: actions/siteadminpanel.php:274
+msgid "Maximum number of characters for notices."
+msgstr ""
+
+#: actions/siteadminpanel.php:278
+msgid "Dupe limit"
+msgstr ""
+
+#: actions/siteadminpanel.php:278
+msgid "How long users must wait (in seconds) to post the same thing again."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:56
+msgid "Site Notice"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:67
+msgid "Edit site-wide message"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:103
+msgid "Unable to save site notice."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:113
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:176
+msgid "Site notice text"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:178
+msgid "Site-wide notice text (255 chars max; HTML okay)"
+msgstr ""
+
+#: actions/sitenoticeadminpanel.php:198
+msgid "Save site notice"
+msgstr ""
+
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
+msgid "SMS settings"
+msgstr ""
+
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
+#, php-format
+msgid "You can receive SMS messages through email from %%site.name%%."
+msgstr ""
+
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
+msgid "SMS is not available."
+msgstr ""
+
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr ""
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
+msgid "Current confirmed SMS-enabled phone number."
+msgstr ""
+
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
+msgid "Awaiting confirmation on this phone number."
+msgstr ""
+
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
+msgid "Confirmation code"
+msgstr ""
+
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
+msgid "Enter the code you received on your phone."
+msgstr ""
+
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr ""
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
+msgid "SMS phone number"
+msgstr ""
+
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
+msgid "Phone number, no punctuation or spaces, with area code"
+msgstr ""
+
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
+msgid ""
+"Send me notices through SMS; I understand I may incur exorbitant charges "
+"from my carrier."
+msgstr ""
+
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
+msgid "No phone number."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
+msgid "No carrier selected."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
+msgid "That is already your phone number."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
+msgid "That phone number already belongs to another user."
+msgstr ""
+
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
+msgid ""
+"A confirmation code was sent to the phone number you added. Check your phone "
+"for the code and instructions on how to use it."
+msgstr ""
+
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
+msgid "That is the wrong confirmation number."
+msgstr ""
+
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr ""
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
+msgid "That is not your phone number."
+msgstr ""
+
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr ""
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
+msgid "Mobile carrier"
+msgstr ""
+
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
+msgid "Select a carrier"
+msgstr ""
+
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
+#, php-format
+msgid ""
+"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
+"email but isn't listed here, send email to let us know at %s."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
+msgid "No code entered"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
+#: lib/adminpanelaction.php:408
+msgid "Snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:65
+msgid "Manage snapshot configuration"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:127
+msgid "Invalid snapshot run value."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:133
+msgid "Snapshot frequency must be a number."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:144
+msgid "Invalid snapshot report URL."
+msgstr ""
+
+#: actions/snapshotadminpanel.php:200
+msgid "Randomly during web hit"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:201
+msgid "In a scheduled job"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:206
+msgid "Data snapshots"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:208
+msgid "When to send statistical data to status.net servers"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:217
+msgid "Frequency"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:218
+msgid "Snapshots will be sent once every N web hits"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:226
+msgid "Report URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:227
+msgid "Snapshots will be sent to this URL"
+msgstr ""
+
+#: actions/snapshotadminpanel.php:248
+msgid "Save snapshot settings"
+msgstr ""
+
+#: actions/subedit.php:70
+msgid "You are not subscribed to that profile."
+msgstr ""
+
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
+msgid "Could not save subscription."
+msgstr ""
+
+#: actions/subscribe.php:77
+msgid "This action only accepts POST requests."
+msgstr ""
+
+#: actions/subscribe.php:107
+msgid "No such profile."
+msgstr ""
+
+#: actions/subscribe.php:117
+msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
+msgstr ""
+
+#: actions/subscribe.php:145
+msgid "Subscribed"
+msgstr ""
+
+#: actions/subscribers.php:50
+#, php-format
+msgid "%s subscribers"
+msgstr ""
+
+#: actions/subscribers.php:52
+#, php-format
+msgid "%1$s subscribers, page %2$d"
+msgstr ""
+
+#: actions/subscribers.php:63
+msgid "These are the people who listen to your notices."
+msgstr ""
+
+#: actions/subscribers.php:67
+#, php-format
+msgid "These are the people who listen to %s's notices."
+msgstr ""
+
+#: actions/subscribers.php:108
+msgid ""
+"You have no subscribers. Try subscribing to people you know and they might "
+"return the favor"
+msgstr ""
+
+#: actions/subscribers.php:110
+#, php-format
+msgid "%s has no subscribers. Want to be the first?"
+msgstr ""
+
+#: actions/subscribers.php:114
+#, php-format
+msgid ""
+"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
+"%) and be the first?"
+msgstr ""
+
+#: actions/subscriptions.php:52
+#, php-format
+msgid "%s subscriptions"
+msgstr ""
+
+#: actions/subscriptions.php:54
+#, php-format
+msgid "%1$s subscriptions, page %2$d"
+msgstr ""
+
+#: actions/subscriptions.php:65
+msgid "These are the people whose notices you listen to."
+msgstr ""
+
+#: actions/subscriptions.php:69
+#, php-format
+msgid "These are the people whose notices %s listens to."
+msgstr ""
+
+#: actions/subscriptions.php:126
+#, php-format
+msgid ""
+"You're not listening to anyone's notices right now, try subscribing to "
+"people you know. Try [people search](%%action.peoplesearch%%), look for "
+"members in groups you're interested in and in our [featured users](%%action."
+"featured%%). If you're a [Twitter user](%%action.twittersettings%%), you can "
+"automatically subscribe to people you already follow there."
+msgstr ""
+
+#: actions/subscriptions.php:128 actions/subscriptions.php:132
+#, php-format
+msgid "%s is not listening to anyone."
+msgstr ""
+
+#: actions/subscriptions.php:208
+msgid "Jabber"
+msgstr ""
+
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
+msgid "SMS"
+msgstr ""
+
+#: actions/tag.php:69
+#, php-format
+msgid "Notices tagged with %1$s, page %2$d"
+msgstr ""
+
+#: actions/tag.php:87
+#, php-format
+msgid "Notice feed for tag %s (RSS 1.0)"
+msgstr ""
+
+#: actions/tag.php:93
+#, php-format
+msgid "Notice feed for tag %s (RSS 2.0)"
+msgstr ""
+
+#: actions/tag.php:99
+#, php-format
+msgid "Notice feed for tag %s (Atom)"
+msgstr ""
+
+#: actions/tagother.php:39
+msgid "No ID argument."
+msgstr ""
+
+#: actions/tagother.php:65
+#, php-format
+msgid "Tag %s"
+msgstr ""
+
+#: actions/tagother.php:77 lib/userprofile.php:76
+msgid "User profile"
+msgstr ""
+
+#: actions/tagother.php:81 actions/userauthorization.php:132
+#: lib/userprofile.php:103
+msgid "Photo"
+msgstr ""
+
+#: actions/tagother.php:141
+msgid "Tag user"
+msgstr ""
+
+#: actions/tagother.php:151
+msgid ""
+"Tags for this user (letters, numbers, -, ., and _), comma- or space- "
+"separated"
+msgstr ""
+
+#: actions/tagother.php:193
+msgid ""
+"You can only tag people you are subscribed to or who are subscribed to you."
+msgstr ""
+
+#: actions/tagother.php:200
+msgid "Could not save tags."
+msgstr ""
+
+#: actions/tagother.php:236
+msgid "Use this form to add tags to your subscribers or subscriptions."
+msgstr ""
+
+#: actions/tagrss.php:35
+msgid "No such tag."
+msgstr ""
+
+#: actions/unblock.php:59
+msgid "You haven't blocked that user."
+msgstr ""
+
+#: actions/unsandbox.php:72
+msgid "User is not sandboxed."
+msgstr ""
+
+#: actions/unsilence.php:72
+msgid "User is not silenced."
+msgstr ""
+
+#: actions/unsubscribe.php:77
+msgid "No profile ID in request."
+msgstr ""
+
+#: actions/unsubscribe.php:98
+msgid "Unsubscribed"
+msgstr ""
+
+#: actions/updateprofile.php:64 actions/userauthorization.php:337
+#, php-format
+msgid ""
+"Listenee stream license ‘%1$s’ is not compatible with site license ‘%2$s’."
+msgstr ""
+
+#. TRANS: User admin panel title
+#: actions/useradminpanel.php:59
+msgctxt "TITLE"
+msgid "User"
+msgstr ""
+
+#: actions/useradminpanel.php:70
+msgid "User settings for this StatusNet site."
+msgstr ""
+
+#: actions/useradminpanel.php:149
+msgid "Invalid bio limit. Must be numeric."
+msgstr ""
+
+#: actions/useradminpanel.php:155
+msgid "Invalid welcome text. Max length is 255 characters."
+msgstr ""
+
+#: actions/useradminpanel.php:165
+#, php-format
+msgid "Invalid default subscripton: '%1$s' is not user."
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
+#: lib/personalgroupnav.php:109
+msgid "Profile"
+msgstr ""
+
+#: actions/useradminpanel.php:222
+msgid "Bio Limit"
+msgstr ""
+
+#: actions/useradminpanel.php:223
+msgid "Maximum length of a profile bio in characters."
+msgstr ""
+
+#: actions/useradminpanel.php:231
+msgid "New users"
+msgstr ""
+
+#: actions/useradminpanel.php:235
+msgid "New user welcome"
+msgstr ""
+
+#: actions/useradminpanel.php:236
+msgid "Welcome text for new users (Max 255 chars)."
+msgstr ""
+
+#: actions/useradminpanel.php:241
+msgid "Default subscription"
+msgstr ""
+
+#: actions/useradminpanel.php:242
+msgid "Automatically subscribe new users to this user."
+msgstr ""
+
+#: actions/useradminpanel.php:251
+msgid "Invitations"
+msgstr ""
+
+#: actions/useradminpanel.php:256
+msgid "Invitations enabled"
+msgstr ""
+
+#: actions/useradminpanel.php:258
+msgid "Whether to allow users to invite new users."
+msgstr ""
+
+#: actions/userauthorization.php:105
+msgid "Authorize subscription"
+msgstr ""
+
+#: actions/userauthorization.php:110
+msgid ""
+"Please check these details to make sure that you want to subscribe to this "
+"user’s notices. If you didn’t just ask to subscribe to someone’s notices, "
+"click “Rejectâ€."
+msgstr ""
+
+#: actions/userauthorization.php:196 actions/version.php:167
+msgid "License"
+msgstr ""
+
+#: actions/userauthorization.php:217
+msgid "Accept"
+msgstr ""
+
+#: actions/userauthorization.php:218 lib/subscribeform.php:115
+#: lib/subscribeform.php:139
+msgid "Subscribe to this user"
+msgstr ""
+
+#: actions/userauthorization.php:219
+msgid "Reject"
+msgstr ""
+
+#: actions/userauthorization.php:220
+msgid "Reject this subscription"
+msgstr ""
+
+#: actions/userauthorization.php:232
+msgid "No authorization request!"
+msgstr ""
+
+#: actions/userauthorization.php:254
+msgid "Subscription authorized"
+msgstr ""
+
+#: actions/userauthorization.php:256
+msgid ""
+"The subscription has been authorized, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to authorize the "
+"subscription. Your subscription token is:"
+msgstr ""
+
+#: actions/userauthorization.php:266
+msgid "Subscription rejected"
+msgstr ""
+
+#: actions/userauthorization.php:268
+msgid ""
+"The subscription has been rejected, but no callback URL was passed. Check "
+"with the site’s instructions for details on how to fully reject the "
+"subscription."
+msgstr ""
+
+#: actions/userauthorization.php:303
+#, php-format
+msgid "Listener URI ‘%s’ not found here."
+msgstr ""
+
+#: actions/userauthorization.php:308
+#, php-format
+msgid "Listenee URI ‘%s’ is too long."
+msgstr ""
+
+#: actions/userauthorization.php:314
+#, php-format
+msgid "Listenee URI ‘%s’ is a local user."
+msgstr ""
+
+#: actions/userauthorization.php:329
+#, php-format
+msgid "Profile URL ‘%s’ is for a local user."
+msgstr ""
+
+#: actions/userauthorization.php:345
+#, php-format
+msgid "Avatar URL ‘%s’ is not valid."
+msgstr ""
+
+#: actions/userauthorization.php:350
+#, php-format
+msgid "Can’t read avatar URL ‘%s’."
+msgstr ""
+
+#: actions/userauthorization.php:355
+#, php-format
+msgid "Wrong image type for avatar URL ‘%s’."
+msgstr ""
+
+#: actions/userdesignsettings.php:76 lib/designsettings.php:65
+msgid "Profile design"
+msgstr ""
+
+#: actions/userdesignsettings.php:87 lib/designsettings.php:76
+msgid ""
+"Customize the way your profile looks with a background image and a colour "
+"palette of your choice."
+msgstr ""
+
+#: actions/userdesignsettings.php:282
+msgid "Enjoy your hotdog!"
+msgstr ""
+
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
+msgid "%1$s groups, page %2$d"
+msgstr ""
+
+#: actions/usergroups.php:132
+msgid "Search for more groups"
+msgstr ""
+
+#: actions/usergroups.php:159
+#, php-format
+msgid "%s is not a member of any group."
+msgstr ""
+
+#: actions/usergroups.php:164
+#, php-format
+msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
+msgstr ""
+
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
+#, php-format
+msgid "Updates from %1$s on %2$s!"
+msgstr ""
+
+#: actions/version.php:75
+#, php-format
+msgid "StatusNet %s"
+msgstr ""
+
+#: actions/version.php:155
+#, php-format
+msgid ""
+"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
+"Inc. and contributors."
+msgstr ""
+
+#: actions/version.php:163
+msgid "Contributors"
+msgstr ""
+
+#: actions/version.php:170
+msgid ""
+"StatusNet is free software: you can redistribute it and/or modify it under "
+"the terms of the GNU Affero General Public License as published by the Free "
+"Software Foundation, either version 3 of the License, or (at your option) "
+"any later version. "
+msgstr ""
+
+#: actions/version.php:176
+msgid ""
+"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. "
+msgstr ""
+
+#: actions/version.php:182
+#, php-format
+msgid ""
+"You should have received a copy of the GNU Affero General Public License "
+"along with this program. If not, see %s."
+msgstr ""
+
+#: actions/version.php:191
+msgid "Plugins"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
+msgid "Version"
+msgstr ""
+
+#: actions/version.php:199
+msgid "Author(s)"
+msgstr ""
+
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, php-format
+msgid ""
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
+msgstr ""
+
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
+#, php-format
+msgid "A file this large would exceed your user quota of %d bytes."
+msgstr ""
+
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
+#, php-format
+msgid "A file this large would exceed your monthly quota of %d bytes."
+msgstr ""
+
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr ""
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
+msgid "Group join failed."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
+msgid "Not part of group."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
+msgid "Group leave failed."
+msgstr ""
+
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
+msgid "Could not update local group."
+msgstr ""
+
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
+#, php-format
+msgid "Could not create login token for %s"
+msgstr ""
+
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
+msgid "You are banned from sending direct messages."
+msgstr ""
+
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
+msgid "Could not insert message."
+msgstr ""
+
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
+msgid "Could not update message with new URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr ""
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
+msgid "Problem saving notice. Too long."
+msgstr ""
+
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
+msgid "Problem saving notice. Unknown user."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
+msgid ""
+"Too many notices too fast; take a breather and post again in a few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
+msgid ""
+"Too many duplicate messages too quickly; take a breather and post again in a "
+"few minutes."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
+msgid "You are banned from posting notices on this site."
+msgstr ""
+
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
+msgid "Problem saving notice."
+msgstr ""
+
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
+msgid "Problem saving group inbox."
+msgstr ""
+
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
+msgid "RT @%1$s %2$s"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr ""
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
+msgid "You have been banned from subscribing."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
+msgid "Already subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
+msgid "User has blocked you."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
+msgid "Not subscribed!"
+msgstr ""
+
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
+msgstr ""
+
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
+msgstr ""
+
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
+msgstr ""
+
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
+#, php-format
+msgid "Welcome to %1$s, @%2$s!"
+msgstr ""
+
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
+msgid "Could not create group."
+msgstr ""
+
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
+msgid "Could not set group URI."
+msgstr ""
+
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
+msgid "Could not set group membership."
+msgstr ""
+
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
+msgid "Could not save local group info."
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
+msgid "Change your profile settings"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
+msgid "Upload an avatar"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
+msgid "Change your password"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
+msgid "Change email handling"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
+msgid "Design your profile"
+msgstr ""
+
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr ""
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
+#, php-format
+msgid "%1$s - %2$s"
+msgstr ""
+
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
+msgid "Untitled page"
+msgstr ""
+
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
+msgid "Primary site navigation"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Personal"
+#: lib/action.php:442
+msgctxt "TOOLTIP"
+msgid "Personal profile and friends timeline"
+msgstr ""
+
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
+msgctxt "MENU"
+msgid "Personal"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Account"
+#: lib/action.php:447
+msgctxt "TOOLTIP"
+msgid "Change your email, avatar, password, profile"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Services"
+#: lib/action.php:452
+msgctxt "TOOLTIP"
+msgid "Connect to services"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
+msgid "Connect"
+msgstr ""
+
+#. TRANS: Tooltip for menu option "Admin"
+#: lib/action.php:458
+msgctxt "TOOLTIP"
+msgid "Change site configuration"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
+msgctxt "MENU"
+msgid "Admin"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Invite"
+#: lib/action.php:465
+#, php-format
+msgctxt "TOOLTIP"
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
+msgctxt "MENU"
+msgid "Invite"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Logout"
+#: lib/action.php:474
+msgctxt "TOOLTIP"
+msgid "Logout from the site"
+msgstr ""
+
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
+msgctxt "MENU"
+msgid "Logout"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Register"
+#: lib/action.php:482
+msgctxt "TOOLTIP"
+msgid "Create an account"
+msgstr ""
+
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
+msgctxt "MENU"
+msgid "Register"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Login"
+#: lib/action.php:488
+msgctxt "TOOLTIP"
+msgid "Login to the site"
+msgstr ""
+
+#: lib/action.php:491
+msgctxt "MENU"
+msgid "Login"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Help"
+#: lib/action.php:494
+msgctxt "TOOLTIP"
+msgid "Help me!"
+msgstr ""
+
+#: lib/action.php:497
+msgctxt "MENU"
+msgid "Help"
+msgstr ""
+
+#. TRANS: Tooltip for main menu option "Search"
+#: lib/action.php:500
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
+msgstr ""
+
+#: lib/action.php:503
+msgctxt "MENU"
+msgid "Search"
+msgstr ""
+
+#. TRANS: DT element for site notice. String is hidden in default CSS.
+#. TRANS: Menu item for site administration
+#: lib/action.php:525 lib/adminpanelaction.php:400
+msgid "Site notice"
+msgstr ""
+
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
+msgid "Local views"
+msgstr ""
+
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
+msgid "Page notice"
+msgstr ""
+
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
+msgid "Secondary site navigation"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
+msgid "Help"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
+msgid "About"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
+msgid "FAQ"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
+msgid "TOS"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
+msgid "Privacy"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
+msgid "Source"
+msgstr ""
+
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
+msgid "Contact"
+msgstr ""
+
+#: lib/action.php:794
+msgid "Badge"
+msgstr ""
+
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
+msgid "StatusNet software license"
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, php-format
+msgid ""
+"**%%site.name%%** is a microblogging service brought to you by [%%site."
+"broughtby%%](%%site.broughtbyurl%%)."
+msgstr ""
+
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
+#, php-format
+msgid "**%%site.name%%** is a microblogging service."
+msgstr ""
+
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
+#, php-format
+msgid ""
+"It runs the [StatusNet](http://status.net/) microblogging software, version %"
+"s, available under the [GNU Affero General Public License](http://www.fsf."
+"org/licensing/licenses/agpl-3.0.html)."
+msgstr ""
+
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
+msgid "Site content license"
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
+#, php-format
+msgid "Content and data of %1$s are private and confidential."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
+#, php-format
+msgid "Content and data copyright by %1$s. All rights reserved."
+msgstr ""
+
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
+msgid "Content and data copyright by contributors. All rights reserved."
+msgstr ""
+
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
+
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
+msgid "Pagination"
+msgstr ""
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
+msgid "After"
+msgstr ""
+
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
+msgid "Before"
+msgstr ""
+
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
+msgid "Can't handle remote content yet."
+msgstr ""
+
+#: lib/activityutils.php:244
+msgid "Can't handle embedded XML content yet."
+msgstr ""
+
+#: lib/activityutils.php:248
+msgid "Can't handle embedded Base64 content yet."
+msgstr ""
+
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
+#: lib/adminpanelaction.php:98
+msgid "You cannot make changes to this site."
+msgstr ""
+
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
+#: lib/adminpanelaction.php:110
+msgid "Changes to that panel are not allowed."
+msgstr ""
+
+#. TRANS: Client error message.
+#: lib/adminpanelaction.php:229
+msgid "showForm() not implemented."
+msgstr ""
+
+#. TRANS: Client error message
+#: lib/adminpanelaction.php:259
+msgid "saveSettings() not implemented."
+msgstr ""
+
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
+msgid "Unable to delete design setting."
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:350
+msgid "Basic site configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:352
+msgctxt "MENU"
+msgid "Site"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:358
+msgid "Design configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:360
+msgctxt "MENU"
+msgid "Design"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:366
+msgid "User configuration"
+msgstr ""
+
+#. TRANS: Menu item for site administration
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
+msgid "User"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:374
+msgid "Access configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:382
+msgid "Paths configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:390
+msgid "Sessions configuration"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:398
+msgid "Edit site notice"
+msgstr ""
+
+#. TRANS: Menu item title/tooltip
+#: lib/adminpanelaction.php:406
+msgid "Snapshots configuration"
+msgstr ""
+
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
+msgid "API resource requires read-write access, but you only have read access."
+msgstr ""
+
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
+msgid "Edit application"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
+msgid "Icon for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
+#, php-format
+msgid "Describe your application in %d characters"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
+msgid "Describe your application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr ""
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
+msgid "Organization responsible for this application"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
+msgid "URL for the homepage of the organization"
+msgstr ""
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
+msgid "URL to redirect to after authentication"
+msgstr ""
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
+msgid "Browser"
+msgstr ""
+
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
+msgid "Desktop"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
+msgid "Type of application, browser or desktop"
+msgstr ""
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
+msgid "Read-only"
+msgstr ""
+
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
+msgid "Read-write"
+msgstr ""
+
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
+msgid "Default access for this application: read-only, or read-write"
+msgstr ""
+
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
+msgid "Revoke"
+msgstr ""
+
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
+msgid "Attachments"
+msgstr ""
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:265
+msgid "Author"
+msgstr ""
+
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
+msgid "Provider"
+msgstr ""
+
+#: lib/attachmentnoticesection.php:67
+msgid "Notices where this attachment appears"
+msgstr ""
+
+#: lib/attachmenttagcloudsection.php:48
+msgid "Tags for this attachment"
+msgstr ""
+
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
+msgid "Password changing failed"
+msgstr ""
+
+#: lib/authenticationplugin.php:236
+msgid "Password changing is not allowed"
+msgstr ""
+
+#: lib/channel.php:157 lib/channel.php:177
+msgid "Command results"
+msgstr ""
+
+#: lib/channel.php:229 lib/mailhandler.php:142
+msgid "Command complete"
+msgstr ""
+
+#: lib/channel.php:240
+msgid "Command failed"
+msgstr ""
+
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr ""
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr ""
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
+#, php-format
+msgid "Could not find a user with nickname %s"
+msgstr ""
+
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr ""
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
+msgid "It does not make a lot of sense to nudge yourself!"
+msgstr ""
+
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
+#, php-format
+msgid "Nudge sent to %s"
+msgstr ""
+
+#: lib/command.php:260
+#, php-format
+msgid ""
+"Subscriptions: %1$s\n"
+"Subscribers: %2$s\n"
+"Notices: %3$s"
+msgstr ""
+
+#: lib/command.php:302
+msgid "Notice marked as fave."
+msgstr ""
+
+#: lib/command.php:323
+msgid "You are already a member of that group"
+msgstr ""
+
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
+#, php-format
+msgid "Could not join user %1$s to group %2$s"
+msgstr ""
+
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
+#, php-format
+msgid "Could not remove user %1$s from group %2$s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
+#, php-format
+msgid "Fullname: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
+#, php-format
+msgid "Location: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
+#, php-format
+msgid "Homepage: %s"
+msgstr ""
+
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
+#, php-format
+msgid "About: %s"
+msgstr ""
+
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
+#, php-format
+msgid "Direct message to %s sent"
+msgstr ""
+
+#: lib/command.php:494
+msgid "Error sending direct message."
+msgstr ""
+
+#: lib/command.php:514
+msgid "Cannot repeat your own notice"
+msgstr ""
+
+#: lib/command.php:519
+msgid "Already repeated that notice"
+msgstr ""
+
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
+#, php-format
+msgid "Notice from %s repeated"
+msgstr ""
+
+#: lib/command.php:531
+msgid "Error repeating notice."
+msgstr ""
+
+#: lib/command.php:562
+#, php-format
+msgid "Notice too long - maximum is %d characters, you sent %d"
+msgstr ""
+
+#: lib/command.php:571
+#, php-format
+msgid "Reply to %s sent"
+msgstr ""
+
+#: lib/command.php:573
+msgid "Error saving notice."
+msgstr ""
+
+#: lib/command.php:620
+msgid "Specify the name of the user to subscribe to"
+msgstr ""
+
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
+
+#: lib/command.php:634
+#, php-format
+msgid "Subscribed to %s"
+msgstr ""
+
+#: lib/command.php:655 lib/command.php:754
+msgid "Specify the name of the user to unsubscribe from"
+msgstr ""
+
+#: lib/command.php:664
+#, php-format
+msgid "Unsubscribed from %s"
+msgstr ""
+
+#: lib/command.php:682 lib/command.php:705
+msgid "Command not yet implemented."
+msgstr ""
+
+#: lib/command.php:685
+msgid "Notification off."
+msgstr ""
+
+#: lib/command.php:687
+msgid "Can't turn off notification."
+msgstr ""
+
+#: lib/command.php:708
+msgid "Notification on."
+msgstr ""
+
+#: lib/command.php:710
+msgid "Can't turn on notification."
+msgstr ""
+
+#: lib/command.php:723
+msgid "Login command is disabled"
+msgstr ""
+
+#: lib/command.php:734
+#, php-format
+msgid "This link is useable only once, and is good for only 2 minutes: %s"
+msgstr ""
+
+#: lib/command.php:761
+#, php-format
+msgid "Unsubscribed %s"
+msgstr ""
+
+#: lib/command.php:778
+msgid "You are not subscribed to anyone."
+msgstr ""
+
+#: lib/command.php:780
+msgid "You are subscribed to this person:"
+msgid_plural "You are subscribed to these people:"
+msgstr[0] ""
+msgstr[1] ""
+
+#: lib/command.php:800
+msgid "No one is subscribed to you."
+msgstr ""
+
+#: lib/command.php:802
+msgid "This person is subscribed to you:"
+msgid_plural "These people are subscribed to you:"
+msgstr[0] ""
+msgstr[1] ""
+
+#: lib/command.php:822
+msgid "You are not a member of any groups."
+msgstr ""
+
+#: lib/command.php:824
+msgid "You are a member of this group:"
+msgid_plural "You are a member of these groups:"
+msgstr[0] ""
+msgstr[1] ""
+
+#: lib/command.php:838
+msgid ""
+"Commands:\n"
+"on - turn on notifications\n"
+"off - turn off notifications\n"
+"help - show this help\n"
+"follow <nickname> - subscribe to user\n"
+"groups - lists the groups you have joined\n"
+"subscriptions - list the people you follow\n"
+"subscribers - list the people that follow you\n"
+"leave <nickname> - unsubscribe from user\n"
+"d <nickname> <text> - direct message to user\n"
+"get <nickname> - get last notice from user\n"
+"whois <nickname> - get profile info on user\n"
+"lose <nickname> - force user to stop following you\n"
+"fav <nickname> - add user's last notice as a 'fave'\n"
+"fav #<notice_id> - add notice with the given id as a 'fave'\n"
+"repeat #<notice_id> - repeat a notice with a given id\n"
+"repeat <nickname> - repeat the last notice from user\n"
+"reply #<notice_id> - reply to notice with a given id\n"
+"reply <nickname> - reply to the last notice from user\n"
+"join <group> - join group\n"
+"login - Get a link to login to the web interface\n"
+"drop <group> - leave group\n"
+"stats - get your stats\n"
+"stop - same as 'off'\n"
+"quit - same as 'off'\n"
+"sub <nickname> - same as 'follow'\n"
+"unsub <nickname> - same as 'leave'\n"
+"last <nickname> - same as 'get'\n"
+"on <nickname> - not yet implemented.\n"
+"off <nickname> - not yet implemented.\n"
+"nudge <nickname> - remind a user to update.\n"
+"invite <phone number> - not yet implemented.\n"
+"track <word> - not yet implemented.\n"
+"untrack <word> - not yet implemented.\n"
+"track off - not yet implemented.\n"
+"untrack all - not yet implemented.\n"
+"tracks - not yet implemented.\n"
+"tracking - not yet implemented.\n"
+msgstr ""
+
+#: lib/common.php:135
+msgid "No configuration file found. "
+msgstr ""
+
+#: lib/common.php:136
+msgid "I looked for configuration files in the following places: "
+msgstr ""
+
+#: lib/common.php:138
+msgid "You may wish to run the installer to fix this."
+msgstr ""
+
+#: lib/common.php:139
+msgid "Go to the installer."
+msgstr ""
+
+#: lib/connectsettingsaction.php:110
+msgid "IM"
+msgstr ""
+
+#: lib/connectsettingsaction.php:111
+msgid "Updates by instant messenger (IM)"
+msgstr ""
+
+#: lib/connectsettingsaction.php:116
+msgid "Updates by SMS"
+msgstr ""
+
+#: lib/connectsettingsaction.php:120
+msgid "Connections"
+msgstr ""
+
+#: lib/connectsettingsaction.php:121
+msgid "Authorized connected applications"
+msgstr ""
+
+#: lib/dberroraction.php:60
+msgid "Database error"
+msgstr ""
+
+#: lib/designsettings.php:105
+msgid "Upload file"
+msgstr ""
+
+#: lib/designsettings.php:109
+msgid ""
+"You can upload your personal background image. The maximum file size is 2MB."
+msgstr ""
+
+#: lib/designsettings.php:418
+msgid "Design defaults restored."
+msgstr ""
+
+#: lib/disfavorform.php:114 lib/disfavorform.php:140
+msgid "Disfavor this notice"
+msgstr ""
+
+#: lib/favorform.php:114 lib/favorform.php:140
+msgid "Favor this notice"
+msgstr ""
+
+#: lib/favorform.php:140
+msgid "Favor"
+msgstr ""
+
+#: lib/feed.php:85
+msgid "RSS 1.0"
+msgstr ""
+
+#: lib/feed.php:87
+msgid "RSS 2.0"
+msgstr ""
+
+#: lib/feed.php:89
+msgid "Atom"
+msgstr ""
+
+#: lib/feed.php:91
+msgid "FOAF"
+msgstr ""
+
+#: lib/feedlist.php:64
+msgid "Export data"
+msgstr ""
+
+#: lib/galleryaction.php:121
+msgid "Filter tags"
+msgstr ""
+
+#: lib/galleryaction.php:131
+msgid "All"
+msgstr ""
+
+#: lib/galleryaction.php:139
+msgid "Select tag to filter"
+msgstr ""
+
+#: lib/galleryaction.php:140
+msgid "Tag"
+msgstr ""
+
+#: lib/galleryaction.php:141
+msgid "Choose a tag to narrow list"
+msgstr ""
+
+#: lib/galleryaction.php:143
+msgid "Go"
+msgstr ""
+
+#: lib/grantroleform.php:91
+#, php-format
+msgid "Grant this user the \"%s\" role"
+msgstr ""
+
+#: lib/groupeditform.php:163
+msgid "URL of the homepage or blog of the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:168
+msgid "Describe the group or topic"
+msgstr ""
+
+#: lib/groupeditform.php:170
+#, php-format
+msgid "Describe the group or topic in %d characters"
+msgstr ""
+
+#: lib/groupeditform.php:179
+msgid ""
+"Location for the group, if any, like \"City, State (or Region), Country\""
+msgstr ""
+
+#: lib/groupeditform.php:187
+#, php-format
+msgid "Extra nicknames for the group, comma- or space- separated, max %d"
+msgstr ""
+
+#: lib/groupnav.php:85
+msgid "Group"
+msgstr ""
+
+#: lib/groupnav.php:101
+msgid "Blocked"
+msgstr ""
+
+#: lib/groupnav.php:102
+#, php-format
+msgid "%s blocked users"
+msgstr ""
+
+#: lib/groupnav.php:108
+#, php-format
+msgid "Edit %s group properties"
+msgstr ""
+
+#: lib/groupnav.php:113
+msgid "Logo"
+msgstr ""
+
+#: lib/groupnav.php:114
+#, php-format
+msgid "Add or edit %s logo"
+msgstr ""
+
+#: lib/groupnav.php:120
+#, php-format
+msgid "Add or edit %s design"
+msgstr ""
+
+#: lib/groupsbymemberssection.php:71
+msgid "Groups with most members"
+msgstr ""
+
+#: lib/groupsbypostssection.php:71
+msgid "Groups with most posts"
+msgstr ""
+
+#: lib/grouptagcloudsection.php:56
+#, php-format
+msgid "Tags in %s group's notices"
+msgstr ""
+
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
+msgid "This page is not available in a media type you accept"
+msgstr ""
+
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
+#, php-format
+msgid "That file is too big. The maximum file size is %s."
+msgstr ""
+
+#: lib/imagefile.php:93
+msgid "Partial upload."
+msgstr ""
+
+#: lib/imagefile.php:101 lib/mediafile.php:170
+msgid "System error uploading file."
+msgstr ""
+
+#: lib/imagefile.php:109
+msgid "Not an image or corrupt file."
+msgstr ""
+
+#: lib/imagefile.php:122
+msgid "Lost our file."
+msgstr ""
+
+#: lib/imagefile.php:163 lib/imagefile.php:224
+msgid "Unknown file type"
+msgstr ""
+
+#: lib/imagefile.php:244
+msgid "MB"
+msgstr ""
+
+#: lib/imagefile.php:246
+msgid "kB"
+msgstr ""
+
+#: lib/jabber.php:387
+#, php-format
+msgid "[%s]"
+msgstr ""
+
+#: lib/jabber.php:567
+#, php-format
+msgid "Unknown inbox source %d."
+msgstr ""
+
+#: lib/joinform.php:114
+msgid "Join"
+msgstr ""
+
+#: lib/leaveform.php:114
+msgid "Leave"
+msgstr ""
+
+#: lib/logingroupnav.php:80
+msgid "Login with a username and password"
+msgstr ""
+
+#: lib/logingroupnav.php:86
+msgid "Sign up for a new account"
+msgstr ""
+
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
+msgid "Email address confirmation"
+msgstr ""
+
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
+#, php-format
+msgid ""
+"Hey, %s.\n"
+"\n"
+"Someone just entered this email address on %s.\n"
+"\n"
+"If it was you, and you want to confirm your entry, use the URL below:\n"
+"\n"
+"\t%s\n"
+"\n"
+"If not, just ignore this message.\n"
+"\n"
+"Thanks for your time, \n"
+"%s\n"
+msgstr ""
+
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
+#, php-format
+msgid "%1$s is now listening to your notices on %2$s."
+msgstr ""
+
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
+#, php-format
+msgid ""
+"%1$s is now listening to your notices on %2$s.\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"%4$s%5$s%6$s\n"
+"Faithfully yours,\n"
+"%7$s.\n"
+"\n"
+"----\n"
+"Change your email address or notification options at %8$s\n"
+msgstr ""
+
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
+#, php-format
+msgid "Bio: %s"
+msgstr ""
+
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
+#, php-format
+msgid "New email address for posting to %s"
+msgstr ""
+
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
+#, php-format
+msgid ""
+"You have a new posting address on %1$s.\n"
+"\n"
+"Send email to %2$s to post new messages.\n"
+"\n"
+"More email instructions at %3$s.\n"
+"\n"
+"Faithfully yours,\n"
+"%4$s"
+msgstr ""
+
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
+#, php-format
+msgid "%s status"
+msgstr ""
+
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
+msgid "SMS confirmation"
+msgstr ""
+
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
+#, php-format
+msgid "You've been nudged by %s"
+msgstr ""
+
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
+#, php-format
+msgid ""
+"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
+"to post some news.\n"
+"\n"
+"So let's hear from you :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%4$s\n"
+msgstr ""
+
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
+#, php-format
+msgid "New private message from %s"
+msgstr ""
+
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
+#, php-format
+msgid ""
+"%1$s (%2$s) sent you a private message:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"You can reply to their message here:\n"
+"\n"
+"%4$s\n"
+"\n"
+"Don't reply to this email; it won't get to them.\n"
+"\n"
+"With kind regards,\n"
+"%5$s\n"
+msgstr ""
+
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
+#, php-format
+msgid "%s (@%s) added your notice as a favorite"
+msgstr ""
+
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
+#, php-format
+msgid ""
+"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
+"\n"
+"The URL of your notice is:\n"
+"\n"
+"%3$s\n"
+"\n"
+"The text of your notice is:\n"
+"\n"
+"%4$s\n"
+"\n"
+"You can see the list of %1$s's favorites here:\n"
+"\n"
+"%5$s\n"
+"\n"
+"Faithfully yours,\n"
+"%6$s\n"
+msgstr ""
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
+#, php-format
+msgid "%s (@%s) sent a notice to your attention"
+msgstr ""
+
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
+#, php-format
+msgid ""
+"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
+"\n"
+"The notice is here:\n"
+"\n"
+"\t%3$s\n"
+"\n"
+"It reads:\n"
+"\n"
+"\t%4$s\n"
+"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
+msgstr ""
+
+#: lib/mailbox.php:89
+msgid "Only the user can read their own mailboxes."
+msgstr ""
+
+#: lib/mailbox.php:139
+msgid ""
+"You have no private messages. You can send private message to engage other "
+"users in conversation. People can send you messages for your eyes only."
+msgstr ""
+
+#: lib/mailbox.php:227 lib/noticelist.php:505
+msgid "from"
+msgstr ""
+
+#: lib/mailhandler.php:37
+msgid "Could not parse message."
+msgstr ""
+
+#: lib/mailhandler.php:42
+msgid "Not a registered user."
+msgstr ""
+
+#: lib/mailhandler.php:46
+msgid "Sorry, that is not your incoming email address."
+msgstr ""
+
+#: lib/mailhandler.php:50
+msgid "Sorry, no incoming email allowed."
+msgstr ""
+
+#: lib/mailhandler.php:228
+#, php-format
+msgid "Unsupported message type: %s"
+msgstr ""
+
+#: lib/mediafile.php:98 lib/mediafile.php:123
+msgid "There was a database error while saving your file. Please try again."
+msgstr ""
+
+#: lib/mediafile.php:142
+msgid "The uploaded file exceeds the upload_max_filesize directive in php.ini."
+msgstr ""
+
+#: lib/mediafile.php:147
+msgid ""
+"The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in "
+"the HTML form."
+msgstr ""
+
+#: lib/mediafile.php:152
+msgid "The uploaded file was only partially uploaded."
+msgstr ""
+
+#: lib/mediafile.php:159
+msgid "Missing a temporary folder."
+msgstr ""
+
+#: lib/mediafile.php:162
+msgid "Failed to write file to disk."
+msgstr ""
+
+#: lib/mediafile.php:165
+msgid "File upload stopped by extension."
+msgstr ""
+
+#: lib/mediafile.php:179 lib/mediafile.php:217
+msgid "File exceeds user's quota."
+msgstr ""
+
+#: lib/mediafile.php:197 lib/mediafile.php:234
+msgid "File could not be moved to destination directory."
+msgstr ""
+
+#: lib/mediafile.php:202 lib/mediafile.php:238
+msgid "Could not determine file's MIME type."
+msgstr ""
+
+#: lib/mediafile.php:318
+#, php-format
+msgid " Try using another %s format."
+msgstr ""
+
+#: lib/mediafile.php:323
+#, php-format
+msgid "%s is not a supported file type on this server."
+msgstr ""
+
+#: lib/messageform.php:120
+msgid "Send a direct notice"
+msgstr ""
+
+#: lib/messageform.php:146
+msgid "To"
+msgstr ""
+
+#: lib/messageform.php:159 lib/noticeform.php:185
+msgid "Available characters"
+msgstr ""
+
+#: lib/messageform.php:178 lib/noticeform.php:236
+msgctxt "Send button for sending notice"
+msgid "Send"
+msgstr ""
+
+#: lib/noticeform.php:160
+msgid "Send a notice"
+msgstr ""
+
+#: lib/noticeform.php:173
+#, php-format
+msgid "What's up, %s?"
+msgstr ""
+
+#: lib/noticeform.php:192
+msgid "Attach"
+msgstr ""
+
+#: lib/noticeform.php:196
+msgid "Attach a file"
+msgstr ""
+
+#: lib/noticeform.php:212
+msgid "Share my location"
+msgstr ""
+
+#: lib/noticeform.php:215
+msgid "Do not share my location"
+msgstr ""
+
+#: lib/noticeform.php:216
+msgid ""
+"Sorry, retrieving your geo location is taking longer than expected, please "
+"try again later"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
+msgid "N"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
+msgid "S"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
+msgid "E"
+msgstr ""
+
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
+msgid "W"
+msgstr ""
+
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
+msgid "at"
+msgstr ""
+
+#: lib/noticelist.php:567
+msgid "in context"
+msgstr ""
+
+#: lib/noticelist.php:602
+msgid "Repeated by"
+msgstr ""
+
+#: lib/noticelist.php:629
+msgid "Reply to this notice"
+msgstr ""
+
+#: lib/noticelist.php:630
+msgid "Reply"
+msgstr ""
+
+#: lib/noticelist.php:674
+msgid "Notice repeated"
+msgstr ""
+
+#: lib/nudgeform.php:116
+msgid "Nudge this user"
+msgstr ""
+
+#: lib/nudgeform.php:128
+msgid "Nudge"
+msgstr ""
+
+#: lib/nudgeform.php:128
+msgid "Send a nudge to this user"
+msgstr ""
+
+#: lib/oauthstore.php:283
+msgid "Error inserting new profile"
+msgstr ""
+
+#: lib/oauthstore.php:291
+msgid "Error inserting avatar"
+msgstr ""
+
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:311
+msgid "Error inserting remote profile"
+msgstr ""
+
+#: lib/oauthstore.php:345
+msgid "Duplicate notice"
+msgstr ""
+
+#: lib/oauthstore.php:490
+msgid "Couldn't insert new subscription."
+msgstr ""
+
+#: lib/personalgroupnav.php:99
+msgid "Personal"
+msgstr ""
+
+#: lib/personalgroupnav.php:104
+msgid "Replies"
+msgstr ""
+
+#: lib/personalgroupnav.php:114
+msgid "Favorites"
+msgstr ""
+
+#: lib/personalgroupnav.php:125
+msgid "Inbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:126
+msgid "Your incoming messages"
+msgstr ""
+
+#: lib/personalgroupnav.php:130
+msgid "Outbox"
+msgstr ""
+
+#: lib/personalgroupnav.php:131
+msgid "Your sent messages"
+msgstr ""
+
+#: lib/personaltagcloudsection.php:56
+#, php-format
+msgid "Tags in %s's notices"
+msgstr ""
+
+#: lib/plugin.php:115
+msgid "Unknown"
+msgstr ""
+
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
+msgid "Subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:126
+msgid "All subscriptions"
+msgstr ""
+
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
+msgid "Subscribers"
+msgstr ""
+
+#: lib/profileaction.php:161
+msgid "All subscribers"
+msgstr ""
+
+#: lib/profileaction.php:191
+msgid "User ID"
+msgstr ""
+
+#: lib/profileaction.php:196
+msgid "Member since"
+msgstr ""
+
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
+msgid "All groups"
+msgstr ""
+
+#: lib/profileformaction.php:123
+msgid "Unimplemented method."
+msgstr ""
+
+#: lib/publicgroupnav.php:78
+msgid "Public"
+msgstr ""
+
+#: lib/publicgroupnav.php:82
+msgid "User groups"
+msgstr ""
+
+#: lib/publicgroupnav.php:84 lib/publicgroupnav.php:85
+msgid "Recent tags"
+msgstr ""
+
+#: lib/publicgroupnav.php:88
+msgid "Featured"
+msgstr ""
+
+#: lib/publicgroupnav.php:92
+msgid "Popular"
+msgstr ""
+
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr ""
+
+#: lib/repeatform.php:107
+msgid "Repeat this notice?"
+msgstr ""
+
+#: lib/repeatform.php:132
+msgid "Yes"
+msgstr ""
+
+#: lib/repeatform.php:132
+msgid "Repeat this notice"
+msgstr ""
+
+#: lib/revokeroleform.php:91
+#, php-format
+msgid "Revoke the \"%s\" role from this user"
+msgstr ""
+
+#: lib/router.php:709
+msgid "No single user defined for single-user mode."
+msgstr ""
+
+#: lib/sandboxform.php:67
+msgid "Sandbox"
+msgstr ""
+
+#: lib/sandboxform.php:78
+msgid "Sandbox this user"
+msgstr ""
+
+#: lib/searchaction.php:120
+msgid "Search site"
+msgstr ""
+
+#: lib/searchaction.php:126
+msgid "Keyword(s)"
+msgstr ""
+
+#: lib/searchaction.php:127
+msgid "Search"
+msgstr ""
+
+#: lib/searchaction.php:162
+msgid "Search help"
+msgstr ""
+
+#: lib/searchgroupnav.php:80
+msgid "People"
+msgstr ""
+
+#: lib/searchgroupnav.php:81
+msgid "Find people on this site"
+msgstr ""
+
+#: lib/searchgroupnav.php:83
+msgid "Find content of notices"
+msgstr ""
+
+#: lib/searchgroupnav.php:85
+msgid "Find groups on this site"
+msgstr ""
+
+#: lib/section.php:89
+msgid "Untitled section"
+msgstr ""
+
+#: lib/section.php:106
+msgid "More..."
+msgstr ""
+
+#: lib/silenceform.php:67
+msgid "Silence"
+msgstr ""
+
+#: lib/silenceform.php:78
+msgid "Silence this user"
+msgstr ""
+
+#: lib/subgroupnav.php:83
+#, php-format
+msgid "People %s subscribes to"
+msgstr ""
+
+#: lib/subgroupnav.php:91
+#, php-format
+msgid "People subscribed to %s"
+msgstr ""
+
+#: lib/subgroupnav.php:99
+#, php-format
+msgid "Groups %s is a member of"
+msgstr ""
+
+#: lib/subgroupnav.php:105
+msgid "Invite"
+msgstr ""
+
+#: lib/subgroupnav.php:106
+#, php-format
+msgid "Invite friends and colleagues to join you on %s"
+msgstr ""
+
+#: lib/subscriberspeopleselftagcloudsection.php:48
+#: lib/subscriptionspeopleselftagcloudsection.php:48
+msgid "People Tagcloud as self-tagged"
+msgstr ""
+
+#: lib/subscriberspeopletagcloudsection.php:48
+#: lib/subscriptionspeopletagcloudsection.php:48
+msgid "People Tagcloud as tagged"
+msgstr ""
+
+#: lib/tagcloudsection.php:56
+msgid "None"
+msgstr ""
+
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr ""
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr ""
+
+#: lib/topposterssection.php:74
+msgid "Top posters"
+msgstr ""
+
+#: lib/unsandboxform.php:69
+msgid "Unsandbox"
+msgstr ""
+
+#: lib/unsandboxform.php:80
+msgid "Unsandbox this user"
+msgstr ""
+
+#: lib/unsilenceform.php:67
+msgid "Unsilence"
+msgstr ""
+
+#: lib/unsilenceform.php:78
+msgid "Unsilence this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:113 lib/unsubscribeform.php:137
+msgid "Unsubscribe from this user"
+msgstr ""
+
+#: lib/unsubscribeform.php:137
+msgid "Unsubscribe"
+msgstr ""
+
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr ""
+
+#: lib/userprofile.php:117
+msgid "Edit Avatar"
+msgstr ""
+
+#: lib/userprofile.php:234 lib/userprofile.php:248
+msgid "User actions"
+msgstr ""
+
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
+msgid "Edit profile settings"
+msgstr ""
+
+#: lib/userprofile.php:264
+msgid "Edit"
+msgstr ""
+
+#: lib/userprofile.php:287
+msgid "Send a direct message to this user"
+msgstr ""
+
+#: lib/userprofile.php:288
+msgid "Message"
+msgstr ""
+
+#: lib/userprofile.php:326
+msgid "Moderate"
+msgstr ""
+
+#: lib/userprofile.php:364
+msgid "User role"
+msgstr ""
+
+#: lib/userprofile.php:366
+msgctxt "role"
+msgid "Administrator"
+msgstr ""
+
+#: lib/userprofile.php:367
+msgctxt "role"
+msgid "Moderator"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
+msgid "a few seconds ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
+msgid "about a minute ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
+#, php-format
+msgid "about %d minutes ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
+msgid "about an hour ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
+#, php-format
+msgid "about %d hours ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
+msgid "about a day ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
+#, php-format
+msgid "about %d days ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
+msgid "about a month ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
+#, php-format
+msgid "about %d months ago"
+msgstr ""
+
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
+msgid "about a year ago"
+msgstr ""
+
+#: lib/webcolor.php:82
+#, php-format
+msgid "%s is not a valid color!"
+msgstr ""
+
+#: lib/webcolor.php:123
+#, php-format
+msgid "%s is not a valid color! Use 3 or 6 hex chars."
+msgstr ""
+
+#: lib/xmppmanager.php:403
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d."
+msgstr ""
diff --git a/locale/sv/LC_MESSAGES/statusnet.po b/locale/sv/LC_MESSAGES/statusnet.po
index 2a508849f..16a0858ea 100644
--- a/locale/sv/LC_MESSAGES/statusnet.po
+++ b/locale/sv/LC_MESSAGES/statusnet.po
@@ -1,6 +1,7 @@
# Translation of StatusNet to Swedish
#
# Author@translatewiki.net: Jamminjohn
+# Author@translatewiki.net: Kjell
# Author@translatewiki.net: McDutchie
# --
# This file is distributed under the same license as the StatusNet package.
@@ -9,12 +10,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:50:58+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:24:59+0000\n"
"Language-Team: Swedish\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: sv\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +23,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "Ã…tkomst"
@@ -73,84 +74,89 @@ msgstr "Stängd"
msgid "Save access settings"
msgstr "Spara inställningar för åtkomst"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Spara"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+msgid "No such page."
msgstr "Ingen sådan sida"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Ingen sådan användare."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s och vänner, sida %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s och vänner"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Flöden för %ss vänner (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Flöden för %ss vänner (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Flöden för %ss vänner (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "Detta är tidslinjen för %s och vänner, men ingen har skrivit något än."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -160,82 +166,84 @@ msgstr ""
"%) eller skriv något själv."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Du kan prova att [knuffa %1$s](../%2$s) från dennes profil eller [skriva "
"någonting för hans eller hennes uppmärksamhet](%%%%action.newnotice%%%%?"
"status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Varför inte [registrera ett konto](%%%%action.register%%%%) och sedan knuffa "
"%s eller skriva en notis för hans eller hennes uppmärksamhet."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Du och vänner"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "Uppdateringar från %1$s och vänner på %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API-metod hittades inte."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Denna metod kräver en POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr "Du måste ange ett värdet på parametern 'device': sms, im, none"
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Kunde inte uppdatera användare."
@@ -244,7 +252,7 @@ msgstr "Kunde inte uppdatera användare."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Användaren har ingen profil."
@@ -254,9 +262,9 @@ msgid "Could not save profile."
msgstr "Kunde inte spara profil."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -314,46 +322,47 @@ msgstr "Direktmeddelande till %s"
msgid "All the direct messages sent to %s"
msgstr "Alla direktmeddelanden skickade till %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "Ingen meddelandetext!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Detta är för långt. Maximal meddelandestorlek är %d tecken."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Mottagare hittades inte."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "Kan inte skicka direktmeddelanden till användare som inte är din vän."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Ingen status hittad med det ID:t."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Denna status är redan en favorit."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Kunde inte skapa favorit."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Denna status är inte en favorit."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Kunde inte ta bort favoriten."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "Kunde inte följa användare: användare hittades inte."
#: actions/apifriendshipscreate.php:118
@@ -369,8 +378,9 @@ msgstr "Kunde inte sluta följa användaren: användaren hittades inte."
msgid "You cannot unfollow yourself."
msgstr "Du kan inte sluta följa dig själv."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "Två användar-ID:n eller screen_names måste tillhandahållas."
#: actions/apifriendshipsshow.php:134
@@ -381,116 +391,129 @@ msgstr "Kunde inte fastställa användare hos källan."
msgid "Could not find target user."
msgstr "Kunde inte hitta målanvändare."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Smeknamnet får endast innehålla små bokstäver eller siffror, inga mellanslag."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Smeknamnet används redan. Försök med ett annat."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Inte ett giltigt smeknamn."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
-msgstr "Hemsida är inte en giltig URL."
+msgstr "Hemsida är inte en giltig webbadress."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Fullständigt namn är för långt (max 255 tecken)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "Beskrivning är för lång (max 140 tecken)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Beskrivning av plats är för lång (max 255 tecken)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "För många alias! Maximum %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Ogiltigt alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Ogiltigt alias: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Alias \"%s\" används redan. Försök med ett annat."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Alias kan inte vara samma som smeknamn."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Grupp hittades inte!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Grupp hittades inte."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Du är redan en medlem i denna grupp."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Du har blivit blockerad från denna grupp av administratören."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Kunde inte ansluta användare %1$s till grupp %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Du är inte en medlem i denna grupp."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Kunde inte ta bort användare %1$s från grupp %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%ss grupper"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s grupper %2$s är en medlem i."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s grupper"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "grupper på %s"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Ladda upp fil"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Ingen oauth_token-parameter angiven."
@@ -500,17 +523,17 @@ msgid "Invalid token."
msgstr "Ogiltig token."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -541,12 +564,15 @@ msgstr "Begäran-token %s har godkänts. Byt ut den mot en åtkomst-token."
msgid "The request token %s has been denied and revoked."
msgstr "Begäran-token %s har nekats och återkallats."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Oväntat inskick av formulär."
@@ -569,20 +595,22 @@ msgstr ""
"möjligheten att <strong>%3$s</strong> din %4$s kontoinformation. Du bör bara "
"ge tillgång till ditt %4$s-konto till tredje-parter du litar på."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Konto"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Smeknamn"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Lösenord"
@@ -598,11 +626,11 @@ msgstr "Tillåt"
msgid "Allow or deny access to your account information."
msgstr "Tillåt eller neka åtkomst till din kontoinformation."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Denna metod kräver en POST eller en DELETE."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Du kan inte ta bort en annan användares status."
@@ -619,59 +647,63 @@ msgstr "Kan inte upprepa din egen notis."
msgid "Already repeated that notice."
msgstr "Redan upprepat denna notis."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Status borttagen."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ingen status med det ID:t hittades."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Det är för långt. Maximal notisstorlek är %d tecken."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Hittades inte"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Hittades inte."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
-msgstr "Maximal notisstorlek är %d tecken, inklusive URL för bilaga."
+msgstr "Maximal notisstorlek är %d tecken, inklusive webbadress för bilaga."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Format som inte stödjs."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Favoriter från %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s uppdateringar markerade som favorit av %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Uppdateringar som nämner %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s uppdateringar med svar på uppdatering från %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s publika tidslinje"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s uppdateringar från alla!"
@@ -686,19 +718,19 @@ msgstr "Upprepat till %s"
msgid "Repeats of %s"
msgstr "Upprepningar av %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Notiser taggade med %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Uppdateringar taggade med %1$s på %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Hittades inte."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API-metoden är under uppbyggnad."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -719,8 +751,9 @@ msgstr "Ingen storlek."
msgid "Invalid size."
msgstr "Ogiltig storlek."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -731,10 +764,10 @@ msgstr ""
"Du kan ladda upp din personliga avatar. Den maximala filstorleken är %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "Användare utan matchande profil"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "Användare utan matchande profil."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -752,7 +785,7 @@ msgid "Preview"
msgstr "Förhandsgranska"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Ta bort"
@@ -764,23 +797,27 @@ msgstr "Ladda upp"
msgid "Crop"
msgstr "Beskär"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Ingen fil laddades upp."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Välj ett kvadratiskt område i bilden som din avatar"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Förlorade vår fildata."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar uppdaterad."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Misslyckades uppdatera avatar."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Avatar borttagen."
@@ -788,11 +825,11 @@ msgstr "Avatar borttagen."
msgid "You already blocked that user."
msgstr "Du har redan blockerat denna användare."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Blockera användare"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
@@ -802,27 +839,42 @@ msgstr ""
"prenumeration på dig tas bort, de kommer inte kunna prenumerera på dig i "
"framtiden och du kommer inte bli underrättad om några @-svar från dem."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "Nej"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Blockera inte denna användare"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Ja"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Blockera denna användare"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Misslyckades att spara blockeringsinformation."
@@ -835,8 +887,8 @@ msgstr "Misslyckades att spara blockeringsinformation."
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Ingen sådan grupp."
@@ -867,9 +919,11 @@ msgstr "Häv blockering"
msgid "Unblock this user"
msgstr "Häv blockering av denna användare"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "Posta till "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Posta till %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -883,33 +937,43 @@ msgstr "Bekräftelsekod kunde inte hittas."
msgid "That confirmation code is not for you!"
msgstr "Denna bekräftelsekod är inte för dig!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Adresstypen %s känns inte igen"
+msgid "Unrecognized address type %s."
+msgstr "Adresstypen %s känns inte igen."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Denna adress har redan blivit bekräftad."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Kunde inte uppdatera användare."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Kunde inte ta bort e-postbekräftelse."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Bekräfta adress"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Adressen \"%s\" har blivit bekräftad för ditt konto."
@@ -919,7 +983,7 @@ msgid "Conversation"
msgstr "Konversationer"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Notiser"
@@ -938,7 +1002,7 @@ msgstr "Du är inte ägaren av denna applikation."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Det var ett problem med din sessions-token."
@@ -956,21 +1020,23 @@ msgstr ""
"bort all data om applikationen från databasen, inklusive alla befintliga "
"användaranslutningar."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ta inte bort denna applikation"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Ta bort denna applikation"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Inte inloggad."
@@ -995,11 +1061,13 @@ msgstr "Ta bort notis"
msgid "Are you sure you want to delete this notice?"
msgstr "Är du säker på att du vill ta bort denna notis?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ta inte bort denna notis"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Ta bort denna notis"
@@ -1023,58 +1091,69 @@ msgstr ""
"Är du säker på att du vill ta bort denna användare? Det kommer rensa all "
"data om användaren från databasen, utan en säkerhetskopia."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Ta bort denna användare"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Utseende"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "Utseendeinställningar för denna StatusNet-webbplats."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
-msgstr "Ogiltig logtyp-URL."
+msgstr "Ogiltig webbadress för logtyp."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Tema inte tillgängligt: %s"
+msgid "Theme not available: %s."
+msgstr "Tema inte tillgängligt: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Byt logotyp"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Webbplatslogotyp"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Byt tema"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Webbplatstema"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Tema för webbplatsen."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Anpassat tema"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Du kan ladda upp ett eget StatusNet-tema som ett .ZIP-arkiv."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Ändra bakgrundsbild"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Bakgrund"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1083,67 +1162,76 @@ msgstr ""
"Du kan ladda upp en bakgrundsbild för denna webbplats. Den maximala "
"filstorleken är %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "PÃ¥"
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Av"
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Sätt på eller stäng av bakgrundsbild."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "Upprepa bakgrundsbild"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Byt färger"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "Innehåll"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Sidofält"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Text"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "Länkar"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Avancerat"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Anpassad CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "Använd standardvärden"
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Återställ standardutseende"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "Återställ till standardvärde"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Spara"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Spara utseende"
@@ -1195,11 +1283,11 @@ msgstr "Beskrivning krävs."
#: actions/editapplication.php:194
msgid "Source URL is too long."
-msgstr "URL till källa är för lång."
+msgstr "Webbadress till källa är för lång."
#: actions/editapplication.php:200 actions/newapplication.php:185
msgid "Source URL is not valid."
-msgstr "URL till källa är inte giltig."
+msgstr "Webbadress till källa är inte giltig."
#: actions/editapplication.php:203 actions/newapplication.php:188
msgid "Organization is required."
@@ -1219,7 +1307,7 @@ msgstr "Anrop är för lång."
#: actions/editapplication.php:225 actions/newapplication.php:215
msgid "Callback URL is not valid."
-msgstr "URL för anrop är inte giltig."
+msgstr "Webbadress för anrop är inte giltig."
#: actions/editapplication.php:258
msgid "Could not update application."
@@ -1248,11 +1336,17 @@ msgstr "Använd detta formulär för att redigera gruppen."
msgid "description is too long (max %d chars)."
msgstr "beskrivning är för lång (max %d tecken)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Ogiltigt alias: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Kunde inte uppdatera grupp."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Kunde inte skapa alias."
@@ -1260,31 +1354,42 @@ msgstr "Kunde inte skapa alias."
msgid "Options saved."
msgstr "Alternativ sparade."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "E-postinställningar"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Hantera hur du får e-post från %%site.name%%"
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adress"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "E-postadress"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Aktuell, bekräftad e-postadress."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Ta bort"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1292,107 +1397,137 @@ msgstr ""
"Väntar bekräftelse av denna adress. Kontrollera din inkorg (och "
"skräppostkorg!) efter ett meddelande med vidare instruktioner."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Avbryt"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "E-postadress"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "E-postadress, såsom \"användarnamn@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Lägg till"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Inkommande e-post"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Skicka e-post till denna adress för att posta nya notiser."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
"Ange en ny e-postadress för att posta till; detta inaktiverar den gamla."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Ny"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Inställningar"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "E-postinställningar"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Skicka notiser om nya prenumerationer till mig genom e-post."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "Skicka mig e-post när någon lägger till min notis som en favorit."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Skicka mig e-post när någon skickar mig ett privat meddelande."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Skicka mig e-post när någon skickar ett \"@-svar\"."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Tillåt vänner att knuffa mig och skicka e-post till mig."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Jag vill posta notiser genom min e-post."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Publicera ett MicroID för min e-postadress."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Inställningar sparade."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "E-postinställningar sparade."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ingen e-postadress."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Kan inte normalisera den e-postadressen"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Inte en giltig e-postadress."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Det är redan din e-postadress."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Den e-postadressen tillhör redan en annan användare."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Kunde inte infoga bekräftelsekod."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1401,43 +1536,53 @@ msgstr ""
"din inkorg (och skräppostkorg!) för koden och instruktioner hur du använder "
"den."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ingen väntande bekräftelse att avbryta."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Detta är fel IM-adress."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Detta är fel e-postadress."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "Bekräftelse avbruten."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "E-postbekräftelse avbruten."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Det är inte din e-postadress."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "Adressen togs bort."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "E-postadressen togs bort."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ingen inkommande e-postadress."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Kunde inte uppdatera användaruppgift."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "Inkommande e-postadress borttagen."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Ny inkommande e-postadress tillagd."
@@ -1556,9 +1701,9 @@ msgstr "Kunde inte konvertera token för begäran till token för åtkomst."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Fjärrtjänsten använder en okänd version av OMB-protokollet."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Fel vid uppdatering av fjärrprofil"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Fel vid uppdatering av fjärrprofil."
#: actions/getfile.php:79
msgid "No such file."
@@ -1586,13 +1731,13 @@ msgstr "Användaren har redan denna roll."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ingen profil angiven."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ingen profil med det ID:t."
@@ -1613,11 +1758,11 @@ msgstr "Användaren är redan blockerad från grupp."
msgid "User is not a member of group."
msgstr "Användare är inte en gruppmedlem."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Blockera användare från grupp"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1628,15 +1773,17 @@ msgstr ""
"\"? De kommer bli borttagna från gruppen, inte kunna skriva till och inte "
"kunna prenumerera på gruppen i framtiden."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Blockera inte denna användare från denna grupp"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Blockera denna användare från denna grupp"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Databasfel vid blockering av användare från grupp."
@@ -1680,10 +1827,6 @@ msgstr ""
"Du kan ladda upp en logotypbild för din grupp. Den maximala filstorleken är %"
"s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "Användare utan matchande profil."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Välj ett kvadratiskt område i bilden som logotyp"
@@ -1714,34 +1857,38 @@ msgstr "En lista av användarna i denna grupp."
msgid "Admin"
msgstr "Administratör"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Blockera"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Gör användare till en administratör för gruppen"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Gör till administratör"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Gör denna användare till administratör"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s tidslinje"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Uppdateringar från medlemmar i %1$s på %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Grupper"
@@ -1766,7 +1913,7 @@ msgstr ""
"inte någon grupp du gillar? Prova att [söka efter en](%%%%action.groupsearch%"
"%%%) eller [starta din egen!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Skapa en ny grupp"
@@ -1819,11 +1966,15 @@ msgstr "Användare är inte blockerad från grupp."
msgid "Error removing the block."
msgstr "Fel vid hävning av blockering."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "Inställningar för snabbmeddelanden"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1832,15 +1983,24 @@ msgstr ""
"Du kan skicka och ta emot notiser genom Jabber/GTalk-[snabbmeddelanden](%%"
"doc.im%%). Konfigurera din adress och dina inställningar nedan."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM är inte tillgänglig."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "Adress för snabbmeddelanden"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Aktuell bekräftad Jabber/Gtalk-adress."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1849,11 +2009,9 @@ msgstr ""
"Väntar på bekräftelse för denna adress. Kontrollera ditt Jabber/GTalk-konto "
"för vidare instruktioner. (La du till %s i din kompislista?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "Adress för snabbmeddelanden"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1862,45 +2020,66 @@ msgstr ""
"Jabber- eller GTalk-adress, som \"användarnamn@example.org\". Se först till "
"att lägga till %s i din kompislista i din IM-klient eller hos GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Inställningar för snabbmeddelanden"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Skicka notiser till mig genom Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Posta en notis när min Jabber/GTalk-status ändras."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Skicka svar till mig genom Jabber/GTalk från personer som jag inte "
"prenumererar på."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Publicera ett MicroID för min Jabber/GTalk-adress."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Inställningar sparade."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Inget Jabber-ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Kan inte normalisera detta Jabber-ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Inte ett giltigt Jabber-ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Detta är redan ditt Jabber-ID"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber-ID:t tillhör redan en annan användare."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1909,10 +2088,32 @@ msgstr ""
"En bekräftelsekod skickades till den IM-adress du angav. Du måste godkänna "
"att %s får skicka meddelanden till dig."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Detta är fel IM-adress."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Kunde inte ta bort bekräftelse för snabbmeddelanden."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "Bekräftelse för snabbmeddelanden avbruten."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Detta är inte ditt Jabber-ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "Adressen för snabbmeddelanden togs bort."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1934,8 +2135,8 @@ msgstr "Inbjudningar har blivit inaktiverade."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "Du måste vara inloggad för att kunna bjuda in andra användare till %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Du måste vara inloggad för att kunna bjuda in andra användare till %s."
#: actions/invite.php:72
#, php-format
@@ -1954,7 +2155,9 @@ msgstr "Bjud in nya användare"
msgid "You are already subscribed to these users:"
msgstr "Du prenumererar redan på dessa användare:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2007,12 +2210,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Skicka"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s har bjudit in dig att gå med dem på %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2077,7 +2282,9 @@ msgstr "Du måste vara inloggad för att kunna gå med i en grupp."
msgid "No nickname or ID."
msgstr "Inget smeknamn eller ID."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s gick med i grupp %2$s"
@@ -2086,48 +2293,50 @@ msgstr "%1$s gick med i grupp %2$s"
msgid "You must be logged in to leave a group."
msgstr "Du måste vara inloggad för att lämna en grupp."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Du är inte en medlem i den gruppen."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s lämnade grupp %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Redan inloggad."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Felaktigt användarnamn eller lösenord."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Fel vid inställning av användare. Du har sannolikt inte tillstånd."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Logga in"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Logga in på webbplatsen"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Kom ihåg mig"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Logga in automatiskt i framtiden; inte för delade datorer!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Tappat bort eller glömt ditt lösenord?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2135,14 +2344,17 @@ msgstr ""
"Av säkerhetsskäl, var vänlig och skriv in ditt användarnamn och lösenord "
"igen innan du ändrar dina inställningar."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Logga in med ditt användarnamn och lösenord."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Logga in med ditt användarnamn och lösenord. Har du inget användarnamn ännu? "
-"[Registrera](%%action.register%%) ett nytt konto."
+"Har du inte ett användarnamn ännu? [Registrera](%%action.register%%) ett "
+"nytt konto."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2164,8 +2376,8 @@ 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."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "Ingen aktuell status"
+msgid "No current status."
+msgstr "Ingen aktuell status."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2181,7 +2393,7 @@ msgstr "Använd detta formulär för att registrera en ny applikation."
#: actions/newapplication.php:176
msgid "Source URL is required."
-msgstr "URL till källa krävs."
+msgstr "Webbadress till källa krävs."
#: actions/newapplication.php:258 actions/newapplication.php:267
msgid "Could not create application."
@@ -2199,12 +2411,12 @@ msgstr "Använd detta formulär för att skapa en ny grupp."
msgid "New message"
msgstr "Nytt meddelande"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Du kan inte skicka ett meddelande till den användaren."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Inget innehåll!"
@@ -2212,7 +2424,7 @@ msgstr "Inget innehåll!"
msgid "No recipient specified."
msgstr "Ingen mottagare angiven."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2228,7 +2440,7 @@ msgstr "Meddelande skickat"
msgid "Direct message to %s sent."
msgstr "Direktmeddelande till %s skickat."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "AJAX-fel"
@@ -2236,7 +2448,7 @@ msgstr "AJAX-fel"
msgid "New notice"
msgstr "Ny notis"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Notis postad"
@@ -2287,8 +2499,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "Uppdateringar som matchar söksträngen \"%1$s\" på %2$s!"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Denna användare har inte tillåtit knuffar eller har inte bekräftat eller "
"angett sitt e-post än."
@@ -2331,11 +2544,11 @@ msgid "You are not a user of that application."
msgstr "Du är inte en användare av den applikationen."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Kunde inte återkalla åtkomst för applikation: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Kunde inte återkalla åtkomst för applikation: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Du har inte tillåtit några applikationer att använda ditt konto."
@@ -2344,25 +2557,30 @@ msgid "Developers can edit the registration settings for their applications "
msgstr ""
"Utvecklare kan redigera registreringsinställningarna för sina applikationer "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Notisen har ingen profil"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Notisen har ingen profil."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$ss status den %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "innehållstyp "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Innehållstyp %s stödjs inte."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Bara "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "Endast %s-webbadresser över vanlig HTTP."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Ett dataformat som inte stödjs"
@@ -2465,7 +2683,7 @@ msgid "6 or more characters"
msgstr "Minst 6 tecken"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Bekräfta"
@@ -2477,11 +2695,11 @@ msgstr "Samma som lösenordet ovan"
msgid "Change"
msgstr "Ändra"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Lösenordet måste vara minst 6 tecken."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Lösenorden matchar inte."
@@ -2493,7 +2711,7 @@ msgstr "Felaktigt gammalt lösenord"
msgid "Error saving user; invalid."
msgstr "Fel vid sparande av användare; ogiltig."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Kan inte spara nytt lösenord."
@@ -2502,7 +2720,7 @@ msgid "Password saved."
msgstr "Lösenord sparat."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "Sökvägar"
@@ -2512,23 +2730,23 @@ msgstr "Sökvägs- och serverinställningar för denna StatusNet-webbplats."
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Katalog med teman är inte läsbar: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Katalog med teman är inte läsbar: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "Katalog med avatarer är inte skrivbar: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Katalog med avatarer är inte skrivbar: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "Katalog med bakgrunder är inte skrivbar: %s"
+msgid "Background directory not writable: %s."
+msgstr "Katalog med bakgrunder är inte skrivbar: %s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Katalog med lokaliseringfiler (locales) är inte läsbar. %s"
+msgid "Locales directory not readable: %s."
+msgstr "Katalog med lokaliseringfiler (locales) är inte läsbar. %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2668,19 +2886,19 @@ msgstr ""
msgid "People search"
msgstr "Personsökning"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Inte en giltig persontagg: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Inte en giltig persontagg: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Användare som taggat sig själv med %1$s - sida %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "Ogiltigt notisinnehåll"
+msgid "Invalid notice content."
+msgstr "Ogiltigt notisinnehåll."
#: actions/postnotice.php:101
#, php-format
@@ -2706,42 +2924,43 @@ msgstr "Profilinformation"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 små bokstäver eller nummer, inga punkter eller mellanslag"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Fullständigt namn"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Hemsida"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL till din hemsida, blogg eller profil på en annan webbplats."
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Beskriv dig själv och dina intressen med högst 140 tecken"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Beskriv dig själv och dina intressen"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Biografi"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Plats"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Var du håller till, såsom \"Stad, Län, Land\""
@@ -2751,7 +2970,7 @@ msgstr "Dela min nuvarande plats när jag skickar notiser"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Taggar"
@@ -2785,7 +3004,7 @@ msgstr ""
"Prenumerera automatiskt på den som prenumererar på mig (bäst för icke-"
"människa) "
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Biografin är för lång (max %d tecken)."
@@ -2826,8 +3045,8 @@ msgstr "Inställningar sparade."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "Bortom sidbegränsningen (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Bortom sidbegränsningen (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2995,7 +3214,7 @@ msgstr "Återställ lösenord"
msgid "Recover password"
msgstr "Återskapa lösenord"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Återskapande av lösenord begärd"
@@ -3015,19 +3234,19 @@ msgstr "Återställ"
msgid "Enter a nickname or email address."
msgstr "Skriv in ett smeknamn eller en e-postadress."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "Ingen användare med den e-postadressen eller användarnamn."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ingen registrerad e-postadress för den användaren."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Fel vid sparande av adressbekräftelse."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3035,112 +3254,129 @@ msgstr ""
"Instruktioner för att återställa ditt lösenord har skickats till e-"
"postadressen som är registrerat till ditt konto "
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Oväntad återställning av lösenord."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Lösenordet måste vara minst 6 tecken."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Lösenord och bekräftelse matchar inte."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Fel uppstog i användarens inställning"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Nya lösenordet sparat. Du är nu inloggad."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "Tyvärr, bara inbjudna personer kan registrera sig."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Tyvärr, ogiltig inbjudningskod."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Registreringen genomförd"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Registrera"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "Registrering inte tillåten."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Du kan inte registrera dig om du inte godkänner licensen."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "E-postadressen finns redan."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Ogiltigt användarnamn eller lösenord."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
"Med detta formulär kan du skapa ett nytt konto. Du kan sedan posta notiser "
"och ansluta till vänner och kollegor. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 små bokstäver eller nummer, inga punkter eller mellanslag. Måste fyllas "
"i."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "Minst 6 tecken. MÃ¥ste fyllas i."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Samma som lösenordet ovan. Måste fyllas i."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "E-post"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Används endast för uppdateringar, tillkännagivanden och återskapande av "
"lösenord"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Längre namn, förslagsvis ditt \"verkliga\" namn"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Min text och mina filer är tillgängliga under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+"Jag förstår att innehåll och data av %1$s är privata och konfidentiella."
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "Upphovsrätten till min text och mina filer innehas av %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "Upphovsrätten till min text och mina filer är fortsatt min."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Creative Commons Erkännande 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Alla rättigheter reserverade."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-"med undantag av den här privata datan: lösenord, e-postadress, IM-adress, "
-"telefonnummer."
+"Mina texter och filer är tillgängliga under %s med undantag av den här "
+"privata datan: lösenord, e-postadress, IM-adress, telefonnummer."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3173,7 +3409,7 @@ msgstr ""
"Tack för att du anmält dig och vi hoppas att du kommer tycka om att använda "
"denna tjänst."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3218,7 +3454,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL till din profil på en annan kompatibel mikrobloggtjänst"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Prenumerera"
@@ -3256,7 +3492,7 @@ msgstr "Du kan inte upprepa din egna notis."
msgid "You already repeated that notice."
msgstr "Du har redan upprepat denna notis."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Upprepad"
@@ -3291,10 +3527,10 @@ msgid "Replies feed for %s (Atom)"
msgstr "Flöde med svar för %s (Atom)"
#: actions/replies.php:199
-#, php-format
+#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Detta är tidslinjen som visar svar till %s1$ men %2$s har inte tagit emot en "
"notis för dennes uppmärksamhet än."
@@ -3309,10 +3545,10 @@ msgstr ""
"personer eller [gå med i grupper](%%action.groups%%)."
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Du kan prova att [knuffa %1$s](../%2$s) eller [posta någonting för hans "
"eller hennes uppmärksamhet](%%%%action.newnotice%%%%?status_textarea=%3$s)."
@@ -3327,11 +3563,10 @@ msgid "You cannot revoke user roles on this site."
msgstr "Du kan inte återkalla användarroller på denna webbplats."
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "Användare utan matchande profil."
+msgstr "Användare har inte denna roll."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3345,7 +3580,7 @@ msgstr "Användare är redan flyttad till sandlådan."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "Sessioner"
@@ -3382,26 +3617,30 @@ msgstr "Du måste vara inloggad för att se en applikation."
msgid "Application profile"
msgstr "Applikationsprofil"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Ikon"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Namn"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "Organisation"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Beskrivning"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Statistik"
@@ -3489,20 +3728,20 @@ msgstr ""
"att sätta strålkastarljuset på."
#: actions/showfavorites.php:208
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
"%s har inte lagt till några notiser till sina favoriter ännu. Posta något "
"intressant de skulle lägga till sina favoriter :)"
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
"%s har inte lagt till några notiser till sina favoriter ännu. Varför inte "
"[registrera ett konto](%%%%action.register%%%%) och posta något intressant "
@@ -3522,67 +3761,67 @@ msgstr "%s grupp"
msgid "%1$s group, page %2$d"
msgstr "%1$s grupp, sida %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Grupprofil"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "Notis"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Alias"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "Åtgärder för grupp"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Flöde av notiser för %s grupp (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Flöde av notiser för %s grupp (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Flöde av notiser för %s grupp (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF för %s grupp"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Medlemmar"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(Ingen)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Alla medlemmar"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Skapad"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3597,7 +3836,7 @@ msgstr ""
"sina liv och intressen. [Gå med nu](%%%%action.register%%%%) för att bli en "
"del av denna grupp och många fler! ([Läs mer](%%%%doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3610,7 +3849,7 @@ msgstr ""
"[StatusNet](http://status.net/). Dess medlemmar delar korta meddelande om "
"sina liv och intressen. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Administratörer"
@@ -3685,10 +3924,10 @@ msgstr ""
"inte börja nu?"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Du kan prova att knuffa %1$s eller [posta något för hans eller hennes "
"uppmärksamhet](%%%%action.newnotice%%%%?status_textarea=%2$s)."
@@ -3731,7 +3970,6 @@ msgid "User is already silenced."
msgstr "Användaren är redan nedtystad."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
msgstr "Grundinställningar för din StatusNet-webbplats"
@@ -3749,12 +3987,12 @@ msgid "Unknown language \"%s\"."
msgstr "Okänt språk \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Minsta textbegränsning är 140 tecken."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Minsta textbegränsning är 0 (obegränsat)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
-msgstr "Begränsning av duplikat måste vara en eller fler sekuner."
+msgid "Dupe limit must be one or more seconds."
+msgstr "Duplikatgräns måste vara en eller fler sekuner."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3801,13 +4039,14 @@ msgid "Default timezone for the site; usually UTC."
msgstr "Standardtidzon för denna webbplats; vanligtvis UTC."
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "Webbplatsens standardspråk"
+msgstr "Standardspråk"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
msgstr ""
+"Webbplatsspråk när automatisk identifiering av inställningar i webbläsaren "
+"inte är tillgänglig"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3831,76 +4070,98 @@ msgstr ""
"Hur länge användare måste vänta (i sekunder) för att posta samma sak igen."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
msgstr "Webbplatsnotis"
#: actions/sitenoticeadminpanel.php:67
-#, fuzzy
msgid "Edit site-wide message"
-msgstr "Nytt meddelande"
+msgstr "Redigera webbplastsnotis"
#: actions/sitenoticeadminpanel.php:103
-#, fuzzy
msgid "Unable to save site notice."
-msgstr "Kunde inte spara dina utseendeinställningar."
+msgstr "Kunde inte spara webbplatsnotis."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "Maximal längd för webbplatsnotisen är 255 tecken."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "Webbplatsnotis"
+msgstr "Text för webbplatsnotis"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "Text för webbplatsnotis (max 255 tecken; HTML ok)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "Webbplatsnotis"
+msgstr "Spara webbplatsnotis"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "Inställningar för SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Du kan ta emot SMS-meddelanden genom e-post från %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "SMS är inte tillgängligt."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-adress"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Nuvarande bekäftat telefonnummer för SMS."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "Väntar bekräftelse för detta telefonnummer."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Bekräftelsekod"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Fyll i koden du mottog i din telefon."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Bekräfta"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Telefonnummer för SMS"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Telefonnummer, inga punkter eller mellanslag, med landskod"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS-inställningar"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3908,23 +4169,33 @@ msgstr ""
"Skicka notiser till mig via SMS. Jag är införstådd med att min operatör kan "
"debitera mig."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "SMS-inställningar sparade."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Inget telefonnummer."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Ingen operatör vald."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Detta är redan ditt telefonnummer."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Detta telefonnumr tillhör redan en annan användare."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3932,23 +4203,40 @@ msgstr ""
"En bekräftelsekod skickades till det telefonnummer du lagt till. Kontrollera "
"din telefon för koden och instruktioner om hur du använder den."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Detta är fel bekräftelsenummer."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "SMS-bekräftelse avbruten."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Detta är inte ditt telefonnummer."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Telefonnummer för SMS togs bort."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Mobiloperatör"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Välj en operatör"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3958,20 +4246,20 @@ msgstr ""
"SMS via e-post men som inte finns med i listan, skicka ett e-post till oss "
"på %s och berätta."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Ingen kod ifylld"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
-msgstr "Ögonblicksbild"
+msgstr "Ögonblicksbilder"
#: actions/snapshotadminpanel.php:65
-#, fuzzy
msgid "Manage snapshot configuration"
-msgstr "Ändra webbplatskonfiguration"
+msgstr "Hantera konfiguration för ögonblicksbild"
#: actions/snapshotadminpanel.php:127
msgid "Invalid snapshot run value."
@@ -3986,7 +4274,7 @@ msgid "Invalid snapshot report URL."
msgstr "Ogiltig rapport-URL för ögonblicksbild"
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr "Slumpmässigt vid webbförfrågningar"
#: actions/snapshotadminpanel.php:201
@@ -4018,16 +4306,15 @@ msgid "Snapshots will be sent to this URL"
msgstr "Ögonblicksbild kommer skickat till denna URL"
#: actions/snapshotadminpanel.php:248
-#, fuzzy
msgid "Save snapshot settings"
-msgstr "Spara webbplatsinställningar"
+msgstr "Spara inställningar för ögonblicksbild"
#: actions/subedit.php:70
msgid "You are not subscribed to that profile."
msgstr "Du är inte prenumerat hos den profilen."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Kunde inte spara prenumeration."
@@ -4128,11 +4415,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s lyssnar inte på någon."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4165,12 +4452,12 @@ msgstr "Inget ID-argument."
msgid "Tag %s"
msgstr "Tagg %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Användarprofil"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Foto"
@@ -4206,10 +4493,6 @@ msgstr ""
msgid "No such tag."
msgstr "Ingen sådan tagg."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API-metoden är under uppbyggnad."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Du har inte blockerat denna användared."
@@ -4223,7 +4506,7 @@ msgid "User is not silenced."
msgstr "Användare är inte nedtystad."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Ingen profil-ID i begäran."
#: actions/unsubscribe.php:98
@@ -4261,7 +4544,8 @@ msgstr "Ogiltig välkomsttext. Maximal längd är 255 tecken."
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr "Ogiltig standardprenumeration: '%1$s' är inte användare."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4322,7 +4606,7 @@ msgstr ""
"prenumerera på den här användarens notiser. Om du inte bett att prenumerera "
"på någons meddelanden, klicka på \"Avvisa\"."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "Licens"
@@ -4425,38 +4709,44 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "Smaklig måltid!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "%1$s grupper, sida %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Sök efter fler grupper"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s är inte en medlem i någon grupp."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Prova att [söka efter grupper](%%action.groupsearch%%) och gå med i dem."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "Uppdateringar från %1$s på %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4465,11 +4755,11 @@ msgstr ""
"Denna webbplats drivs med %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. och medarbetare."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Medarbetare"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4481,7 +4771,7 @@ msgstr ""
"Foundation, antingen version 3 av licensen, eller (utifrån ditt val) någon "
"senare version. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4493,7 +4783,7 @@ msgstr ""
"LÄMPLIGHET FÖR ETT SÄRSKILT ÄNDAMÅL. Se GNU Affero General Public License "
"för mer information. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4502,91 +4792,141 @@ msgstr ""
"Du bör ha fått en kopia av GNU Affero General Public License tillsammans med "
"detta program. Om inte, se %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Insticksmoduler"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "Version"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Författare"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Webbadressen '%s' kan inte bearbeta"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Robin tycker att något är omöjligt"
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
+#, fuzzy, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"Inga filer får vara större än %d byte och filen du skickade var %d byte. "
"Prova att ladda upp en mindre version."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "En så här stor fil skulle överskrida din användarkvot på %d byte."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "En sådan här stor fil skulle överskrida din månatliga kvot på %d byte."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Ogiltig storlek."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Gruppanslutning misslyckades."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Inte med i grupp."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Grupputträde misslyckades."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Kunde inte uppdatera lokal grupp."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Kunde inte skapa inloggnings-token för %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Du är utestängd från att skicka direktmeddelanden."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Kunde inte infoga meddelande."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Kunde inte uppdatera meddelande med ny URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr "Databasfel vid infogning av hashtag: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Problem vid sparande av notis. För långt."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Problem vid sparande av notis. Okänd användare."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"För många notiser för snabbt; ta en vilopaus och posta igen om ett par "
"minuter."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4594,288 +4934,370 @@ msgstr ""
"För många duplicerade meddelanden för snabbt; ta en vilopaus och posta igen "
"om ett par minuter."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Du är utestängd från att posta notiser på denna webbplats."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Problem med att spara notis."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Problem med att spara gruppinkorg."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Användaren har ingen profil."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Kunde inte spara webbplatsnotis."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Du har blivit utestängd från att prenumerera."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Redan prenumerant!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "Användaren har blockerat dig."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Inte prenumerant!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+#, fuzzy
+msgid "Could not delete self-subscription."
msgstr "Kunde inte ta bort själv-prenumeration."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
-msgstr "Kunde inte ta bort prenumeration."
+msgid "Could not delete subscription OMB token."
+msgstr "Kunde inte radera OMB prenumerations-token."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Kunde inte ta bort prenumeration."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Välkommen till %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Kunde inte skapa grupp."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Kunde inte ställa in grupp-URI."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Kunde inte ställa in gruppmedlemskap."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Kunde inte spara lokal gruppinformation."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Ändra dina profilinställningar"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Ladda upp en avatar"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Ändra ditt lösenord"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Ändra e-posthantering"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Designa din profil"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Övrigt"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Övriga alternativ"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Övrigt"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Namnlös sida"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Primär webbplatsnavigation"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "Personlig profil och vänners tidslinje"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "Personligt"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Ändra din e-post, avatar, lösenord, profil"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Anslut till tjänster"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Anslut"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Ändra webbplatskonfiguration"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Administratör"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "Bjud in vänner och kollegor att gå med dig på %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "Bjud in"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Logga ut från webbplatsen"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Logga ut"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Skapa ett konto"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "Registrera"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Logga in på webbplatsen"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Logga in"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hjälp mig!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Hjälp"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Sök efter personer eller text"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Sök"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "Webbplatsnotis"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "Lokala vyer"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Sidnotis"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "Sekundär webbplatsnavigation"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hjälp"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Om"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "Frågor & svar"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "Användarvillkor"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Sekretess"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Källa"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Kontakt"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Emblem"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Programvarulicens för StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** är en mikrobloggtjänst tillhandahållen av [%%site.broughtby"
-"%%](%%site.broughtbyurl%%). "
+"%%](%%site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** är en mikrobloggtjänst. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** är en mikrobloggtjänst."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4886,68 +5308,82 @@ msgstr ""
"version %s, tillgänglig under [GNU Affero General Public License](http://www."
"fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Licens för webbplatsinnehåll"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "Innehåll och data av %1$s är privat och konfidensiell."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr "Innehåll och data copyright av %1$s. Alla rättigheter reserverade."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"Innehåll och data copyright av medarbetare. Alla rättigheter reserverade."
-#: lib/action.php:847
-msgid "All "
-msgstr "Alla "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "licens."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "Innehåll och data på %1$s är tillgänglig under licensen %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "Numrering av sidor"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Senare"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Tidigare"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr "Förväntade ett flödes rotelement, men fick ett helt XML-dokument."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Kan inte hantera fjärrinnehåll ännu."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Kan inte hantera inbäddat XML-innehåll ännu."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Kan inte hantera inbäddat Base64-innehåll ännu."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Du kan inte göra förändringar av denna webbplats."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Ändringar av den panelen tillåts inte."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() är inte implementerat."
@@ -4957,157 +5393,191 @@ msgstr "showForm() är inte implementerat."
msgid "saveSettings() not implemented."
msgstr "saveSetting() är inte implementerat."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Kunde inte ta bort utseendeinställning."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "Grundläggande webbplatskonfiguration"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Webbplats"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "Konfiguration av utseende"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Utseende"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "Konfiguration av användare"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "Användare"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "Konfiguration av åtkomst"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "Konfiguration av sökvägar"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "Konfiguration av sessioner"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
-#, fuzzy
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
-msgstr "Webbplatsnotis"
+msgstr "Redigera webbplatsnotis"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
-#, fuzzy
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
-msgstr "Konfiguration av sökvägar"
+msgstr "Konfiguration av ögonblicksbilder"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"API-resursen kräver läs- och skrivrättigheter, men du har bara läsrättighet."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"Misslyckat försök till API-autentisering, smeknamn =%1$s, proxy =%2$s, ip =%3"
-"$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Redigera applikation"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Ikon för denna applikation"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Beskriv din applikation med högst %d tecken"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Beskriv din applikation"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL för källa"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL till hemsidan för denna applikation"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL för källa"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "Organisation som ansvarar för denna applikation"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL till organisationens hemsidan"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL att omdirigera till efter autentisering"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Webbläsare"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "Skrivbord"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Typ av applikation, webbläsare eller skrivbord"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Skrivskyddad"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Läs och skriv"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Standardåtkomst för denna applikation: skrivskyddad, eller läs och skriv"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Avbryt"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "läs och skriv"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "skrivskyddad"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Godkänd %1$s - \"%2$s\" åtkomst."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Ã…terkalla"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "Bilagor"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Författare"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Tillhandahållare"
@@ -5119,45 +5589,64 @@ msgstr "Notiser där denna bilaga förekommer"
msgid "Tags for this attachment"
msgstr "Taggar för denna billaga"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Byte av lösenord misslyckades"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Byte av lösenord är inte tillåtet"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Resultat av kommando"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Kommando komplett"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Kommando misslyckades"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Tyvärr, detta kommando är inte implementerat än."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Notis med den ID:n finns inte"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "Användare har ingen sista notis"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Kunde inte hitta en användare med smeknamnet %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Kunde inte hitta en lokal användare med smeknamnet %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Tyvärr, detta kommando är inte implementerat än."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Det verkar inte vara särskilt meningsfullt att knuffa dig själv!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Knuff skickad till %s"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5168,196 +5657,202 @@ msgstr ""
"Prenumeranter: %2$s\n"
"Notiser: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Notis med den ID:n finns inte"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "Användare har ingen sista notis"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Notis markerad som favorit."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Du är redan en medlem i denna grupp"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "Kunde inte ansluta användare %s till groupp %s"
-
-#: lib/command.php:236
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "%s joined group %s"
-msgstr "%s gick med i grupp %s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Kunde inte ta bort användare %s från grupp %s"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "Kunde inte ansluta användare %1$s till grupp %2$s."
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%s lämnade grupp %s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Kunde inte ta bort användare %1$s från grupp %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Fullständigt namn: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "Plats: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Hemsida: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Om: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "Meddelande för långt - maximum är %d tecken, du skickade %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s är en fjärrprofil; du kan bara skicka direktmeddelanden till användare på "
+"samma server."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "Meddelande för långt - maximum är %1$d tecken, du skickade %2$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "Direktmeddelande till %s skickat"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Fel vid sändning av direktmeddelande."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Kan inte upprepa din egen notis"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Redan upprepat denna notis"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Notis fron %s upprepad"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Fel vid upprepning av notis."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Notis för långt - maximum är %d tecken, du skickade %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Svar på %s skickat"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Fel vid sparande av notis."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Ange namnet på användaren att prenumerara på"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Ingen sådan användare."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Kan inte prenumera på OMB-profiler via kommando."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "Prenumerar på %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Ange namnet på användaren att avsluta prenumeration på"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "Prenumeration hos %s avslutad"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Kommando inte implementerat än."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Notifikation av."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Kan inte sätta på notifikation."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Notifikation på."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Kan inte stänga av notifikation."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Inloggningskommando är inaktiverat"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Denna länk är endast användbar en gång, och gäller bara i 2 minuter: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "Prenumeration avslutad %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Du prenumererar inte på någon."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Du prenumererar på denna person:"
msgstr[1] "Du prenumererar på dessa personer:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "Ingen prenumerar på dig."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Denna person prenumererar på dig:"
msgstr[1] "Dessa personer prenumererar på dig:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Du är inte medlem i några grupper."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Du är en medlem i denna grupp:"
msgstr[1] "Du är en medlem i dessa grupper:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5437,19 +5932,19 @@ msgstr ""
"tracks - inte implementerat än.\n"
"tracking - inte implementerat än.\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Ingen konfigurationsfil hittades. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Jag letade efter konfigurationsfiler på följande platser: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "Du kanske vill köra installeraren för att åtgärda detta."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "GÃ¥ till installeraren."
@@ -5551,7 +6046,7 @@ msgstr "GÃ¥"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr ""
+msgstr "Bevilja denna användare \"%s\"-rollen"
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
@@ -5621,53 +6116,54 @@ msgstr "Grupper med flest inlägg"
msgid "Tags in %s group's notices"
msgstr "Taggar i %s grupps notiser"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Denna sida är inte tillgänglig i den mediatyp du accepterat"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Bildfilens format stödjs inte."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Denna fil är för stor. Den maximala filstorleken är %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Bitvis uppladdad."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Systemfel vid uppladdning av fil."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Inte en bildfil eller så är filen korrupt."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Bildfilens format stödjs inte."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Förlorade vår fil."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Okänd filtyp"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "MB"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "kB"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Okänd källa för inkorg %d."
@@ -5688,11 +6184,13 @@ msgstr "Logga in med ett användarnamn och lösenord"
msgid "Sign up for a new account"
msgstr "Registrera dig för ett nytt konto"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "E-postadressbekräftelse"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5721,12 +6219,24 @@ msgstr ""
"Tack för din tid, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s lyssnar nu på dina notiser på %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Om du anser att kontot används oriktigt kan du blockera det från listan över "
+"dina prenumeranter och rapportera det som skräppost till administratörer på %"
+"s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5751,17 +6261,20 @@ msgstr ""
"----\n"
"Ändra din e-postadress eller notiferingsinställningar på %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Biografi: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ny e-postadress för att skicka till %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5782,21 +6295,31 @@ msgstr ""
"Med vänliga hälsningar,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s status"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS-bekräftelse"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "%s: bekräfta detta telefonnummer med denna kod:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Du har blivit knuffad av %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5823,12 +6346,14 @@ msgstr ""
"Med vänliga hälsningar,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Nytt privat meddelande från %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5861,12 +6386,14 @@ msgstr ""
"Med vänliga hälsningar,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) lade till din notis som en favorit"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5903,12 +6430,25 @@ msgstr ""
"Med vänliga hälsningar,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Hela konversationen kan läsas här:\n"
+"\n"
+"\t%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) skickade en notis för din uppmärksamhet"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5921,18 +6461,41 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
"%1$s (@%9$s) skickade precis en notis för din uppmärksamhet (ett '@-svar') "
"på %2$s.\n"
"\n"
"Notisen är här:\n"
"\n"
-"%3$s\n"
+"\t%3$s\n"
"\n"
"Den lyder:\n"
"\n"
-"%4$s\n"
+"\t%4$s\n"
+"\n"
+"%5$sDu kan svara här:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"Listan med alla @-svar till dig hittar du här:\n"
+"%7$s\n"
"\n"
+"Med vänliga hälsningar,\n"
+"%2$s\n"
+"\n"
+"P.S. Du kan stänga av dessa e-postnotifikationer här: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5947,7 +6510,7 @@ msgstr ""
"engagera andra användare i konversationen. Folk kan skicka meddelanden till "
"dig som bara du ser."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "från"
@@ -6006,24 +6569,24 @@ msgstr "Misslyckades att skriva fil till disk."
msgid "File upload stopped by extension."
msgstr "Filuppladdningen stoppad pga filändelse"
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Fil överstiger användaren kvot."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Fil kunde inte flyttas till destinationskatalog."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Kunde inte fastställa filens MIME-typ."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr "Försök använda ett annat %s-format."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s är en filtyp som saknar stöd på denna server."
@@ -6078,48 +6641,52 @@ msgstr ""
"Tyvärr, hämtning av din geografiska plats tar längre tid än förväntat, var "
"god försök igen senare"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "N"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "S"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "Ö"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "V"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "på"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "i sammanhang"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Upprepad av"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "Svara på denna notis"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Svara"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Notis upprepad"
@@ -6143,6 +6710,10 @@ msgstr "Fel vid infogning av ny profil"
msgid "Error inserting avatar"
msgstr "Fel vid infogning av avatar"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Fel vid uppdatering av fjärrprofil"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Fel vid infogning av fjärrprofilen"
@@ -6188,11 +6759,11 @@ msgstr "Dina skickade meddelanden"
msgid "Tags in %s's notices"
msgstr "Taggar i %ss notiser"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Okänd"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Prenumerationer"
@@ -6200,31 +6771,32 @@ msgstr "Prenumerationer"
msgid "All subscriptions"
msgstr "Alla prenumerationer"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Prenumeranter"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Alla prenumeranter"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "Användar-ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Medlem sedan"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "Dagligt genomsnitt"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Alla grupper"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Inga \"return-to\"-argument."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Inte implementerad metod."
@@ -6248,20 +6820,28 @@ msgstr "Profilerade"
msgid "Popular"
msgstr "Populärt"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Inga \"return-to\"-argument."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Upprepa denna notis?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Ja"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Upprepa denna notis"
#: lib/revokeroleform.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Blockera denna användare från denna grupp"
+msgstr "Återkalla rollen \"%s\" från denna användare"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "Ingen enskild användare definierad för enanvändarläge."
@@ -6359,6 +6939,51 @@ msgstr "Taggmoln för person, såsom taggats"
msgid "None"
msgstr "Ingen"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "Denna server kan inte hantera temauppladdningar utan ZIP-stöd."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Temafilen saknas eller uppladdningen misslyckades."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Kunde inte spara tema."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Ogiltigt tema: dålig katalogstruktur."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Uppladdat tema är för stort, måste vara mindre än %d byte okomprimerat."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Ogiltigt temaarkiv: filen css/display.css saknas"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Tema innehåller ogiltigt fil- eller mappnamn. Använd bara ASCII-bokstäver, "
+"siffror, understreck och minustecken."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Tema innehåller fil av typen '.%s', vilket inte är tillåtet."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Fel vid öppning temaarkiv."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Toppostare"
@@ -6387,92 +7012,108 @@ msgstr "Avsluta prenumerationen på denna användare"
msgid "Unsubscribe"
msgstr "Avsluta pren."
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Användare %s (%d) har inga profiluppgifter."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Redigera avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "Åtgärder för användare"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Borttagning av användare pågår..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "Redigera profilinställningar"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Redigera"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "Skicka ett direktmeddelande till denna användare"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "Meddelande"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Moderera"
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "Användarprofil"
+msgstr "Användarroll"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
-msgstr "Administratörer"
+msgstr "Administratör"
-#: lib/userprofile.php:355
-#, fuzzy
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr "Moderera"
+msgstr "Moderator"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "ett par sekunder sedan"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "för nån minut sedan"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "för %d minuter sedan"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "för en timma sedan"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "för %d timmar sedan"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "för en dag sedan"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "för %d dagar sedan"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "för en månad sedan"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "för %d månader sedan"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "för ett år sedan"
@@ -6486,7 +7127,7 @@ msgstr "%s är inte en giltig färg!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s är inte en giltig färg! Använd 3 eller 6 hexadecimala tecken."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "Meddelande för långt - maximum är %1$d tecken, du skickade %2$d."
diff --git a/locale/te/LC_MESSAGES/statusnet.po b/locale/te/LC_MESSAGES/statusnet.po
index c8a2f5c1a..bd506b98a 100644
--- a/locale/te/LC_MESSAGES/statusnet.po
+++ b/locale/te/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:01+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:01+0000\n"
"Language-Team: Telugu\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: te\n"
"X-Message-Group: out-statusnet\n"
@@ -22,10 +22,9 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
-#, fuzzy
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
-msgstr "అంగీకరించà±"
+msgstr "à°…à°‚à°¦à±à°¬à°¾à°Ÿà±"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
@@ -44,7 +43,6 @@ msgstr "à°…à°œà±à°žà°¾à°¤ (à°ªà±à°°à°µà±‡à°¶à°¿à°‚చని) వాడà±à°•à°
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "అంతరంగికం"
@@ -66,95 +64,97 @@ msgstr "కొతà±à°¤ నమోదà±à°²à°¨à± అచేతనంచేయి.
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
-#, fuzzy
msgid "Closed"
-msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ వాడà±à°•à°°à°¿ లేరà±."
+msgstr "మూసివేయబడింది"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
-#, fuzzy
msgid "Save access settings"
-msgstr "సైటౠఅమరికలనౠభదà±à°°à°ªà°°à°šà±"
-
-#: actions/accessadminpanel.php:203
-#, fuzzy
+msgstr "à°…à°‚à°¦à±à°¬à°¾à°Ÿà± అమరికలనౠభదà±à°°à°ªà°°à°šà±"
+
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "à°­à°¦à±à°°à°ªà°°à°šà±"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పేజీ లేదà±"
+msgid "No such page."
+msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పేజీ లేదà±."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ వాడà±à°•à°°à°¿ లేరà±."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s మరియౠమితà±à°°à±à°²à±, పేజీ %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s మరియౠమితà±à°°à±à°²à±"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "%s యొకà±à°• మితà±à°°à±à°² ఫీడౠ(RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "%s యొకà±à°• మితà±à°°à±à°² ఫీడౠ(RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "%s యొకà±à°• మితà±à°°à±à°² ఫీడౠ(ఆటమà±)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "ఇది %s మరియౠమితà±à°°à±à°² కాలరేఖ కానీ ఇంకా ఎవరూ à°à°®à±€ రాయలేదà±."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -162,78 +162,81 @@ msgid ""
msgstr "ఇతరà±à°²à°•à°¿ చందా చేరండి, [à°à°¦à±ˆà°¨à°¾ à°—à±à°‚à°ªà±à°²à±‹ చేరండి](%%action.groups%%) లేదా మీరే à°à°¦à±ˆà°¨à°¾ à°µà±à°°à°¾à°¯à°‚à°¡à°¿."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
-#, php-format
+#: actions/all.php:146
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
+"[à°ˆ విషయంపై](%%%%action.newnotice%%%%?status_textarea=%s) à°µà±à°°à°¾à°¸à±‡ మొదటివారౠమీరే à°…à°µà±à°µà°‚à°¡à°¿!"
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
-#, php-format
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
+#, fuzzy, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
-msgstr ""
+"post a notice to them."
+msgstr "[à°’à°• ఖాతాని నమోదà±à°šà±‡à°¸à±à°•à±à°¨à°¿](%%action.register%%) మీరే మొదట à°µà±à°°à°¾à°¸à±‡à°µà°¾à°°à± à°Žà°‚à°¦à±à°•à± కాకూడదà±!"
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "మీరౠమరియౠమీ à°¸à±à°¨à±‡à°¹à°¿à°¤à±à°²à±"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
-msgstr ""
+msgstr "%2$sలో %1$s మరియౠసà±à°¨à±‡à°¹à°¿à°¤à±à°² à°¨à±à°‚à°¡à°¿ తాజాకరణలà±!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "నిరà±à°§à°¾à°°à°£ సంకేతం కనబడలేదà±."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
@@ -243,7 +246,7 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
@@ -254,9 +257,9 @@ msgid "Could not save profile."
msgstr "à°ªà±à°°à±Šà°«à±ˆà°²à±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -273,7 +276,7 @@ msgstr ""
#: actions/userdesignsettings.php:210 actions/userdesignsettings.php:220
#: actions/userdesignsettings.php:263 actions/userdesignsettings.php:273
msgid "Unable to save your design settings."
-msgstr ""
+msgstr "మీ రూపà±à°°à±‡à°–à°² అమరికలని à°­à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚."
#: actions/apiaccountupdateprofilebackgroundimage.php:187
#: actions/apiaccountupdateprofilecolors.php:142
@@ -301,7 +304,7 @@ msgstr "%s à°¨à±à°‚à°¡à°¿ నేరౠసందేశాలà±"
#: actions/apidirectmessage.php:93
#, php-format
msgid "All the direct messages sent from %s"
-msgstr ""
+msgstr "%s à°¨à±à°‚à°¡à°¿ పంపిన à°…à°¨à±à°¨à°¿ నేరౠసందేశాలà±"
#: actions/apidirectmessage.php:101
#, php-format
@@ -311,48 +314,49 @@ msgstr "%s à°•à°¿ నేరౠసందేశాలà±"
#: actions/apidirectmessage.php:105
#, php-format
msgid "All the direct messages sent to %s"
-msgstr ""
+msgstr "%sà°•à°¿ పంపిన à°…à°¨à±à°¨à°¿ నేరౠసందేశాలà±"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "సందేశపౠపాఠà±à°¯à°‚ లేదà±!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "చాలా పొడవà±à°‚ది. à°—à°°à°¿à°·à±à°  సందేశ పరిమాణం %d à°…à°•à±à°·à°°à°¾à°²à±."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "à°…à°‚à°¦à±à°•à±‹à°µà°¾à°²à±à°¸à°¿à°¨ వాడà±à°•à°°à°¿ కనబడలేదà±."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
-msgstr ""
+msgstr "మీ à°¸à±à°¨à±‡à°¹à°¿à°¤à±à°²à± కాని వాడà±à°•à°°à±à°²à°•à°¿ నేరౠసందేశాలౠపంపించలేరà±."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
-msgstr ""
+msgstr "à°† IDతో ఠనోటీసూ కనబడలేదà±."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "à°ˆ నోటీసౠఇపà±à°ªà°Ÿà°¿à°•à±‡ మీ ఇషà±à°Ÿà°¾à°‚శం."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "ఇషà±à°Ÿà°¾à°‚శానà±à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "à°† నోటీసౠఇషà±à°Ÿà°¾à°‚శం కాదà±."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "ఇషà±à°Ÿà°¾à°‚శానà±à°¨à°¿ తొలగించలేకపోయాం."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°…à°¨à±à°¸à°°à°¿à°‚చలేకపోయాం: వాడà±à°•à°°à°¿ కనబడలేదà±."
#: actions/apifriendshipscreate.php:118
@@ -366,12 +370,11 @@ msgid "Could not unfollow user: User not found."
msgstr "ఓపెనà±à°à°¡à±€ ఫారమà±à°¨à± సృషà±à°Ÿà°¿à°‚చలేకపోయాం: %s"
#: actions/apifriendshipsdestroy.php:120
-#, fuzzy
msgid "You cannot unfollow yourself."
-msgstr "మిమà±à°®à°²à±à°¨à°¿ మీరే నిరోధించà±à°•à±‹à°²à±‡à°°à±!"
+msgstr "మిమà±à°®à°²à±à°¨à°¿ మీరే అననà±à°¸à°°à°¿à°‚చలేరà±."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -383,115 +386,128 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±
msgid "Could not find target user."
msgstr "లకà±à°·à±à°¯à°¿à°¤ వాడà±à°•à°°à°¿à°¨à°¿ à°•à°¨à±à°—ొనలేకపోయాం."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "పేరà±à°²à±‹ à°šà°¿à°¨à±à°¨à°¬à°¡à°¿ à°…à°•à±à°·à°°à°¾à°²à± మరియౠఅంకెలౠమాతà±à°°à°®à±‡ ఖాళీలౠలేకà±à°‚à°¡à°¾ ఉండాలి."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "à°† పేరà±à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ వాడà±à°¤à±à°¨à±à°¨à°¾à°°à±. మరోటి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "సరైన పేరౠకాదà±."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "హోమౠపేజీ URL సరైనది కాదà±."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "పూరà±à°¤à°¿ పేరౠచాలా పెదà±à°¦à°—à°¾ ఉంది (à°—à°°à°¿à°·à±à° à°‚à°—à°¾ 255 à°…à°•à±à°·à°°à°¾à°²à±)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "వివరణ చాలా పెదà±à°¦à°—à°¾ ఉంది (%d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "à°ªà±à°°à°¾à°‚తం పేరౠమరీ పెదà±à°¦à°—à°¾ ఉంది (255 à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "చాలా మారà±à°ªà±‡à°°à±à°²à±! %d à°—à°°à°¿à°·à±à° à°‚."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "తపà±à°ªà±à°¡à± మారà±à°ªà±‡à°°à±: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "తపà±à°ªà±à°¡à± మారà±à°ªà±‡à°°à±: \"%s\"."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "\"%s\" à°…à°¨à±à°¨ మారà±à°ªà±‡à°°à±à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ వాడà±à°¤à±à°¨à±à°¨à°¾à°°à±. మరొకటి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "మారà±à°ªà±‡à°°à± పేరà±à°¤à±‹ సమానంగా ఉండకూడదà±."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "à°—à±à°‚పౠదొరకలేదà±!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "à°—à±à°‚పౠదొరకలేదà±."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† à°—à±à°‚à°ªà±à°²à±‹ సభà±à°¯à±à°²à±."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à± à°† à°—à±à°‚పౠనà±à°‚à°¡à°¿ మిమà±à°®à°²à±à°¨à°¿ నిరోధించారà±."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
-#, fuzzy, php-format
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
+#, php-format
msgid "Could not join user %1$s to group %2$s."
-msgstr "ఓపెనà±à°à°¡à±€ ఫారమà±à°¨à± సృషà±à°Ÿà°¿à°‚చలేకపోయాం: %s"
+msgstr "వాడà±à°•à°°à°¿ %1$sని %2$s à°—à±à°‚à°ªà±à°²à±‹ చేరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "మీరౠఈ à°—à±à°‚à°ªà±à°²à±‹ సభà±à°¯à±à°²à± కాదà±."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
-#, fuzzy, php-format
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
+#, php-format
msgid "Could not remove user %1$s from group %2$s."
-msgstr "వాడà±à°•à°°à°¿ %sని %s à°—à±à°‚పౠనà±à°‚à°¡à°¿ తొలగించలేకపోయాం."
+msgstr "వాడà±à°•à°°à°¿ %1$sని %2$s à°—à±à°‚పౠనà±à°‚à°¡à°¿ తొలగించలేకపోయాం."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s యొకà±à°• à°—à±à°‚à°ªà±à°²à±"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%2$s సభà±à°¯à±à°²à±à°—à°¾ ఉనà±à°¨ %2$s à°—à±à°‚à°ªà±à°²à±."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s à°—à±à°‚à°ªà±à°²à±"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "%s పై à°—à±à°‚à°ªà±à°²à±"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "ఫైలà±à°¨à°¿ à°Žà°•à±à°•à°¿à°‚à°šà±"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -502,17 +518,17 @@ msgid "Invalid token."
msgstr "తపà±à°ªà±à°¡à± పరిమాణం."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -545,22 +561,25 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr ""
#: actions/apioauthauthorize.php:259
msgid "An application would like to connect to your account"
-msgstr ""
+msgstr "à°’à°• ఉపకరణం మీ ఖాతాకి à°…à°¨à±à°¸à°‚ధానమవà±à°µà°¾à°²à°¨à±à°•à±à°‚టూంది."
#: actions/apioauthauthorize.php:276
msgid "Allow or deny access"
-msgstr ""
+msgstr "à°…à°¨à±à°®à°¤à°¿à°¨à°¿ ఇవà±à°µà°‚à°¡à°¿ లేదా తిరసà±à°•à°°à°¿à°‚à°šà°‚à°¡à°¿"
#: actions/apioauthauthorize.php:292
#, php-format
@@ -570,20 +589,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "ఖాతా"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "పేరà±"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "సంకేతపదం"
@@ -597,13 +618,13 @@ msgstr "à°…à°¨à±à°®à°¤à°¿à°‚à°šà±"
#: actions/apioauthauthorize.php:351
msgid "Allow or deny access to your account information."
-msgstr ""
+msgstr "మీ ఖాతా సమాచారానà±à°¨à°¿ సంపà±à°°à°¾à°ªà°¿à°‚చడానికి à°…à°¨à±à°®à°¤à°¿à°‚à°šà°‚à°¡à°¿ లేదా నిరాకరించండి."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "ఇతర వాడà±à°•à°°à±à°² à°¸à±à°¥à°¿à°¤à°¿à°¨à°¿ మీరౠతొలగించలేరà±."
@@ -620,59 +641,63 @@ msgstr "మీ నోటీసà±à°¨à°¿ మీరే à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿
msgid "Already repeated that notice."
msgstr "ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చారà±."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "à°¸à±à°¥à°¿à°¤à°¿à°¨à°¿ తొలగించాం."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
+msgstr "à°† IDతో ఠనోటీసౠకనబడలేదà±."
+
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "అది చాలా పొడవà±à°‚ది. à°—à°°à°¿à°·à±à°  నోటీసౠపరిమాణం %d à°…à°•à±à°·à°°à°¾à°²à±."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "దొరకలేదà±"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "కనబడలేదà±."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr "à°—à°°à°¿à°·à±à°  నోటీసౠపొడవౠ%d à°…à°•à±à°·à°°à°¾à°²à±, జోడింపౠURLని à°•à°²à±à°ªà±à°•à±à°¨à°¿."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr ""
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr ""
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s యొకà±à°• మైకà±à°°à±‹à°¬à±à°²à°¾à°—à±"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
-msgstr ""
+msgstr "%1$s / %2$sని పేరà±à°•à±Šà°¨à±à°¨ నోటీసà±à°²à±"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s బహిరంగ కాలరేఖ"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "అందరి à°¨à±à°‚à°¡à°¿ %s తాజాకరణలà±!"
@@ -687,19 +712,19 @@ msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
msgid "Repeats of %s"
msgstr "%s యొకà±à°• à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¾à°²à±"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
-#, fuzzy, php-format
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
+#, php-format
msgid "Updates tagged with %1$s on %2$s!"
-msgstr "%s యొకà±à°• మైకà±à°°à±‹à°¬à±à°²à°¾à°—à±"
+msgstr "%2$sలో %1$s అనే à°Ÿà±à°¯à°¾à°—à±à°¤à±‹ ఉనà±à°¨ నోటీసà±à°²à±!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "కనబడలేదà±."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
msgid "No such attachment."
@@ -721,8 +746,9 @@ msgstr "పరిమాణం లేదà±."
msgid "Invalid size."
msgstr "తపà±à°ªà±à°¡à± పరిమాణం."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "అవతారం"
@@ -732,10 +758,11 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "మీ à°µà±à°¯à°•à±à°¤à°¿à°—à°¤ అవతారానà±à°¨à°¿ మీరౠఎకà±à°•à°¿à°‚చవచà±à°šà±. à°—à°°à°¿à°·à±à°  ఫైలౠపరిమాణం %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -753,7 +780,7 @@ msgid "Preview"
msgstr "à°®à±à°¨à±à°œà±‚à°ªà±"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "తొలగించà±"
@@ -765,23 +792,27 @@ msgstr "à°Žà°—à±à°®à°¤à°¿à°‚à°šà±"
msgid "Crop"
msgstr "à°•à°¤à±à°¤à°¿à°°à°¿à°‚à°šà±"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "ఠదసà±à°¤à±à°°à°®à±‚ à°Žà°•à±à°•à°¿à°‚పబడలేదà±."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "మీ అవతారానికి గానూ à°ˆ à°šà°¿à°¤à±à°°à°‚ à°¨à±à°‚à°¡à°¿ à°’à°• à°šà°¤à±à°°à°¸à±à°°à°ªà± à°ªà±à°°à°¦à±‡à°¶à°¾à°¨à±à°¨à°¿ à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "అవతారానà±à°¨à°¿ తాజాకరించాం."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "అవతారపౠతాజాకరణ విఫలమైంది."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "అవతారానà±à°¨à°¿ తొలగించాం."
@@ -789,38 +820,55 @@ msgstr "అవతారానà±à°¨à°¿ తొలగించాం."
msgid "You already blocked that user."
msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించారà±."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించà±"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
+"మీరౠఈ వాడà±à°•à°°à°¿à°¨à°¿ నిజంగానే నిరోధించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à°¾? à°† తరà±à°µà°¾à°¤, వారౠమీ à°¨à±à°‚à°¡à°¿ చందా విరమింపబడతారà±, "
+"భవిషà±à°¯à°¤à±à°¤à±à°²à±‹ మీకౠచందా చేరలేరà±, మరియౠవారి à°¨à±à°‚à°¡à°¿ @-à°¸à±à°ªà°‚దనలని మీకౠతెలియజేయమà±."
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "కాదà±"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించకà±"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "à°…à°µà±à°¨à±"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించà±"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "నిరోధపౠసమాచారానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో విఫలమయà±à°¯à°¾à°‚."
@@ -833,8 +881,8 @@ msgstr "నిరోధపౠసమాచారానà±à°¨à°¿ à°­à°¦à±à°°à°ªà
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ à°—à±à°‚పౠలేదà±."
@@ -866,9 +914,11 @@ msgstr ""
msgid "Unblock this user"
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ వాడà±à°•à°°à°¿ లేరà±."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "%sà°•à°¿ టపాచెయà±à°¯à°¿"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -882,33 +932,43 @@ msgstr "నిరà±à°§à°¾à°°à°£ సంకేతం కనబడలేదà±."
msgid "That confirmation code is not for you!"
msgstr "à°† నిరà±à°§à°¾à°°à°£à°¾ సంకేతం మీది కాదà±!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "à°—à±à°°à±à°¤à±à°¤à±†à°²à°¿à°¯à°¨à°¿ à°šà°¿à°°à±à°¨à°¾à°®à°¾ à°°à°•à°‚ %s"
+msgid "Unrecognized address type %s."
+msgstr "à°—à±à°°à±à°¤à±à°¤à±†à°²à°¿à°¯à°¨à°¿ à°šà°¿à°°à±à°¨à°¾à°®à°¾ à°°à°•à°‚ %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "à°† à°šà°¿à°°à±à°¨à°¾à°®à°¾ ఇపà±à°ªà°Ÿà°¿à°•à±‡ నిరà±à°§à°¾à°°à°¿à°¤à°®à±ˆà°‚ది."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "ఈమెయిలౠనిరà±à°§à°¾à°°à°£à°¨à°¿ తొలగించలేకà±à°¨à±à°¨à°¾à°‚."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "à°šà°¿à°°à±à°¨à°¾à°®à°¾à°¨à°¿ నిరà±à°§à°¾à°°à°¿à°‚à°šà±"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "\"%s\" అనే à°šà°¿à°°à±à°¨à°¾à°®à°¾ మీ ఖాతాకి నిరà±à°§à°¾à°°à°¿à°¤à°®à±ˆà°‚ది."
@@ -918,7 +978,7 @@ msgid "Conversation"
msgstr "సంభాషణ"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "సందేశాలà±"
@@ -937,7 +997,7 @@ msgstr "మీరౠఈ ఉపకరణం యొకà±à°• యజమాని à
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -954,21 +1014,23 @@ msgstr ""
"మీరౠనిజంగానే à°ˆ ఉపకరణానà±à°¨à°¿ తొలగించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à°¾? ఇది à°† ఉపకరణం à°—à±à°°à°¿à°‚à°šà°¿ భోగటà±à°Ÿà°¾à°¨à°¿, à°ªà±à°°à°¸à±à°¤à±à°¤ "
"వాడà±à°•à°°à±à°² à°…à°¨à±à°¸à°‚ధానాలతో సహా, డాటాబేసౠనà±à°‚à°¡à°¿ తొలగిసà±à°¤à±à°‚ది."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "à°ˆ ఉపకరణానà±à°¨à°¿ తొలగించకà±"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "à°ˆ ఉపకరణానà±à°¨à°¿ తొలగించà±"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చలేదà±."
@@ -991,11 +1053,13 @@ msgstr "నోటీసà±à°¨à°¿ తొలగించà±"
msgid "Are you sure you want to delete this notice?"
msgstr "మీరౠనిజంగానే à°ˆ నోటీసà±à°¨à°¿ తొలగించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à°¾?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "à°ˆ నోటీసà±à°¨à°¿ తొలగించకà±"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "à°ˆ నోటీసà±à°¨à°¿ తొలగించà±"
@@ -1019,125 +1083,146 @@ msgstr ""
"మీరౠనిజంగానే à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ తొలగించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à°¾? ఇది à°† వాడà±à°•à°°à°¿ భోగటà±à°Ÿà°¾à°¨à°¿ డాటాబేసౠనà±à°‚à°¡à°¿ తొలగిసà±à°¤à±à°‚ది, "
"వెనకà±à°•à°¿ తేలేకà±à°‚à°¡à°¾."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ తొలగించà±"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "రూపà±à°°à±‡à°–à°²à±"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "à°ˆ à°¸à±à°Ÿà±‡à°Ÿà°¸à±&zwnj;నెటౠసైటà±à°•à°¿ రూపà±à°°à±‡à°–à°² అమరికలà±."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "à°šà°¿à°¹à±à°¨à°ªà± URL చెలà±à°²à°¦à±."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "అలంకారం à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ లేదà±: %s"
+msgid "Theme not available: %s."
+msgstr "అలంకారం à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ లేదà±: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "à°šà°¿à°¹à±à°¨à°¾à°¨à±à°¨à°¿ మారà±à°šà±"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "సైటౠచిహà±à°¨à°‚"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "అలంకారానà±à°¨à°¿ మారà±à°šà±"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "సైటౠఅలంకారం"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "సైటà±à°•à°¿ అలంకారం."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "సైటౠఅలంకారం"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "నేపథà±à°¯ à°šà°¿à°¤à±à°°à°¾à°¨à±à°¨à°¿ మారà±à°šà±"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "నేపథà±à°¯à°‚"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "సైటà±à°•à°¿ మీరౠనేపథà±à°¯à°ªà± à°šà°¿à°¤à±à°°à°¾à°¨à±à°¨à°¿ à°Žà°•à±à°•à°¿à°‚చవచà±à°šà±. à°—à°°à°¿à°·à±à°  ఫైలౠపరిమాణం %1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "à°°à°‚à°—à±à°²à°¨à± మారà±à°šà±"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "విషయం"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "పకà±à°•à°ªà°Ÿà±à°Ÿà±€"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "పాఠà±à°¯à°‚"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "లంకెలà±"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
-msgid "Use defaults"
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "ఉనà±à°¨à°¤"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
+msgid "Use defaults"
+msgstr "à°…à°ªà±à°°à°®à±‡à°¯à°¾à°²à°¨à°¿ ఉపయోగించà±"
+
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "à°­à°¦à±à°°à°ªà°°à°šà±"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "రూపà±à°°à±‡à°–లని à°­à°¦à±à°°à°ªà°°à°šà±"
@@ -1155,7 +1240,6 @@ msgid "No such document \"%s\""
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పతà±à°°à°®à±‡à°®à±€ లేదà±."
#: actions/editapplication.php:54
-#, fuzzy
msgid "Edit Application"
msgstr "ఉపకరణానà±à°¨à°¿ మారà±à°šà±"
@@ -1181,7 +1265,6 @@ msgid "Name is too long (max 255 chars)."
msgstr "పేరౠచాలా పెదà±à°¦à°—à°¾ ఉంది (à°—à°°à°¿à°·à±à° à°‚à°—à°¾ 255 à°…à°•à±à°·à°°à°¾à°²à±)."
#: actions/editapplication.php:183 actions/newapplication.php:162
-#, fuzzy
msgid "Name already in use. Try another one."
msgstr "à°† పేరà±à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ వాడà±à°¤à±à°¨à±à°¨à°¾à°°à±. మరోటి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿."
@@ -1219,9 +1302,8 @@ msgid "Callback URL is not valid."
msgstr ""
#: actions/editapplication.php:258
-#, fuzzy
msgid "Could not update application."
-msgstr "à°—à±à°‚à°ªà±à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
+msgstr "ఉపకరణానà±à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
#: actions/editgroup.php:56
#, php-format
@@ -1246,11 +1328,17 @@ msgstr "à°—à±à°‚à°ªà±à°¨à°¿ మారà±à°šà°¡à°¾à°¨à°¿à°•à°¿ à°ˆ ఫారా
msgid "description is too long (max %d chars)."
msgstr "వివరణ చాలా పెదà±à°¦à°¦à°¿à°—à°¾ ఉంది (140 à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "తపà±à°ªà±à°¡à± మారà±à°ªà±‡à°°à±: \"%s\""
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "à°—à±à°‚à°ªà±à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "మారà±à°ªà±‡à°°à±à°²à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
@@ -1258,178 +1346,231 @@ msgstr "మారà±à°ªà±‡à°°à±à°²à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపà±
msgid "Options saved."
msgstr "ఎంపికలౠభదà±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "ఈమెయిలౠఅమరికలà±"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
-msgstr ""
+msgstr "%%site.name%% à°¨à±à°‚à°¡à°¿ మీకౠఎలా మెయిలౠవసà±à°¤à±‚ంతో సంభాళించà±à°•à±‹à°‚à°¡à°¿."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "à°šà°¿à°°à±à°¨à°¾à°®à°¾"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ నిరà±à°§à°¾à°°à°¿à°¤ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "తొలగించà±"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
+"à°ˆ à°šà°¿à°°à±à°¨à°¾à°®à°¾ నిరà±à°§à°¾à°°à°£à°•à±ˆ వేచివà±à°¨à±à°¨à°¾à°‚. తదà±à°ªà°°à°¿ సూచనలతో ఉనà±à°¨ సందేశానికై మీ ఇనà±â€Œà°¬à°¾à°•à±à°¸à±â€Œà°²à±‹ (à°¸à±à°ªà°¾à°®à± బాకà±à°¸à±à°²à±‹ కూడా!) "
+"చూడండి."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "à°°à°¦à±à°¦à±à°šà±‡à°¯à°¿"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾, \"username@example.org\" వలె"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "చేరà±à°šà±"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "కొతà±à°¤à°¦à°¿"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "à°…à°­à°¿à°°à±à°šà±à°²à±"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "ఈమెయిలౠఅభిరà±à°šà±à°²à±"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
-msgstr ""
+msgstr "నేనౠఈమెయిలౠదà±à°µà°¾à°°à°¾ నోటీసà±à°²à± పంపాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°¨à±."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "à°…à°­à°¿à°°à±à°šà±à°²à± à°­à°¦à±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "ఈమెయిలౠఅభిరà±à°šà±à°²à± à°­à°¦à±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ లేదà±."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "సరైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ కాదà±:"
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "అది ఇపà±à°ªà°Ÿà°¿à°•à±‡ మీ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "à°† ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ ఇపà±à°ªà°Ÿà±‡à°•à±‡ ఇతర వాడà±à°•à°°à°¿à°•à°¿ సంబంధించినది."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "నిరà±à°§à°¾à°°à°£ సంకేతానà±à°¨à°¿ చేరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "à°°à°¦à±à°¦à±à°šà±‡à°¯à°¡à°¾à°¨à°¿à°•à°¿ వేచివà±à°¨à±à°¨ నిరà±à°§à°¾à°°à°£à°²à±‡à°®à±€ లేవà±."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "à°† IM à°šà°¿à°°à±à°¨à°¾à°®à°¾ సరైనది కాదà±."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "à°† ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ సరైనది కాదà±."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "నిరà±à°§à°¾à°°à°£ à°°à°¦à±à°¦à°¯à°¿à°‚ది."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "ఈమెయిలౠనిరà±à°§à°¾à°°à°£ à°°à°¦à±à°¦à°¯à°¿à°‚ది."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "అది మీ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ కాదà±."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "à°† à°šà°¿à°°à±à°¨à°¾à°®à°¾à°¨à°¿ తొలగించాం."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "à°† ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¨à°¿ తొలగించాం."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1543,8 +1684,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "దూరపౠపà±à°°à±Šà°ªà±ˆà°²à±à°¨à°¿ తాజాకరించటంలో పొరపాటà±"
#: actions/getfile.php:79
@@ -1556,40 +1698,37 @@ msgid "Cannot read file."
msgstr "ఫైలà±à°¨à°¿ చదవలేకపోతà±à°¨à±à°¨à°¾à°‚."
#: actions/grantrole.php:62 actions/revokerole.php:62
-#, fuzzy
msgid "Invalid role."
-msgstr "తపà±à°ªà±à°¡à± పరిమాణం."
+msgstr "తపà±à°ªà±à°¡à± పాతà±à°°."
#: actions/grantrole.php:66 actions/revokerole.php:66
msgid "This role is reserved and cannot be set."
msgstr ""
#: actions/grantrole.php:75
-#, fuzzy
msgid "You cannot grant user roles on this site."
-msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±!"
+msgstr "à°ˆ సైటà±à°²à±‹ మీరౠవాడà±à°•à°°à°²à°•à°¿ పాతà±à°°à°²à°¨à± ఇవà±à°µà°²à±‡à°°à±."
#: actions/grantrole.php:82
-#, fuzzy
msgid "User already has this role."
-msgstr "వాడà±à°•à°°à°¿à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°—à±à°‚à°ªà±à°¨à±à°‚à°¡à°¿ నిరోధించారà±."
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°ˆ పాతà±à°° ఉంది."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
#: actions/groupblock.php:81 actions/groupunblock.php:81
#: actions/makeadmin.php:81
msgid "No group specified."
-msgstr ""
+msgstr "à°—à±à°‚పౠà°à°®à±€ పేరà±à°•à±Šà°¨à°²à±‡à°¦à±."
#: actions/groupblock.php:91
msgid "Only an admin can block group members."
@@ -1603,11 +1742,11 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°—à±à°‚à°ªà±à°¨à
msgid "User is not a member of group."
msgstr "వాడà±à°•à°°à°¿ à°ˆ à°—à±à°‚à°ªà±à°²à±‹ సభà±à°¯à±à°²à± కాదà±."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°—à±à°‚పౠనà±à°‚à°¡à°¿ నిరోధించà±"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1617,15 +1756,17 @@ msgstr ""
"నిజంగానే వాడà±à°•à°°à°¿ \"%1$s\"ని \"%2$s\" à°—à±à°‚పౠనà±à°‚à°¡à°¿ నిరోధించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à°¾? వారిని à°—à±à°‚పౠనà±à°‚à°¡à°¿ "
"తొలగిసà±à°¤à°¾à°‚, ఇక భవిషà±à°¯à°¤à±à°¤à±à°²à±‹ వారౠగà±à°‚à°ªà±à°²à±‹ à°ªà±à°°à°šà±à°°à°¿à°‚చలేరà±, మరియౠగà±à°‚à°ªà±à°•à°¿ చందాచేరలేరà±."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ à°ˆ à°—à±à°‚పౠనà±à°‚à°¡à°¿ నిరోధించకà±"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "à°ˆ à°—à±à°‚à°ªà±à°¨à±à°‚à°¡à°¿ à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించà±"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1646,7 +1787,7 @@ msgstr "à°—à±à°‚పౠఅలంకారం"
msgid ""
"Customize the way your group looks with a background image and a colour "
"palette of your choice."
-msgstr ""
+msgstr "నేపథà±à°¯ à°šà°¿à°¤à±à°°à°‚ మరియౠరంగà±à°² ఎంపికతో మీ à°—à±à°‚పౠఎలా కనిపించాలో మలచà±à°•à±‹à°‚à°¡à°¿."
#: actions/groupdesignsettings.php:266 actions/userdesignsettings.php:186
#: lib/designsettings.php:391 lib/designsettings.php:413
@@ -1668,11 +1809,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "మీ à°—à±à°‚à°ªà±à°•à°¿ మీరౠఒక à°šà°¿à°¹à±à°¨à°¾à°¨à±à°¨à°¿ à°Žà°•à±à°•à°¿à°‚చవచà±à°šà±. à°† ఫైలౠయొకà±à°• à°—à°°à°¿à°·à±à°  పరిమాణం %s."
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "à°šà°¿à°¹à±à°¨à°‚à°—à°¾ ఉండాలà±à°¸à°¿à°¨ à°šà°¤à±à°°à°¸à±à°¤à±à°° à°ªà±à°°à°¦à±‡à°¶à°¾à°¨à±à°¨à°¿ బొమà±à°® à°¨à±à°‚à°¡à°¿ à°Žà°‚à°šà±à°•à±‹à°‚à°¡à°¿."
@@ -1701,36 +1837,40 @@ msgstr "à°ˆ à°—à±à°‚à°ªà±à°²à±‹ వాడà±à°•à°°à±à°²à± జాబితా
#: actions/groupmembers.php:182 lib/groupnav.php:107
msgid "Admin"
-msgstr ""
+msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à±"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "నిరోధించà±"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°—à±à°‚à°ªà±à°•à°¿ à°’à°• నిరà±à°µà°¾à°¹à°•à±à°¨à°¿à°—à°¾ చేయి"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "నిరà±à°µà°¾à°¹à°•à±à°¨à±à°¨à°¿ చేయి"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరà±à°µà°¾à°¹à°•à±à°¨à±à°¨à°¿ చేయి"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s కాలరేఖ"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "%s యొకà±à°• మైకà±à°°à±‹à°¬à±à°²à°¾à°—à±"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "à°—à±à°‚à°ªà±à°²à±"
@@ -1754,7 +1894,7 @@ msgstr ""
"à°—à±à°‚పౠలోని సభà±à°¯à±à°²à°‚దరికీ సందేశాలని పంపించవచà±à°šà±. మీకౠనచà±à°šà°¿à°¨ à°—à±à°‚పౠకనబడలేదా? [దాని కోసం వెతకండి](%%"
"%%action.groupsearch%%%%) లేదా [మీరే కొతà±à°¤à°¦à°¿ సృషà±à°Ÿà°¿à°‚à°šà°‚à°¡à°¿!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "కొతà±à°¤ à°—à±à°‚à°ªà±à°¨à°¿ సృషà±à°Ÿà°¿à°‚à°šà±"
@@ -1795,7 +1935,7 @@ msgstr ""
#: actions/groupunblock.php:91
msgid "Only an admin can unblock group members."
-msgstr ""
+msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à± మాతà±à°°à°®à±‡ à°—à±à°‚పౠసభà±à°¯à±à°²à°ªà±ˆ నిరోధానà±à°¨à°¿ à°Žà°¤à±à°¤à°¿à°µà±‡à°¯à°—లరà±."
#: actions/groupunblock.php:95
msgid "User is not blocked from group."
@@ -1805,94 +1945,149 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°—à±à°‚పౠనà±à°‚à°¡à°¿ నిరో
msgid "Error removing the block."
msgstr "నిరోధానà±à°¨à°¿ తొలగించడంలో పొరపాటà±."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "IM అమరికలà±"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "IM à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ లేదà±."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "IM à°šà°¿à°°à±à°¨à°¾à°®à°¾"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤à°‚ నిరà±à°§à°¾à°°à°¿à°‚à°šà°¿à°¨ Jabber/GTalk à°šà°¿à°°à±à°¨à°¾à°®à°¾"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
"message with further instructions. (Did you add %s to your buddy list?)"
msgstr ""
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "IM à°šà°¿à°°à±à°¨à°¾à°®à°¾"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "IM à°…à°­à°¿à°°à±à°šà±à°²à±"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "à°…à°­à°¿à°°à±à°šà±à°²à± à°­à°¦à±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Jabber ID లేదà±."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr ""
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "సరైన Jabber à°à°¡à±€ కాదà±"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "à°ˆ Jabber ID మీకౠఇపà±à°ªà°Ÿà°¿à°•à±‡ ఉంది"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID ఇపà±à°ªà°Ÿà°¿à°•à±‡ వేరొకరికి ఉంది."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr ""
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "à°† IM à°šà°¿à°°à±à°¨à°¾à°®à°¾ సరైనది కాదà±."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "ఈమెయిలౠనిరà±à°§à°¾à°°à°£à°¨à°¿ తొలగించలేకà±à°¨à±à°¨à°¾à°‚."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "IM నిరà±à°§à°¾à°°à°£ à°°à°¦à±à°¦à°¯à°¿à°‚ది."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "ఇది మీ Jabber ID కాదà±"
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "à°† IM à°šà°¿à°°à±à°¨à°¾à°®à°¾à°¨à°¿ తొలగించాం."
+
#: actions/inbox.php:59
-#, fuzzy, php-format
+#, php-format
msgid "Inbox for %1$s - page %2$d"
-msgstr "%sà°•à°¿ వచà±à°šà°¿à°¨à°µà°¿"
+msgstr "%1$sà°•à°¿ వచà±à°šà°¿à°¨à°µà°¿ - %2$dà°µ పేజీ"
#: actions/inbox.php:62
#, php-format
@@ -1909,8 +2104,8 @@ msgstr "ఆహà±à°µà°¾à°¨à°¾à°²à°¨à°¿ అచేతనం చేసారà±."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "%sని ఉపయోగించమని ఇతర వాడà±à°•à°°à±à°²à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚చడానికి మీరౠపà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "sని ఉపయోగించమని ఇతర వాడà±à°•à°°à±à°²à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚చడానికి మీరౠపà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి."
#: actions/invite.php:72
#, php-format
@@ -1929,7 +2124,9 @@ msgstr "కొతà±à°¤ వాడà±à°•à°°à±à°²à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚à
msgid "You are already subscribed to these users:"
msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°ˆ వాడà±à°•à°°à±à°²à°•à± చందాచేరి ఉనà±à°¨à°¾à°°à±:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -1948,6 +2145,8 @@ msgid ""
"You will be notified when your invitees accept the invitation and register "
"on the site. Thanks for growing the community!"
msgstr ""
+"ఆహà±à°µà°¾à°¨à°¿à°¤à±à°²à± మీ ఆహà±à°µà°¾à°¨à°¾à°¨à±à°¨à°¿ అంగీకరించి సైటà±à°²à±‹ నమోదైనపà±à°ªà±à°¡à± మీకౠతెలియజేసà±à°¤à°¾à°®à±. ఇకà±à°•à°¡à°¿ à°ªà±à°°à°œà°¨à°¿ "
+"పెంచà±à°¤à±à°¨à±à°¨à°‚à°¦à±à°•à± ధనà±à°¯à°µà°¾à°¦à°¾à°²à±!"
#: actions/invite.php:162
msgid ""
@@ -1972,17 +2171,18 @@ msgstr "à°à°šà±à°›à°¿à°•à°‚à°—à°¾ ఆహà±à°µà°¾à°¨à°¾à°¨à°¿à°•à°¿ à°µà±à°¯à
#. TRANS: Send button for inviting friends
#: actions/invite.php:198
-#, fuzzy
msgctxt "BUTTON"
msgid "Send"
msgstr "పంపించà±"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%2$sలో చేరమని %1$s మిమà±à°®à°²à±à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚చారà±"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2012,6 +2212,29 @@ msgid ""
"\n"
"Sincerely, %2$s\n"
msgstr ""
+"%2$s (%3$s) లో వారితో చేరమని %1$s మిమà±à°®à°²à±à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚చారà±.\n"
+"\n"
+"%2$s అనేది మీకౠతెలిసిన మరియౠమీకౠఆసకà±à°¤à°¿ ఉనà±à°¨ à°µà±à°¯à°•à±à°¤à±à°²à°¤à±‹ à°Žà°ªà±à°ªà°Ÿà°¿à°•à°ªà±à°ªà±à°¡à± పరిచయంలో ఉండేదà±à°•à± "
+"వీలà±à°•à°²à±à°ªà°¿à°‚చే à°’à°• సూకà±à°·à±à°®-à°¬à±à°²à°¾à°—ింగౠసేవ.\n"
+"\n"
+"మీరౠకూడా మీ à°—à±à°°à°¿à°‚à°šà°¿, మీ ఆలోచనల à°—à±à°°à°¿à°‚à°šà°¿ లేదా మీ జీవితం à°—à±à°°à°¿à°‚à°šà°¿à°¨ విశేషాలనౠమీకౠతెలిసిన వారితో "
+"పంచà±à°•à±‹à°µà°šà±à°šà±. అలానే ఇది మీలాంటి ఆసకà±à°¤à±à°²à± కలిగిన కొతà±à°¤ à°µà±à°¯à°•à±à°¤à±à°²à°¨à°¿ à°•à°²à±à°¸à±à°•à±à°¨à±‡à°‚à°¦à±à°•à± గొపà±à°ª à°ªà±à°°à°¦à±‡à°¶à°‚.\n"
+"\n"
+"%1$s à°…à°¨à±à°¨à°¾à°°à±:\n"
+"\n"
+"%4$s\n"
+"\n"
+"%2$sలో %1$s యొకà±à°• à°ªà±à°°à±Šà°«à±ˆà°²à±à°¨à°¿ మీరౠఇకà±à°•à°¡ చూడవచà±à°šà±:\n"
+"\n"
+"%5$s\n"
+"\n"
+"మీరౠదీనà±à°¨à°¿ à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°¿ చూడాలనà±à°•à±à°‚టే, à°ˆ ఆహà±à°µà°¾à°¨à°¾à°¨à±à°¨à°¿ అంగీకరించడానికి à°ˆ à°•à±à°°à°¿à°‚à°¦ లంకెపై నొకà±à°•à°‚à°¡à°¿.\n"
+"\n"
+"%6$s\n"
+"\n"
+"కాదనà±à°•à±à°‚టే, à°ˆ సందేశానà±à°¨à°¿ పటà±à°Ÿà°¿à°‚à°šà±à°•à±‹à°•à°‚à°¡à°¿. మీ ఓపిక మరియౠసమయానికి ధనà±à°¯à°µà°¾à°¦à°¾à°²à±.\n"
+"\n"
+"వినమà±à°°à°¤à°¤à±‹, %2$s\n"
#: actions/joingroup.php:60
msgid "You must be logged in to join a group."
@@ -2022,7 +2245,9 @@ msgstr "à°—à±à°‚à°ªà±à°²à±à°²à±‹ చేరడానికి మీరౠప
msgid "No nickname or ID."
msgstr "పేరౠలేదà±."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s %2$s à°—à±à°‚à°ªà±à°²à±‹ చేరారà±"
@@ -2031,62 +2256,65 @@ msgstr "%1$s %2$s à°—à±à°‚à°ªà±à°²à±‹ చేరారà±"
msgid "You must be logged in to leave a group."
msgstr "à°—à±à°‚à°ªà±à°¨à°¿ వదిలివెళà±à°³à°¡à°¾à°¨à°¿à°•à°¿ మీరౠపà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "మీరౠఆ à°—à±à°‚à°ªà±à°²à±‹ సభà±à°¯à±à°²à± కాదà±."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%2$s à°—à±à°‚పౠనà±à°‚à°¡à°¿ %1$s వైదొలిగారà±"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "ఇపà±à°ªà°Ÿà°¿à°•à±‡ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా సంకేతపదం తపà±à°ªà±."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
-msgstr ""
+msgstr "వాడà±à°•à°°à°¿à°¨à°¿ అమరà±à°šà°¡à°‚లో పొరపాటà±. బహà±à°¶à°¾ మీకౠఅధీకరణ లేకపోవచà±à°šà±."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "సైటౠలోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "ననà±à°¨à± à°—à±à°°à±à°¤à±à°‚à°šà±à°•à±‹"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "భవిషà±à°¯à°¤à±à°¤à±à°²à±‹ ఆటోమెటిగà±à°—à°¾ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±; బయటి à°•à°‚à°ªà±à°¯à±‚à°°à±à°² కొరకౠకాదà±!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "మీ సంకేతపదం మరà±à°šà°¿à°ªà±‹à°¯à°¾à°°à°¾?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr ""
"à°­à°¦à±à°°à°¤à°¾ కారణాల దృషà±à°Ÿà±à°¯à°¾, అమరికలౠమారà±à°šà±‡ à°®à±à°‚దౠమీ వాడà±à°•à°°à°¿ పేరà±à°¨à°¿ మరియౠసంకేతపదానà±à°¨à°¿ మరోసారి ఇవà±à°µà°‚à°¡à°¿."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "మీ వాడà±à°•à°°à°¿à°ªà±‡à°°à± మరియౠసంకేతపదాలతో à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
-msgstr ""
-"మీ వాడà±à°•à°°à°¿à°ªà±‡à°°à± మరియౠసంకేతపదాలతో à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿. మీకౠఇంకా వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా? కొతà±à°¤ ఖాతాని [నమోదà±à°šà±‡à°¸à±à°•à±‹à°‚à°¡à°¿]"
-"(%%action.register%%)."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
+msgstr "మీకౠఇంకా వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా? కొతà±à°¤ ఖాతాని [నమోదà±à°šà±‡à°¸à±à°•à±‹à°‚à°¡à°¿](%%action.register%%)."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2103,13 +2331,13 @@ msgid "Can't get membership record for %1$s in group %2$s."
msgstr "వాడà±à°•à°°à°¿ %sని %s à°—à±à°‚పౠనà±à°‚à°¡à°¿ తొలగించలేకపోయాం"
#: actions/makeadmin.php:146
-#, fuzzy, php-format
+#, php-format
msgid "Can't make %1$s an admin for group %2$s."
-msgstr "%s ఇపà±à°ªà°Ÿà°¿à°•à±‡ \"%s\" à°—à±à°‚పౠయొకà±à°• à°’à°• నిరà±à°µà°¾à°•à±à°²à±."
+msgstr "%1$sని %2$s à°—à±à°‚పౠయొకà±à°• నిరà±à°µà°¾à°¹à°•à±à°¨à±à°¨à°¿ చేయలేకపోయాం."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ à°¸à±à°¥à°¿à°¤à°¿ à°à°®à±€ లేదà±"
+msgid "No current status."
+msgstr "à°ªà±à°°à°¸à±à°¤à±à°¤ à°¸à±à°¥à°¿à°¤à°¿ à°à°®à±€ లేదà±."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2128,9 +2356,8 @@ msgid "Source URL is required."
msgstr ""
#: actions/newapplication.php:258 actions/newapplication.php:267
-#, fuzzy
msgid "Could not create application."
-msgstr "మారà±à°ªà±‡à°°à±à°²à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
+msgstr "ఉపకరణానà±à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
#: actions/newgroup.php:53
msgid "New group"
@@ -2144,20 +2371,20 @@ msgstr "కొతà±à°¤ à°—à±à°‚à°ªà±à°¨à°¿ సృషà±à°Ÿà°¿à°‚డానిà
msgid "New message"
msgstr "కొతà±à°¤ సందేశం"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "à°ˆ వాడà±à°•à°°à°¿à°•à°¿ మీరౠసందేశానà±à°¨à°¿ పంపించలేరà±."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "విషయం లేదà±!"
#: actions/newmessage.php:158
msgid "No recipient specified."
-msgstr ""
+msgstr "ఎవరికి పంపించాలో పేరà±à°•à±Šà°¨à°²à±‡à°¦à±."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "మీకౠమీరే సందేశానà±à°¨à°¿ పంపà±à°•à±‹à°•à°‚à°¡à°¿; దాని బదà±à°²à± మీలో మీరే మెలà±à°²à°—à°¾ చెపà±à°ªà±à°•à±‹à°‚à°¡à°¿."
@@ -2167,11 +2394,11 @@ msgid "Message sent"
msgstr "సందేశానà±à°¨à°¿ పంపించాం"
#: actions/newmessage.php:185
-#, fuzzy, php-format
+#, php-format
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:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "అజాకà±à°¸à± పొరపాటà±"
@@ -2179,7 +2406,7 @@ msgstr "అజాకà±à°¸à± పొరపాటà±"
msgid "New notice"
msgstr "కొతà±à°¤ సందేశం"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
#, fuzzy
msgid "Notice posted"
msgstr "సందేశాలà±"
@@ -2198,7 +2425,7 @@ msgid "Text search"
msgstr "పాఠà±à°¯ à°…à°¨à±à°µà±‡à°·à°£"
#: actions/noticesearch.php:91
-#, fuzzy, php-format
+#, php-format
msgid "Search results for \"%1$s\" on %2$s"
msgstr "%2$sలో \"%1$s\"కై à°…à°¨à±à°µà±‡à°·à°£ ఫలితాలà±"
@@ -2208,6 +2435,7 @@ msgid ""
"Be the first to [post on this topic](%%%%action.newnotice%%%%?"
"status_textarea=%s)!"
msgstr ""
+"[à°ˆ విషయంపై](%%%%action.newnotice%%%%?status_textarea=%s) à°µà±à°°à°¾à°¸à±‡ మొదటివారౠమీరే à°…à°µà±à°µà°‚à°¡à°¿!"
#: actions/noticesearch.php:124
#, php-format
@@ -2230,7 +2458,7 @@ msgstr "\"%s\"తో సరిపోలే à°…à°¨à±à°¨à°¿ తాజాకరణ
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2256,7 +2484,7 @@ msgstr "మీరౠనమోదౠచేసివà±à°¨à±à°¨ ఉపకరణ
#: actions/oauthappssettings.php:135
#, php-format
msgid "You have not registered any applications yet."
-msgstr ""
+msgstr "మీరౠఇంకా ఠఉపకరణానà±à°¨à±€ నమోదౠచేసà±à°•à±‹à°²à±‡à°¦à±."
#: actions/oauthconnectionssettings.php:72
msgid "Connected applications"
@@ -2264,44 +2492,49 @@ msgstr "సంధానిత ఉపకరణాలà±"
#: actions/oauthconnectionssettings.php:83
msgid "You have allowed the following applications to access you account."
-msgstr ""
+msgstr "మీ ఖాతాని à°ªà±à°°à°¾à°ªà°¿à°‚చడానికి మీరౠఈ à°•à±à°°à°¿à°‚ది ఉపకరణాలకి à°…à°¨à±à°®à°¤à°¿à°¨à°¿à°šà±à°šà°¾à°°à±."
#: actions/oauthconnectionssettings.php:175
msgid "You are not a user of that application."
msgstr "మీరౠఆ ఉపకరణం యొకà±à°• వాడà±à°•à°°à°¿ కాదà±."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
-msgstr ""
+msgstr "మీ ఖాతాని ఉపయోగించà±à°•à±‹à°¡à°¾à°¨à°¿à°•à°¿ మీరౠఠఉపకరణానà±à°¨à±€ అధీకరించలేదà±."
#: actions/oauthconnectionssettings.php:211
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "నోటీసà±à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
-msgstr ""
+msgstr "%2$sలో %1$s యొకà±à°• à°¸à±à°¥à°¿à°¤à°¿"
-#: actions/oembed.php:157
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "విషయ రకం "
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "మాతà±à°°à°®à±‡ "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2409,7 +2642,7 @@ msgid "6 or more characters"
msgstr "6 లేదా అంతకంటే à°Žà°•à±à°•à±à°µ à°…à°•à±à°·à°°à°¾à°²à±"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "నిరà±à°¥à°¾à°°à°¿à°‚à°šà±"
@@ -2421,11 +2654,11 @@ msgstr "పై సంకేతపదం వలెనే"
msgid "Change"
msgstr "మారà±à°šà±"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "సంకేతపదం తపà±à°ªà°¨à°¿à°¸à°°à°¿à°—à°¾ 6 లేదా అంతకంటే à°Žà°•à±à°•à±à°µ à°…à°•à±à°·à°°à°¾à°²à±à°‚డాలి."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "సంకేతపదాలౠసరిపోలలేదà±."
@@ -2437,7 +2670,7 @@ msgstr "పాత సంకేతపదం తపà±à°ªà±"
msgid "Error saving user; invalid."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±: సరికాదà±."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "కొతà±à°¤ సంకేతపదానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°²à±‡à°®à±."
@@ -2446,9 +2679,9 @@ msgid "Password saved."
msgstr "సంకేతపదం à°­à°¦à±à°°à°®à°¯à±à°¯à°¿à°‚ది."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
-msgstr ""
+msgstr "à°¤à±à°°à±‹à°µà°²à±"
#: actions/pathsadminpanel.php:70
msgid "Path and server settings for this StatusNet site."
@@ -2456,23 +2689,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "హోమౠపేజీ URL సరైనది కాదà±."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "హోమౠపేజీ URL సరైనది కాదà±."
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "నేపథà±à°¯à°¾à°² సంచయం"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "హోమౠపేజీ URL సరైనది కాదà±."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2584,11 +2817,11 @@ msgstr "à°Žà°²à±à°²à°ªà±à°ªà±à°¡à±‚"
#: actions/pathsadminpanel.php:329
msgid "Use SSL"
-msgstr ""
+msgstr "SSLని ఉపయోగించà±"
#: actions/pathsadminpanel.php:330
msgid "When to use SSL"
-msgstr ""
+msgstr "SSLని à°Žà°ªà±à°ªà±à°¡à± ఉపయోగించాలి"
#: actions/pathsadminpanel.php:335
#, fuzzy
@@ -2617,18 +2850,19 @@ msgstr ""
msgid "People search"
msgstr "à°µà±à°¯à°•à±à°¤à±à°² à°…à°¨à±à°µà±‡à°·à°£"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "సరైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ కాదà±:"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "%s యొకà±à°• మైకà±à°°à±‹à°¬à±à°²à°¾à°—à±"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "సందేశపౠవిషయం సరైనది కాదà±"
#: actions/postnotice.php:101
@@ -2655,42 +2889,43 @@ msgstr "à°ªà±à°°à±Šà°«à±ˆà°²à± సమాచారం"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 à°šà°¿à°¨à±à°¨à°¬à°¡à°¿ à°…à°•à±à°·à°°à°¾à°²à± లేదా అంకెలà±, విరామచిహà±à°¨à°¾à°²à± మరియౠఖాళీలౠతపà±à°ª"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "పూరà±à°¤à°¿ పేరà±"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "హోమౠపేజీ"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "మీ హోమౠపేజీ, à°¬à±à°²à°¾à°—à±, లేదా వేరే సేటà±à°²à±‹à°¨à°¿ మీ à°ªà±à°°à±Šà°«à±ˆà°²à± యొకà±à°• à°šà°¿à°°à±à°¨à°¾à°®à°¾"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "మీ à°—à±à°°à°¿à°‚à°šà°¿ మరియౠమీ ఆసకà±à°¤à±à°² à°—à±à°°à°¿à°‚à°šà°¿ %d à°…à°•à±à°·à°°à°¾à°²à±à°²à±‹ చెపà±à°ªà°‚à°¡à°¿"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "మీ à°—à±à°°à°¿à°‚à°šà°¿ మరియౠమీ ఆసకà±à°¤à±à°² à°—à±à°°à°¿à°‚à°šà°¿ చెపà±à°ªà°‚à°¡à°¿"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "à°¸à±à°µà°ªà°°à°¿à°šà°¯à°‚"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "à°ªà±à°°à°¾à°‚తం"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "మీరౠఎకà±à°•à°¡ à°¨à±à°‚à°¡à°¿, \"నగరం, రాషà±à°Ÿà±à°°à°‚ (లేదా à°ªà±à°°à°¾à°‚తం), దేశం\""
@@ -2700,7 +2935,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à±"
@@ -2730,7 +2965,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "à°¸à±à°µà°ªà°°à°¿à°šà°¯à°‚ చాలా పెదà±à°¦à°—à°¾ ఉంది (%d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚)."
@@ -2772,7 +3007,7 @@ msgstr "అమరికలౠభదà±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2789,19 +3024,16 @@ msgid "Public timeline"
msgstr "à°ªà±à°°à°œà°¾ కాలరేఖ"
#: actions/public.php:160
-#, fuzzy
msgid "Public Stream Feed (RSS 1.0)"
-msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడà±"
+msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడౠ(RSS 1.0)"
#: actions/public.php:164
-#, fuzzy
msgid "Public Stream Feed (RSS 2.0)"
-msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడà±"
+msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడౠ(RSS 2.0)"
#: actions/public.php:168
-#, fuzzy
msgid "Public Stream Feed (Atom)"
-msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడà±"
+msgstr "à°ªà±à°°à°œà°¾ వాహిని ఫీడౠ(ఆటమà±)"
#: actions/public.php:188
#, php-format
@@ -2818,7 +3050,7 @@ msgstr ""
#, php-format
msgid ""
"Why not [register an account](%%action.register%%) and be the first to post!"
-msgstr ""
+msgstr "[ఖాతా నమోదౠచేసà±à°•à±à°¨à°¿](%%action.register%%) మొదటగా à°µà±à°°à°¾à°¸à±‡à°¦à°¿ మీరే à°Žà°‚à°¦à±à°•à± కాకూడదà±!"
#: actions/public.php:242
#, php-format
@@ -2895,7 +3127,7 @@ msgstr "à°ˆ నిరà±à°§à°¾à°°à°£ సంకేతం చాలా పాతà°
#: actions/recoverpassword.php:111
msgid "Could not update user with confirmed email address."
-msgstr ""
+msgstr "నిరà±à°§à°¾à°°à°¿à°¤ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¤à±‹ వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకపోయాం."
#: actions/recoverpassword.php:152
msgid ""
@@ -2932,7 +3164,7 @@ msgstr ""
msgid "Recover password"
msgstr ""
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr ""
@@ -2952,122 +3184,140 @@ msgstr ""
msgid "Enter a nickname or email address."
msgstr "పేరౠలేదా ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ ఇవà±à°µà°‚à°¡à°¿."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "à°† ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ లేదా వాడà±à°•à°°à°¿à°ªà±‡à°°à±à°¤à±‹ వాడà±à°•à°°à±à°²à±†à°µà°°à±‚ లేరà±."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "à°ˆ వాడà±à°•à°°à°¿à°•à±ˆ నమోదైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°²à± à°à°®à±€ లేవà±."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "à°šà°¿à°°à±à°¨à°¾à°®à°¾ నిరà±à°§à°¾à°°à°£à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr "మీ సంకేతపదానà±à°¨à°¿ తిరిగి పొందడానికై అవసరమైన సూచనలని మీ ఖాతాతో నమోదైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°•à°¿ పంపించాం."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "సంకేతపదం 6 లేదా అంతకంటే à°Žà°•à±à°•à°µ à°…à°•à±à°·à°°à°¾à°²à±à°‚డాలి."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "సంకేతపదం మరియౠనిరà±à°§à°¾à°°à°£ సరిపోలేదà±."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr ""
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "మీ కొతà±à°¤ సంకేతపదం à°­à°¦à±à°°à°®à±ˆà°‚ది. మీరౠఇపà±à°ªà±à°¡à± లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "à°•à±à°·à°®à°¿à°‚à°šà°‚à°¡à°¿, ఆహà±à°µà°¾à°¨à°¿à°¤à±à°²à± మాతà±à°°à°®à±‡ నమోదà±à°•à°¾à°—లరà±."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "à°•à±à°·à°®à°¿à°‚à°šà°‚à°¡à°¿, తపà±à°ªà± ఆహà±à°µà°¾à°¨ సంకేతం."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "నమోదౠవిజయవంతం"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "నమోదà±"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "నమోదౠఅనà±à°®à°¤à°¿à°‚చబడదà±."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "à°ˆ లైసెనà±à°¸à±à°•à°¿ అంగీకరించకపోతే మీరౠనమోదà±à°šà±‡à°¸à±à°•à±‹à°²à±‡à°°à±."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ ఇపà±à°ªà°Ÿà°¿à°•à±‡ ఉంది."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à± లేదా సంకేతపదం తపà±à°ªà±."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1-64 à°šà°¿à°¨à±à°¨à°¬à°¡à°¿ à°…à°•à±à°·à°°à°¾à°²à± లేదా అంకెలà±, విరామ à°šà°¿à°¹à±à°¨à°¾à°²à± లేదా ఖాళీలౠలేకà±à°‚à°¡à°¾. తపà±à°ªà°¨à°¿à°¸à°°à°¿."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 లేదా అంతకంటే à°Žà°•à±à°•à±à°µ à°…à°•à±à°·à°°à°¾à°²à±. తపà±à°ªà°¨à°¿à°¸à°°à°¿."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "పై సంకేతపదం మరోసారి. తపà±à°ªà°¨à°¿à°¸à°°à°¿."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "ఈమెయిలà±"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "తాజా విశేషాలà±, à°ªà±à°°à°•à°Ÿà°¨à°²à±, మరియౠసంకేతపదం పోయినపà±à°ªà±à°¡à± మాతà±à°°à°®à±‡ ఉపయోగిసà±à°¤à°¾à°‚."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "పొడà±à°—ాటి పేరà±, మీ \"అసలà±\" పేరైతే మంచిది"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "నా పాఠà±à°¯à°‚ మరియౠఫైళà±à°³à± లభà±à°¯à°®à°¯à±à°¯à±‡ లైసెనà±à°¸à± "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "à°•à±à°°à°¿à°¯à±‡à°Ÿà°¿à°µà± కామనà±à°¸à± à°…à°Ÿà±à°°à°¿à°¬à±à°¯à±‚షనౠ3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
-msgstr " à°ˆ అంతరంగిక భోగటà±à°Ÿà°¾ తపà±à°ª: సంకేతపదం, ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾, IM à°šà°¿à°°à±à°¨à°¾à°®à°¾, మరియౠఫోనౠనంబరà±."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
+msgstr ""
+"నా పాఠà±à°¯à°‚ మరియౠదసà±à°¤à±à°°à°¾à°²à± %s à°•à±à°°à°¿à°‚à°¦ లభà±à°¯à°‚, à°ˆ అంతరంగిక భోగటà±à°Ÿà°¾ తపà±à°ª: సంకేతపదం, ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾, IM "
+"à°šà°¿à°°à±à°¨à°¾à°®à°¾, మరియౠఫోనౠనంబరà±."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3098,11 +3348,13 @@ msgstr ""
"\n"
"నమోదà±à°šà±‡à°¸à±à°•à±à°¨à±à°¨à°‚à°¦à±à°•à± కృతజà±à°žà°¤à°²à± మరియౠఈ సేవని ఉపయోగిసà±à°¤à±‚ మీరౠఆనందిసà±à°¤à°¾à°°à°¨à°¿ మేం ఆశిసà±à°¤à±à°¨à±à°¨à°¾à°‚."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
msgstr ""
+"(మీ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¨à°¿ ఎలా నిరà±à°§à°¾à°°à°¿à°‚చాలో తెలిపే సూచనలతో à°’à°• సందేశం మీరౠఈమెయిలౠదà±à°µà°¾à°°à°¾ మరి కొదà±à°¦à°¿à°¸à±‡à°ªà°Ÿà±à°²à±‹à°¨à±‡ "
+"à°…à°‚à°¦à±à°¤à±à°‚ది.)"
#: actions/remotesubscribe.php:98
#, php-format
@@ -3111,10 +3363,13 @@ msgid ""
"register%%) a new account. If you already have an account on a [compatible "
"microblogging site](%%doc.openmublog%%), enter your profile URL below."
msgstr ""
+"చందా చేరడానికి, మీరౠ[à°ªà±à°°à°µà±‡à°¶à°¿à°‚చవచà±à°šà±](%%action.login%%), లేదా కొతà±à°¤ ఖాతాని [నమోదà±à°šà±‡à°¸à±à°•à±‹à°µà°šà±à°šà±](%%"
+"action.register%%). ఒకవేళ మీకౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°à°¦à±ˆà°¨à°¾ [పొసగే మైకà±à°°à±‹à°¬à±à°²à°¾à°—ింగౠసైటà±à°²à±‹](%%doc.openmublog%"
+"%) ఖాతా ఉంటే, మీ à°ªà±à°°à±Šà°«à±ˆà°²à± à°šà°¿à°°à±à°¨à°¾à°®à°¾à°¨à°¿ à°•à±à°°à°¿à°‚à°¦ ఇవà±à°µà°‚à°¡à°¿."
#: actions/remotesubscribe.php:112
msgid "Remote subscribe"
-msgstr ""
+msgstr "à°¸à±à°¦à±‚à°° చందా"
#: actions/remotesubscribe.php:124
#, fuzzy
@@ -3127,7 +3382,7 @@ msgstr "వాడà±à°•à°°à°¿ పేరà±"
#: actions/remotesubscribe.php:130
msgid "Nickname of the user you want to follow"
-msgstr ""
+msgstr "మీరౠఅనà±à°¸à°°à°¿à°‚చాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨ వాడà±à°•à°°à°¿ యొకà±à°• à°®à±à°¦à±à°¦à±à°ªà±‡à°°à±"
#: actions/remotesubscribe.php:133
msgid "Profile URL"
@@ -3138,7 +3393,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "చందాచేరà±"
@@ -3152,7 +3407,7 @@ msgstr ""
#: actions/remotesubscribe.php:176
msgid "That’s a local profile! Login to subscribe."
-msgstr ""
+msgstr "అది à°¸à±à°¥à°¾à°¨à°¿à°• à°ªà±à°°à±Šà°«à±ˆà°²à±! చందాచేరడానికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿."
#: actions/remotesubscribe.php:183
msgid "Couldn’t get a request token."
@@ -3160,7 +3415,7 @@ msgstr ""
#: actions/repeat.php:57
msgid "Only logged-in users can repeat notices."
-msgstr ""
+msgstr "కేవలం à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿à°¨ వాడà±à°•à°°à±à°²à± మాతà±à°°à°®à±‡ నోటీసà±à°²à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చగలరà±."
#: actions/repeat.php:64 actions/repeat.php:71
#, fuzzy
@@ -3168,16 +3423,14 @@ msgid "No notice specified."
msgstr "కొతà±à°¤ సందేశం"
#: actions/repeat.php:76
-#, fuzzy
msgid "You can't repeat your own notice."
-msgstr "à°ˆ లైసెనà±à°¸à±à°•à°¿ అంగీకరించకపోతే మీరౠనమోదà±à°šà±‡à°¸à±à°•à±‹à°²à±‡à°°à±."
+msgstr "మీ నోటీసà±à°¨à°¿ మీరే à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చలేరà±."
#: actions/repeat.php:90
-#, fuzzy
msgid "You already repeated that notice."
-msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించారà±."
+msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చారà±."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "సృషà±à°Ÿà°¿à°¤à°‚"
@@ -3194,31 +3447,31 @@ msgid "Replies to %s"
msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
#: actions/replies.php:128
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s, page %2$d"
-msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
+msgstr "%1$sà°•à°¿ à°¸à±à°ªà°‚దనలà±, %2$dà°µ పేజీ"
#: actions/replies.php:145
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 1.0)"
-msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
+msgstr "%s కొరకౠసà±à°ªà°‚దనల ఫీడౠ(RSS 1.0)"
#: actions/replies.php:152
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (RSS 2.0)"
-msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
+msgstr "%s కొరకౠసà±à°ªà°‚దనల ఫీడౠ(RSS 2.0)"
#: actions/replies.php:159
-#, fuzzy, php-format
+#, php-format
msgid "Replies feed for %s (Atom)"
-msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
+msgstr "%s కొరకౠసà±à°ªà°‚దనల ఫీడౠ(ఆటమà±)"
#: actions/replies.php:199
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
-msgstr "ఇది %s మరియౠమితà±à°°à±à°² కాలరేఖ కానీ ఇంకా ఎవరూ à°à°®à±€ రాయలేదà±."
+"notice to them yet."
+msgstr "ఇది %1$sà°•à°¿ వచà±à°šà°¿à°¨ à°¸à±à°ªà°‚దనలని చూపించే కాలరేఖ కానీ %2$s దృషà±à°Ÿà°¿à°•à°¿ ఇంకా ఎవరూ à°à°®à±€ పంపించలేదà±."
#: actions/replies.php:204
#, php-format
@@ -3230,16 +3483,17 @@ msgstr ""
"(%%action.groups%%)."
#: actions/replies.php:206
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
+"[à°ˆ విషయంపై](%%%%action.newnotice%%%%?status_textarea=%s) à°µà±à°°à°¾à°¸à±‡ మొదటివారౠమీరే à°…à°µà±à°µà°‚à°¡à°¿!"
#: actions/repliesrss.php:72
-#, fuzzy, php-format
+#, php-format
msgid "Replies to %1$s on %2$s!"
-msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
+msgstr "%2$sలో %1$sà°•à°¿ à°¸à±à°ªà°‚దనలà±!"
#: actions/revokerole.php:75
#, fuzzy
@@ -3247,11 +3501,10 @@ msgid "You cannot revoke user roles on this site."
msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±!"
#: actions/revokerole.php:82
-#, fuzzy
msgid "User doesn't have this role."
-msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ˆ పాతà±à°° లేదà±."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "à°¸à±à°Ÿà±‡à°Ÿà°¸à±â€Œà°¨à±†à°Ÿà±"
@@ -3267,7 +3520,7 @@ msgstr "వాడà±à°•à°°à°¿à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°—à±à°‚à°ªà±à°¨à
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3298,41 +3551,44 @@ msgid "Save site settings"
msgstr "సైటౠఅమరికలనౠభదà±à°°à°ªà°°à°šà±"
#: actions/showapplication.php:82
-#, fuzzy
msgid "You must be logged in to view an application."
-msgstr "à°—à±à°‚à°ªà±à°¨à°¿ వదిలివెళà±à°³à°¡à°¾à°¨à°¿à°•à°¿ మీరౠపà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి."
+msgstr "ఉపకరణాలని చూడడానికి మీరౠతపà±à°ªà°¨à°¿à°¸à°°à°¿à°—à°¾ à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°¿ ఉండాలి."
#: actions/showapplication.php:157
msgid "Application profile"
-msgstr ""
+msgstr "ఉపకరణ à°ªà±à°°à°µà°°"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "à°ªà±à°°à°¤à±€à°•à°‚"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "పేరà±"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "సంసà±à°§"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "వివరణ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "గణాంకాలà±"
#: actions/showapplication.php:203
#, php-format
msgid "Created by %1$s - %2$s access by default - %3$d users"
-msgstr ""
+msgstr "సృషà±à°Ÿà°¿à°‚చినది %1$s - à°…à°ªà±à°°à°®à±‡à°¯ à°…à°‚à°¦à±à°¬à°¾à°Ÿà± %2$s - %3$d వాడà±à°•à°°à±à°²à±"
#: actions/showapplication.php:213
msgid "Application actions"
@@ -3393,9 +3649,9 @@ msgid "Feed for favorites of %s (RSS 1.0)"
msgstr "%s యొకà±à°• మితà±à°°à±à°² ఫీడà±"
#: actions/showfavorites.php:178
-#, fuzzy, php-format
+#, php-format
msgid "Feed for favorites of %s (RSS 2.0)"
-msgstr "%s యొకà±à°• మితà±à°°à±à°² ఫీడà±"
+msgstr "%s యొకà±à°• ఇషà±à°Ÿà°¾à°‚శాల ఫీడౠ(RSS 2.0)"
#: actions/showfavorites.php:185
#, php-format
@@ -3411,17 +3667,19 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
-#, php-format
+#, fuzzy, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
+"%sà°•à°¿ చందాదారà±à°²à± ఎవరూ లేరà±. [à°’à°• ఖాతాని నమోదౠచేసà±à°•à±à°¨à°¿](%%%%action.register%%%%) మీరౠ"
+"à°Žà°‚à°¦à±à°•à± మొదటి చందాదారౠకాకూడదà±?"
#: actions/showfavorites.php:243
msgid "This is a way to share what you like."
@@ -3433,71 +3691,71 @@ msgid "%s group"
msgstr "%s à°—à±à°‚à°ªà±"
#: actions/showgroup.php:84
-#, fuzzy, php-format
+#, php-format
msgid "%1$s group, page %2$d"
-msgstr "%1$s à°—à±à°‚పౠసభà±à°¯à±à°²à±, పేజీ %2$d"
+msgstr "%1$s à°—à±à°‚పౠ, %2$dà°µ పేజీ"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "à°—à±à°‚పౠపà±à°°à±Šà°«à±ˆà°²à±"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "గమనిక"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "మారà±à°ªà±‡à°°à±à°²à±"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "à°—à±à°‚పౠచరà±à°¯à°²à±"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "%s యొకà±à°• సందేశమà±à°² ఫీడà±"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "%s à°—à±à°‚à°ªà±"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "సభà±à°¯à±à°²à±"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(à°à°®à±€à°²à±‡à°¦à±)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "అందరౠసభà±à°¯à±à°²à±‚"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "సృషà±à°Ÿà°¿à°¤à°‚"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3506,8 +3764,14 @@ msgid ""
"their life and interests. [Join now](%%%%action.register%%%%) to become part "
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
+"**%s** అనేది [à°¸à±à°Ÿà±‡à°Ÿà°¸à±â€Œà°¨à±†à°Ÿà±](http://status.net/) అనే à°¸à±à°µà±‡à°šà±à°›à°¾ ఉపకరణ అధారిత [సూకà±à°·à±à°®-à°¬à±à°²à°¾à°—à°¿à°‚à°—à±]"
+"(http://en.wikipedia.org/wiki/Micro-blogging) సేవ అయిన %%%%site.name%%%%లో ఒక "
+"వాడà±à°•à°°à°¿ à°—à±à°‚à°ªà±.\n"
+"దీని సభà±à°¯à±à°²à± వారి జీవితం మరియౠఆసకà±à°¤à±à°² à°—à±à°°à°¿à°‚à°šà°¿ à°šà°¿à°¨à±à°¨ సందేశాలని పంచà±à°•à±à°‚టారà±. à°ˆ à°—à±à°‚పౠమరియౠఇంకా "
+"చాల వాటిలో భాగసà±à°¤à±à°²à°µà±à°µà°¡à°¾à°¨à°¿à°•à°¿ [ఇపà±à°ªà±à°¡à±‡ చేరండి](%%%%action.register%%%%)! ([మరింత చదవండి](%%%%"
+"doc.help%%%%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3516,7 +3780,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à±"
@@ -3548,9 +3812,9 @@ msgid " tagged %s"
msgstr ""
#: actions/showstream.php:79
-#, fuzzy, php-format
+#, php-format
msgid "%1$s, page %2$d"
-msgstr "%1$s మరియౠమితà±à°°à±à°²à±, పేజీ %2$d"
+msgstr "%1$s, %2$dవ పేజీ"
#: actions/showstream.php:122
#, fuzzy, php-format
@@ -3578,9 +3842,9 @@ msgid "FOAF for %s"
msgstr ""
#: actions/showstream.php:200
-#, fuzzy, php-format
+#, php-format
msgid "This is the timeline for %1$s but %2$s hasn't posted anything yet."
-msgstr "ఇది %s మరియౠమితà±à°°à±à°² కాలరేఖ కానీ ఇంకా ఎవరూ à°à°®à±€ రాయలేదà±."
+msgstr "ఇది %1$s యొకà±à°• కాలరేఖ కానీ %2$s ఇంకా à°à°®à±€ రాయలేదà±."
#: actions/showstream.php:205
msgid ""
@@ -3590,11 +3854,12 @@ msgstr ""
"ఈమధà±à°¯à±‡ à°à°¦à±ˆà°¨à°¾ ఆసకà±à°¤à°¿à°•à°°à°®à±ˆà°¨à°¦à°¿ చూసారా? మీరౠఇంకా నోటీసà±à°²à±‡à°®à±€ à°µà±à°°à°¾à°¯à°²à±‡à°¦à±, మొదలà±à°ªà±†à°Ÿà±à°Ÿà°¡à°¾à°¨à°¿à°•à°¿ ఇదే మంచి సమయం :)"
#: actions/showstream.php:207
-#, php-format
+#, fuzzy, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
+"[à°ˆ విషయంపై](%%%%action.newnotice%%%%?status_textarea=%s) à°µà±à°°à°¾à°¸à±‡ మొదటివారౠమీరే à°…à°µà±à°µà°‚à°¡à°¿!"
#: actions/showstream.php:243
#, php-format
@@ -3628,9 +3893,8 @@ msgid "User is already silenced."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°—à±à°‚à°ªà±à°¨à±à°‚à°¡à°¿ నిరోధించారà±."
#: actions/siteadminpanel.php:69
-#, fuzzy
msgid "Basic settings for this StatusNet site"
-msgstr "à°ˆ à°¸à±à°Ÿà±‡à°Ÿà°¸à±&zwnj;నెటౠసైటà±à°•à°¿ à°ªà±à°°à°¾à°§à°®à°¿à°• అమరికలà±."
+msgstr "à°ˆ à°¸à±à°Ÿà±‡à°Ÿà°¸à±&zwnj;నెటౠసైటà±à°•à°¿ à°ªà±à°°à°¾à°§à°®à°¿à°• అమరికలà±"
#: actions/siteadminpanel.php:133
msgid "Site name must have non-zero length."
@@ -3646,11 +3910,11 @@ msgid "Unknown language \"%s\"."
msgstr "à°—à±à°°à±à°¤à± తెలియని భాష \"%s\"."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "కనిషà±à°  పాఠà±à°¯ పరిమితి 140 à°…à°•à±à°·à°°à°¾à°²à±."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "కనిషà±à°  పాఠà±à°¯ పరిమితి 0 (అపరిమితం)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3667,7 +3931,7 @@ msgstr "మీ సైటౠయొకà±à°• పేరà±, ఇలా \"మీకà
#: actions/siteadminpanel.php:229
msgid "Brought by"
-msgstr ""
+msgstr "అందిసà±à°¤à±à°¨à±à°¨à°µà°¾à°°à±"
#: actions/siteadminpanel.php:230
msgid "Text used for credits link in footer of each page"
@@ -3675,16 +3939,15 @@ msgstr ""
#: actions/siteadminpanel.php:234
msgid "Brought by URL"
-msgstr ""
+msgstr "అందిసà±à°¤à±à°¨à±à°¨à°µà°¾à°°à°¿ URL"
#: actions/siteadminpanel.php:235
msgid "URL used for credits link in footer of each page"
msgstr ""
#: actions/siteadminpanel.php:239
-#, fuzzy
msgid "Contact email address for your site"
-msgstr "à°ˆ వాడà±à°•à°°à°¿à°•à±ˆ నమోదైన ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°²à± à°à°®à±€ లేవà±."
+msgstr "మీ సైటà±à°•à°¿ సంపà±à°°à°¦à°¿à°‚à°ªà±à°² ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾"
#: actions/siteadminpanel.php:245
msgid "Local"
@@ -3699,13 +3962,12 @@ msgid "Default timezone for the site; usually UTC."
msgstr ""
#: actions/siteadminpanel.php:262
-#, fuzzy
msgid "Default language"
-msgstr "à°…à°ªà±à°°à°®à±‡à°¯ సైటౠభాష"
+msgstr "à°…à°ªà±à°°à°®à±‡à°¯ భాష"
#: actions/siteadminpanel.php:263
msgid "Site language when autodetection from browser settings is not available"
-msgstr ""
+msgstr "విహారిణి అమరికల à°¨à±à°‚à°¡à°¿ భాషని à°¸à±à°µà°¯à°‚చాలకంగా పొందలేకపోయినపà±à°ªà±à°¡à± ఉపయోగించే సైటౠభాష"
#: actions/siteadminpanel.php:271
msgid "Limits"
@@ -3725,10 +3987,9 @@ msgstr ""
#: actions/siteadminpanel.php:278
msgid "How long users must wait (in seconds) to post the same thing again."
-msgstr ""
+msgstr "అదే విషయానà±à°¨à°¿ మళà±à°³à±€ టపా చేయడానికి వాడà±à°•à°°à±à°²à± à°Žà°‚à°¤ సమయం (à°•à±à°·à°£à°¾à°²à±à°²à±‹) వేచివà±à°‚డాలి."
#: actions/sitenoticeadminpanel.php:56
-#, fuzzy
msgid "Site Notice"
msgstr "సైటౠగమనిక"
@@ -3743,120 +4004,176 @@ msgid "Unable to save site notice."
msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr ""
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "సైటà±-వారీ నోటీసà±à°•à°¿ à°—à°°à°¿à°·à±à°  పొడవౠ255 à°…à°•à±à°·à°°à°¾à°²à±."
#: actions/sitenoticeadminpanel.php:176
-#, fuzzy
msgid "Site notice text"
-msgstr "సైటౠగమనిక"
+msgstr "సైటౠగమనిక పాఠà±à°¯à°‚"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr ""
+msgstr "సైటà±-వారీ నోటీసౠపాఠà±à°¯à°‚ (255 à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚; HTML పరà±à°²à±‡à°¦à±)"
#: actions/sitenoticeadminpanel.php:198
-#, fuzzy
msgid "Save site notice"
-msgstr "సైటౠగమనిక"
+msgstr "సైటౠగమనికని à°­à°¦à±à°°à°ªà°°à°šà±"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "SMS అమరికలà±"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "హోమౠపేజీ URL సరైనది కాదà±."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS à°šà°¿à°°à±à°¨à°¾à°®à°¾"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "à°ˆ ఫోనౠనంబరౠయొకà±à°• నిరà±à°§à°¾à°°à°£à°•à±ˆ వేచివà±à°‚ది."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "నిరà±à°§à°¾à°°à°£ సంకేతం"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "నిరà±à°¥à°¾à°°à°¿à°‚à°šà±"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr ""
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "SMS à°…à°­à°¿à°°à±à°šà±à°²à±"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "à°…à°­à°¿à°°à±à°šà±à°²à± à°­à°¦à±à°°à°®à°¯à±à°¯à°¾à°¯à°¿."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "ఫోనౠనెంబరౠలేదà±."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "ఇది ఇపà±à°ªà°Ÿà°¿à°•à±‡ మీ ఫోనౠనెంబరà±."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "à°† ఫోనౠనంబరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ వేరే వాడà±à°•à°°à°¿à°•à°¿ చెందినది."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr "à°† నిరà±à°§à°¾à°°à°£à°¾ సంకేతం మీది కాదà±!"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "అది తపà±à°ªà±à°¡à± నిరà±à°§à°¾à°°à°£ సంఖà±à°¯."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "నిరà±à°§à°¾à°°à°£ à°°à°¦à±à°¦à°¯à°¿à°‚ది."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "అది మీ ఫోనౠనంబరౠకాదà±."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "à°† à°šà°¿à°°à±à°¨à°¾à°®à°¾à°¨à°¿ తొలగించాం."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3878,7 +4195,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3918,8 +4235,8 @@ msgstr "సైటౠఅమరికలనౠభదà±à°°à°ªà°°à°šà±"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "చందాని సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
@@ -3938,9 +4255,8 @@ msgid "You cannot subscribe to an OMB 0.1 remote profile with this action."
msgstr ""
#: actions/subscribe.php:145
-#, fuzzy
msgid "Subscribed"
-msgstr "చందాదారà±à°²à±"
+msgstr "చందాచేరారà±"
#: actions/subscribers.php:50
#, php-format
@@ -3979,6 +4295,8 @@ msgid ""
"%s has no subscribers. Why not [register an account](%%%%action.register%%%"
"%) and be the first?"
msgstr ""
+"%sà°•à°¿ చందాదారà±à°²à± ఎవరూ లేరà±. [à°’à°• ఖాతాని నమోదౠచేసà±à°•à±à°¨à°¿](%%%%action.register%%%%) మీరౠ"
+"à°Žà°‚à°¦à±à°•à± మొదటి చందాదారౠకాకూడదà±?"
#: actions/subscriptions.php:52
#, php-format
@@ -3992,12 +4310,12 @@ msgstr "%1$s చందాలà±, పేజీ %2$d"
#: actions/subscriptions.php:65
msgid "These are the people whose notices you listen to."
-msgstr ""
+msgstr "మీరౠఈ à°µà±à°¯à°•à±à°¤à±à°² నోటీసà±à°²à°¨à°¿ వింటà±à°¨à±à°¨à°¾à°°à±."
#: actions/subscriptions.php:69
#, php-format
msgid "These are the people whose notices %s listens to."
-msgstr ""
+msgstr "%s వీరి నోటీసà±à°²à°¨à°¿ వింటà±à°¨à±à°¨à°¾à°°à±."
#: actions/subscriptions.php:126
#, php-format
@@ -4012,13 +4330,13 @@ msgstr ""
#: actions/subscriptions.php:128 actions/subscriptions.php:132
#, php-format
msgid "%s is not listening to anyone."
-msgstr ""
+msgstr "%s à°ªà±à°°à°¸à±à°¤à±à°¤à°‚ ఎవరినీ వినడంలేదà±."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "జాబరà±"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr ""
@@ -4052,12 +4370,12 @@ msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పతà±à°°à°®à±‡à°®à±€ లేదà±."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "వాడà±à°•à°°à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à±"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "ఫొటో"
@@ -4088,10 +4406,6 @@ msgstr ""
msgid "No such tag."
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ à°Ÿà±à°¯à°¾à°—ౠలేదà±."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "మీరౠఆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించలేదà±."
@@ -4107,8 +4421,9 @@ msgid "User is not silenced."
msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
-msgstr ""
+#, fuzzy
+msgid "No profile ID in request."
+msgstr "అధీకరణ à°…à°­à±à°¯à°°à±à°¥à°¨ లేదà±!"
#: actions/unsubscribe.php:98
#, fuzzy
@@ -4123,7 +4438,6 @@ msgstr ""
#. TRANS: User admin panel title
#: actions/useradminpanel.php:59
-#, fuzzy
msgctxt "TITLE"
msgid "User"
msgstr "వాడà±à°•à°°à°¿"
@@ -4138,14 +4452,15 @@ msgstr ""
#: actions/useradminpanel.php:155
msgid "Invalid welcome text. Max length is 255 characters."
-msgstr ""
+msgstr "చెలà±à°²à°¨à°¿ à°¸à±à°µà°¾à°—à°¤ పాఠà±à°¯à°‚. à°—à°°à°¿à°·à±à°  పొడవౠ255 à°…à°•à±à°·à°°à°¾à°²à±."
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "à°ªà±à°°à±Šà°«à±ˆà°²à±"
@@ -4202,7 +4517,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "లైసెనà±à°¸à±"
@@ -4225,11 +4540,11 @@ msgstr "à°ˆ చందాని తిరసà±à°•à°°à°¿à°‚à°šà±"
#: actions/userauthorization.php:232
msgid "No authorization request!"
-msgstr ""
+msgstr "అధీకరణ à°…à°­à±à°¯à°°à±à°¥à°¨ లేదà±!"
#: actions/userauthorization.php:254
msgid "Subscription authorized"
-msgstr ""
+msgstr "చందాని అధీకరించారà±"
#: actions/userauthorization.php:256
msgid ""
@@ -4298,48 +4613,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
-#, fuzzy, php-format
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
+#, php-format
msgid "%1$s groups, page %2$d"
-msgstr "%1$s à°—à±à°‚పౠసభà±à°¯à±à°²à±, పేజీ %2$d"
+msgstr "%1$s à°—à±à°‚à°ªà±à°²à±, %2$dà°µ పేజీ"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "మరినà±à°¨à°¿ à°—à±à°‚à°ªà±à°²à°•à±ˆ వెతà±à°•à±"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s à° à°—à±à°‚పౠలోనూ సభà±à°¯à±à°²à± కాదà±."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr "[à°—à±à°‚à°ªà±à°²à°¨à°¿ వెతికి](%%action.groupsearch%%) వాటిలో చేరడానికి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "à°¸à±à°Ÿà±‡à°Ÿà°¸à±â€Œà°¨à±†à°Ÿà± %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4347,7 +4668,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4355,407 +4676,518 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
-msgstr ""
+msgstr "à°ªà±à°²à°—à°¿à°¨à±à°²à±"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "సంచిక"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "రచయిత(à°²à±)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "తపà±à°ªà±à°¡à± దసà±à°¤à±à°°à°ªà±à°ªà±‡à°°à±.."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "à°—à±à°‚à°ªà±à°²à±‹ చేరడం విఫలమైంది."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "à°—à±à°‚à°ªà±à°²à±‹ భాగం కాదà±."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "à°—à±à°‚పౠనà±à°‚à°¡à°¿ వైదొలగడం విఫలమైంది."
-#: classes/Local_group.php:41
-#, fuzzy
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
-msgstr "à°—à±à°‚à°ªà±à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
+msgstr "à°¸à±à°¥à°¾à°¨à°¿à°• à°—à±à°‚à°ªà±à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "మారà±à°ªà±‡à°°à±à°²à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "నేరà±à°—à°¾ సందేశాలౠపంపడం à°¨à±à°‚à°¡à°¿ మిమà±à°®à°²à±à°¨à°¿ నిషేధించారà±."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
-#, fuzzy
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "అవతారానà±à°¨à°¿ పెటà±à°Ÿà°¡à°‚లో పొరపాటà±"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
-msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
+msgstr "నోటీసà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±. చాలా పొడవà±à°—à°¾ ఉంది."
-#: classes/Notice.php:245
-#, fuzzy
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
-msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
+msgstr "నోటీసà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±. à°—à±à°°à±à°¤à±à°¤à±†à°²à°¿à°¯à°¨à°¿ వాడà±à°•à°°à°¿."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
-msgstr ""
+msgstr "చాలా à°Žà°•à±à°•à±à°µ నోటీసà±à°²à± à°…à°‚à°¤ వేగంగా; కాసà±à°¤ ఊపిరి తీసà±à°•à±à°¨à°¿ మళà±à°³à±€ కొనà±à°¨à°¿ నిమిషాల తరà±à°µà°¾à°¤ à°µà±à°°à°¾à°¯à°‚à°¡à°¿."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "à°ˆ సైటà±à°²à±‹ నోటీసà±à°²à± రాయడం à°¨à±à°‚à°¡à°¿ మిమà±à°®à°²à±à°¨à°¿ నిషేధించారà±."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
-#: classes/Notice.php:1459
-#, fuzzy, php-format
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
+#, php-format
msgid "RT @%1$s %2$s"
-msgstr "%1$s (%2$s)"
+msgstr "RT @%1$s %2$s"
+
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "చందాచేరడం à°¨à±à°‚à°¡à°¿ మిమà±à°®à°²à±à°¨à°¿ నిషేధించారà±."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "ఇపà±à°ªà°Ÿà°¿à°•à±‡ చందాచేరారà±!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "వాడà±à°•à°°à°¿ మిమà±à°®à°²à±à°¨à°¿ నిరోధించారà±."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "చందాదారà±à°²à±"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "చందాని తొలగించలేకపోయాం."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "చందాని తొలగించలేకపోయాం."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "చందాని తొలగించలేకపోయాం."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "@%2$s, %1$sà°•à°¿ à°¸à±à°µà°¾à°—తం!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "à°—à±à°‚à°ªà±à°¨à°¿ సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "à°—à±à°‚పౠసభà±à°¯à°¤à±à°µà°¾à°¨à±à°¨à°¿ అమరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "à°—à±à°‚పౠసభà±à°¯à°¤à±à°µà°¾à°¨à±à°¨à°¿ అమరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "చందాని సృషà±à°Ÿà°¿à°‚చలేకపోయాం."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr ""
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "à°’à°• అవతారానà±à°¨à°¿ à°Žà°•à±à°•à°¿à°‚à°šà°‚à°¡à°¿"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "మీ సంకేతపదానà±à°¨à°¿ మారà±à°šà±à°•à±‹à°‚à°¡à°¿"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "ఇతర"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "ఇతర ఎంపికలà±"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "ఇతర"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s - %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
-msgstr ""
+msgstr "శీరà±à°·à°¿à°•à°²à±‡à°¨à°¿ పేజీ"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
-msgstr ""
+msgstr "à°ªà±à°°à°¾à°§à°®à°¿à°• సైటౠమారà±à°—దరà±à°¶à°¿à°¨à°¿"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "à°µà±à°¯à°•à±à°¤à°¿à°—à°¤"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
-#, fuzzy
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "మీ ఈమెయిలà±, అవతారం, సంకేతపదం మరియౠపà±à°°à±Œà°«à±ˆà°³à±à°³à°¨à± మారà±à°šà±à°•à±‹à°‚à°¡à°¿"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "à°…à°¨à±à°¸à°‚ధానాలà±"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "à°…à°¨à±à°¸à°‚ధానించà±"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
-#, fuzzy
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
-msgstr "చందాలà±"
+msgstr "సైటౠసà±à°µà°°à±‚పణానà±à°¨à°¿ మారà±à°šà°‚à°¡à°¿"
-#: lib/action.php:449
-#, fuzzy
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à±"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "à°ˆ ఫారానà±à°¨à°¿ ఉపయోగించి మీ à°¸à±à°¨à±‡à°¹à°¿à°¤à±à°²à°¨à± మరియౠసహోదà±à°¯à±‹à°—à±à°²à°¨à± à°ˆ సేవనౠవినియోగించà±à°•à±‹à°®à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚à°šà°‚à°¡à°¿."
-#: lib/action.php:456
-#, fuzzy
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "ఆహà±à°µà°¾à°¨à°¿à°‚à°šà±"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
-#, fuzzy
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "సైటౠనà±à°‚à°¡à°¿ నిషà±à°•à±à°°à°®à°¿à°‚à°šà±"
-#: lib/action.php:465
-#, fuzzy
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "నిషà±à°•à±à°°à°®à°¿à°‚à°šà±"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
-#, fuzzy
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
-msgstr "కొతà±à°¤ ఖాతా సృషà±à°Ÿà°¿à°‚à°šà±"
+msgstr "ఖాతాని సృషà±à°Ÿà°¿à°‚à°šà±à°•à±‹à°‚à°¡à°¿"
-#: lib/action.php:473
-#, fuzzy
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "నమోదà±"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
-#, fuzzy
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
-msgstr "సైటà±à°²à±‹à°¨à°¿ à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±"
+msgstr "సైటౠలోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
-#: lib/action.php:479
-#, fuzzy
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
-msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
+msgstr "à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà±"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
-#, fuzzy
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "సహాయం కావాలి!"
-#: lib/action.php:485
-#, fuzzy
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "సహాయం"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
-#, fuzzy
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
-msgstr "మరినà±à°¨à°¿ à°—à±à°‚à°ªà±à°²à°•à±ˆ వెతà±à°•à±"
+msgstr "à°ªà±à°°à°œà°²à± లేదా పాఠà±à°¯à°‚ కొరకౠవెతకండి"
-#: lib/action.php:491
-#, fuzzy
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "వెతà±à°•à±"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
msgstr "సైటౠగమనిక"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "à°¸à±à°¥à°¾à°¨à°¿à°• వీకà±à°·à°£à°²à±"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "పేజీ గమనిక"
-#: lib/action.php:747
-#, fuzzy
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
-msgstr "చందాలà±"
+msgstr "à°¦à±à°µà°¿à°¤à±€à°¯ సైటౠమారà±à°—దరà±à°¶à°¿à°¨à°¿"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "సహాయం"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "à°—à±à°°à°¿à°‚à°šà°¿"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "à°ªà±à°°à°¶à±à°¨à°²à±"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "సేవా నియమాలà±"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "అంతరంగికత"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "మూలమà±"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "సంపà±à°°à°¦à°¿à°‚à°šà±"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "బాడà±à°œà°¿"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "à°¸à±à°Ÿà±‡à°Ÿà°¸à±â€Œà°¨à±†à°Ÿà± మృదూపకరణ లైసెనà±à°¸à±"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** అనేది [%%site.broughtby%%](%%site.broughtbyurl%%) వారౠ"
-"అందిసà±à°¤à±à°¨à±à°¨ మైకà±à°°à±‹ à°¬à±à°²à°¾à°—ింగౠసదà±à°ªà°¾à°¯à°‚. "
+"అందిసà±à°¤à±à°¨à±à°¨ సూకà±à°·à±à°® à°¬à±à°²à°¾à°—ింగౠసేవ."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** అనేది మైకà±à°°à±‹ à°¬à±à°²à°¾à°—ింగౠసదà±à°ªà°¾à°¯à°‚."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4766,68 +5198,82 @@ msgstr ""
"html) à°•à°¿à°‚à°¦ లభà±à°¯à°®à°¯à±à°¯à±‡ [à°¸à±à°Ÿà±‡à°Ÿà°¸à±&zwnj;నెటà±](http://status.net/) మైకà±à°°à±‹à°¬à±à°²à°¾à°—ింగౠఉపకరణం సంచిక %s "
"పై నడà±à°¸à±à°¤à±à°‚ది."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "కొతà±à°¤ సందేశం"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "à°…à°¨à±à°¨à±€ "
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "పేజీకరణ"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "తరà±à°µà°¾à°¤"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "ఇంతకà±à°°à°¿à°¤à°‚"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "à°ˆ సైటà±à°•à°¿ మీరౠమారà±à°ªà±à°²à± చేయలేరà±."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4837,161 +5283,197 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "à°ªà±à°°à°¾à°¥à°®à°¿à°• సైటౠసà±à°µà°°à±‚పణం"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
-#, fuzzy
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "సైటà±"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "రూపకలà±à°ªà°¨ à°¸à±à°µà°°à±‚పణం"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
-#, fuzzy
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "రూపà±à°°à±‡à°–à°²à±"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "వాడà±à°•à°°à°¿ à°¸à±à°µà°°à±‚పణం"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "వాడà±à°•à°°à°¿"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS నిరà±à°§à°¾à°°à°£"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS నిరà±à°§à°¾à°°à°£"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "రూపకలà±à°ªà°¨ à°¸à±à°µà°°à±‚పణం"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "సైటౠగమనిక"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS నిరà±à°§à°¾à°°à°£"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "ఉపకరణానà±à°¨à°¿ మారà±à°šà±"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "à°ˆ ఉపకరణానికి à°ªà±à°°à°¤à±€à°•à°‚"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "మీ ఉపకరణం à°—à±à°°à°¿à°‚à°šà°¿ %d à°…à°•à±à°·à°°à°¾à°²à±à°²à±‹ వివరించండి"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "మీ ఉపకరణానà±à°¨à°¿ వివరించండి"
-#: lib/applicationeditform.php:216
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
+msgstr "à°ˆ ఉపకరణం యొకà±à°• హోమà±&zwnj;పేజీ à°šà°¿à°°à±à°¨à°¾à°®à°¾"
+
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
#, fuzzy
msgid "Source URL"
msgstr "మూలమà±"
-#: lib/applicationeditform.php:218
-msgid "URL of the homepage of this application"
-msgstr "à°ˆ ఉపకరణం యొకà±à°• హోమà±&zwnj;పేజీ à°šà°¿à°°à±à°¨à°¾à°®à°¾"
-
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "à°ˆ ఉపకరణానికి బాధà±à°¯à°¤à°¾à°¯à±à°¤à°®à±ˆà°¨ సంసà±à°¥"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "మీ హోమౠపేజీ, à°¬à±à°²à°¾à°—à±, లేదా వేరే సేటà±à°²à±‹à°¨à°¿ మీ à°ªà±à°°à±Šà°«à±ˆà°²à± యొకà±à°• à°šà°¿à°°à±à°¨à°¾à°®à°¾"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "విహారిణి"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
-msgstr ""
+msgstr "మేజోపరి"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
-msgstr ""
+msgstr "ఉపకరణ రకం, విహారిణి లేదా మేజోపరి"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "చదవడం-మాతà±à°°à°®à±‡"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "చదవడం-à°µà±à°°à°¾à°¯à°¡à°‚"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "à°°à°¦à±à°¦à±à°šà±‡à°¯à°¿"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "చదవడం-à°µà±à°°à°¾à°¯à°¡à°‚"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "చదవడం-మాతà±à°°à°®à±‡"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "తొలగించà±"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "జోడింపà±à°²à±"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "రచయిత"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "à°ªà±à°°à±Šà°«à±ˆà°²à±"
@@ -5004,47 +5486,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "సంకేతపదం మారà±à°ªà±"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "సంకేతపదం మారà±à°ªà±"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "ఆదేశ ఫలితాలà±"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "ఆదేశం పూరà±à°¤à°¯à±à°¯à°¿à°‚ది"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "ఆదేశం విఫలమైంది"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "à°† à°—à±à°°à±à°¤à°¿à°‚à°ªà±à°¤à±‹ ఠనోటీసౠలేదà±"
+
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "à°•à±à°·à°®à°¿à°‚à°šà°‚à°¡à°¿, à°ˆ ఆదేశం ఇంకా అమలà±à°ªà°°à°šà°¬à°¡à°²à±‡à°¦à±."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5055,199 +5557,199 @@ msgstr ""
"చందాదారà±à°²à±: %2$s\n"
"నోటీసà±à°²à±: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "à°† ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ లేదా వాడà±à°•à°°à°¿à°ªà±‡à°°à±à°¤à±‹ వాడà±à°•à°°à±à°²à±†à°µà°°à±‚ లేరà±."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "వాడà±à°•à°°à°¿à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
-msgstr ""
+msgstr "నోటీసà±à°¨à°¿ ఇషà±à°Ÿà°¾à°‚శంగా à°—à±à°°à±à°¤à°¿à°‚చాం."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ à°† à°—à±à°‚à°ªà±à°²à±‹ సభà±à°¯à±à°²à±"
-#: lib/command.php:231
-#, php-format
-msgid "Could not join user %s to group %s"
-msgstr "వాడà±à°•à°°à°¿ %sని %s à°—à±à°‚à°ªà±à°²à±‹ చేరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚"
-
-#: lib/command.php:236
-#, php-format
-msgid "%s joined group %s"
-msgstr "%s %s à°—à±à°‚à°ªà±à°²à±‹ చేరారà±"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "వాడà±à°•à°°à°¿ %sని %s à°—à±à°‚పౠనà±à°‚à°¡à°¿ తొలగించలేకపోయాం"
+msgid "Could not join user %1$s to group %2$s"
+msgstr "వాడà±à°•à°°à°¿ %1$sని %2$s à°—à±à°‚à°ªà±à°²à±‹ చేరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚"
-#: lib/command.php:280
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s left group %s"
-msgstr "%2$s à°—à±à°‚పౠనà±à°‚à°¡à°¿ %1$s వైదొలిగారà±"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "వాడà±à°•à°°à°¿ %1$sని %2$s à°—à±à°‚పౠనà±à°‚à°¡à°¿ తొలగించలేకపోయాం"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "పూరà±à°¤à°¿à°ªà±‡à°°à±: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "à°ªà±à°°à°¾à°‚తం: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "హోంపేజీ: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "à°—à±à°°à°¿à°‚à°šà°¿: %s"
-#: lib/command.php:349
-#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "నోటిసౠచాలా పొడవà±à°—à°¾ ఉంది - %d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚, మీరౠ%d పంపించారà±"
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr "సందేశం చాలా పొడవà±à°—à°¾ ఉంది - %1$d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚, మీరౠ%2$d పంపించారà±"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "%sà°•à°¿ నేరౠసందేశానà±à°¨à°¿ పంపించాం"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "మీ నోటిసà±à°¨à°¿ మీరే à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చలేరà±"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "ఇపà±à°ªà°Ÿà°¿à°•à±‡ à°ˆ నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చారà±"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "సందేశాలà±"
-#: lib/command.php:428
-#, fuzzy
+#: lib/command.php:531
msgid "Error repeating notice."
-msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
+msgstr "నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చడంలో పొరపాటà±."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "నోటిసౠచాలా పొడవà±à°—à°¾ ఉంది - %d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚, మీరౠ%d పంపించారà±"
-#: lib/command.php:491
-#, fuzzy, php-format
+#: lib/command.php:571
+#, php-format
msgid "Reply to %s sent"
-msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
+msgstr "%sà°•à°¿ à°¸à±à°ªà°‚దనని పంపించాం"
-#: lib/command.php:493
-#, fuzzy
+#: lib/command.php:573
msgid "Error saving notice."
-msgstr "సందేశానà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
+msgstr "నోటీసà±à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°¡à°‚లో పొరపాటà±."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "à°à°µà°°à°¿à°•à°¿ చందా చేరాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à±‹ à°† వాడà±à°•à°°à°¿ పేరౠతెలియజేయండి"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ వాడà±à°•à°°à°¿ లేరà±"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "%sà°•à°¿ చందా చేరారà±"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "ఎవరి à°¨à±à°‚à°¡à°¿ చందా విరమించాలనà±à°•à±à°‚à°Ÿà±à°¨à±à°¨à°¾à°°à±‹ à°† వాడà±à°•à°°à°¿ పేరౠతెలియజేయండి"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "%s à°¨à±à°‚à°¡à°¿ చందా విరమించారà±"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr "à°ˆ లంకెని ఒకే సారి ఉపయోగించగలరà±, మరియౠఅది పనిచేసేది 2 నిమిషాలౠమాతà±à°°à°®à±‡: %s"
-#: lib/command.php:692
-#, fuzzy, php-format
+#: lib/command.php:761
+#, php-format
msgid "Unsubscribed %s"
msgstr "%s à°¨à±à°‚à°¡à°¿ చందా విరమించారà±"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "మీరౠఎవరికీ చందాచేరలేదà±."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
msgstr[1] "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "మీకౠచందాదారà±à°²à± ఎవరూ లేరà±."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
msgstr[1] "%sà°•à°¿ à°¸à±à°ªà°‚దనలà±"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "మీరౠఠగà±à°‚à°ªà±à°²à±‹à°¨à±‚ సభà±à°¯à±à°²à± కాదà±."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±!"
msgstr[1] "మీరౠఇపà±à°ªà°Ÿà°¿à°•à±‡ లోనికి à°ªà±à°°à°µà±‡à°¶à°¿à°‚చారà±!"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5289,20 +5791,19 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
-#, fuzzy
+#: lib/common.php:135
msgid "No configuration file found. "
-msgstr "నిరà±à°§à°¾à°°à°£ సంకేతం లేదà±."
+msgstr "à°¸à±à°µà°°à±‚పణపౠదసà±à°¤à±à°°à°®à±‡à°®à±€ కనబడలేదà±. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
-msgstr ""
+msgstr "à°¸à±à°µà°°à±‚పణపౠదసà±à°¤à±à°°à°¾à°² కొరకౠఈ à°ªà±à°°à°¦à±‡à°¶à°¾à°²à°¤à±‹ చూసాం: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5324,7 +5825,7 @@ msgstr "à°…à°¨à±à°¸à°‚ధానాలà±"
#: lib/connectsettingsaction.php:121
msgid "Authorized connected applications"
-msgstr ""
+msgstr "అధీకృత à°…à°¨à±à°¸à°‚ధాన ఉపకరణాలà±"
#: lib/dberroraction.php:60
msgid "Database error"
@@ -5354,7 +5855,7 @@ msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ సందేశమేమీ లేదà±."
#: lib/favorform.php:140
msgid "Favor"
-msgstr ""
+msgstr "ఇషà±à°Ÿà°ªà°¡à±"
#: lib/feed.php:85
msgid "RSS 1.0"
@@ -5411,9 +5912,8 @@ msgid "URL of the homepage or blog of the group or topic"
msgstr "మీ హోమౠపేజీ, à°¬à±à°²à°¾à°—à±, లేదా వేరే సేటà±à°²à±‹à°¨à°¿ మీ à°ªà±à°°à±Šà°«à±ˆà°²à± యొకà±à°• à°šà°¿à°°à±à°¨à°¾à°®à°¾"
#: lib/groupeditform.php:168
-#, fuzzy
msgid "Describe the group or topic"
-msgstr "మీ à°—à±à°°à°¿à°‚à°šà°¿ మరియౠమీ ఆసకà±à°¤à±à°² à°—à±à°°à°¿à°‚à°šà°¿ 140 à°…à°•à±à°·à°°à°¾à°²à±à°²à±‹ చెపà±à°ªà°‚à°¡à°¿"
+msgstr "à°—à±à°‚à°ªà±à°¨à°¿ లేదా విషయానà±à°¨à°¿ వివరించండి"
#: lib/groupeditform.php:170
#, php-format
@@ -5435,9 +5935,8 @@ msgid "Group"
msgstr "à°—à±à°‚à°ªà±"
#: lib/groupnav.php:101
-#, fuzzy
msgid "Blocked"
-msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ వాడà±à°•à°°à°¿ లేరà±."
+msgstr "నిరోధించారà±"
#: lib/groupnav.php:102
#, php-format
@@ -5476,54 +5975,55 @@ msgstr "à°Žà°•à±à°•à±à°µ టపాలà±à°¨à±à°¨ à°—à±à°‚à°ªà±à°²à±"
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "ఇది చాలా పొడవà±à°‚ది. à°—à°°à°¿à°·à±à°  సందేశ పరిమాణం 140 à°…à°•à±à°·à°°à°¾à°²à±."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "పాకà±à°·à°¿à°• à°Žà°—à±à°®à°¤à°¿."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "బొమà±à°® కాదౠలేదా పాడైపోయిన ఫైలà±."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr ""
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ సందేశమేమీ లేదà±."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "తెలియని ఫైలౠరకం"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "మెబై"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "కిబై"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, fuzzy, php-format
msgid "Unknown inbox source %d."
msgstr "à°—à±à°°à±à°¤à± తెలియని భాష \"%s\""
@@ -5541,15 +6041,16 @@ msgid "Login with a username and password"
msgstr "వాడà±à°•à°°à°¿à°ªà±‡à°°à± మరియౠసంకేతపదాలతో à°ªà±à°°à°µà±‡à°¶à°¿à°‚à°šà°‚à°¡à°¿"
#: lib/logingroupnav.php:86
-#, fuzzy
msgid "Sign up for a new account"
-msgstr "కొతà±à°¤ ఖాతా సృషà±à°Ÿà°¿à°‚à°šà±à°•à±‹à°‚à°¡à°¿"
+msgstr "కొతà±à°¤ ఖాతా కొరకై నమోదà±à°šà±‡à°¸à±à°•à±‹à°‚à°¡à°¿"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾ నిరà±à°§à°¾à°°à°£"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5565,13 +6066,34 @@ msgid ""
"Thanks for your time, \n"
"%s\n"
msgstr ""
+"హోయి, %s.\n"
+"\n"
+"%sలో ఎవరో మీ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¨à°¿ ఇచà±à°šà°¾à°°à±.\n"
+"\n"
+"అది మీరే అయితే, మరియౠమీ పదà±à°¦à±à°¨à°¿ మీరౠనిరà±à°§à°¾à°°à°¿à°‚చాలనà±à°•à±à°‚టే, à°•à±à°°à°¿à°‚ది à°šà°¿à°°à±à°¨à°¾à°®à°¾à°ªà±ˆ నొకà±à°•à°‚à°¡à°¿:\n"
+"\n"
+"%s\n"
+"\n"
+"మీరౠకాకపోతే, à°ˆ సందేశానà±à°¨à°¿ పటà±à°Ÿà°¿à°‚à°šà±à°•à±‹à°•à°‚à°¡à°¿.\n"
+"\n"
+"మీ సమయానికి కృతజà±à°žà°¤à°²à±, \n"
+"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s ఇపà±à°ªà±à°¡à± %2$sలో మీ నోటీసà±à°²à°¨à°¿ వింటà±à°¨à±à°¨à°¾à°°à±."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5596,17 +6118,20 @@ msgstr ""
"----\n"
"మీ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾à°¨à°¿ లేదా గమనింపà±à°² ఎంపికలనౠ%8$s వదà±à°¦ మారà±à°šà±à°•à±‹à°‚à°¡à°¿\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "à°¸à±à°µà°ªà°°à°¿à°šà°¯à°‚: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
-msgstr ""
+msgstr "%sà°•à°¿ నోటీసà±à°²à± పంపించడానికి కొతà±à°¤ ఈమెయిలౠచిరà±à°¨à°¾à°®à°¾"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5619,21 +6144,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s à°¸à±à°¥à°¿à°¤à°¿"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS నిరà±à°§à°¾à°°à°£"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "à°ˆ ఫోనౠనంబరౠయొకà±à°• నిరà±à°§à°¾à°°à°£à°•à±ˆ వేచివà±à°‚ది."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5648,13 +6183,26 @@ msgid ""
"With kind regards,\n"
"%4$s\n"
msgstr ""
+"%1$s (%2$s) మీరేం చేసà±à°¤à±à°¨à±à°¨à°¾à°°à±‹ అని విసà±à°®à°¯à°‚ చెందà±à°¤à±à°¨à±à°¨à°¾à°°à± మరియౠà°à°µà±ˆà°¨à°¾ విశేషాలని à°µà±à°°à°¾à°¯à°®à°¨à°¿ మిమà±à°®à°²à±à°¨à°¿ "
+"ఆహà±à°µà°¾à°¨à°¿à°¸à±à°¤à±à°¨à±à°¨à°¾à°°à±.\n"
+"\n"
+"కాబటà±à°Ÿà°¿ మిమà±à°®à°²à±à°¨à°¿ విననివà±à°µà°‚à°¡à°¿ :)\n"
+"\n"
+"%3$s\n"
+"\n"
+"à°ˆ ఈమెయిలà±à°•à±‡ à°¸à±à°ªà°‚దించకండి; ఇది వారికి వెళà±à°³à°¦à±.\n"
+"\n"
+"à°¶à±à°­à°¾à°¶à±€à°¸à±à°¸à±à°²à°¤à±‹,\n"
+"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "%s à°¨à±à°‚à°¡à°¿ కొతà±à°¤ అంతరంగిక సందేశం"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5672,13 +6220,29 @@ msgid ""
"With kind regards,\n"
"%5$s\n"
msgstr ""
+"%1$s (%2$s) మీకౠఒక అంతరంగిక సందేశానà±à°¨à°¿ పంపించారà±:\n"
+"\n"
+"------------------------------------------------------\n"
+"%3$s\n"
+"------------------------------------------------------\n"
+"\n"
+"వారి సందేశానికి మీరౠఇకà±à°•à°¡ జవాబివà±à°µà°µà°šà±à°šà±:\n"
+"\n"
+"%4$s\n"
+"\n"
+"à°ˆ ఈమెయిలà±à°•à°¿ à°¸à±à°ªà°‚దించకండి; ఇది వారికి వెళà±à°³à°¦à±.\n"
+"\n"
+"à°¶à±à°­à°¾à°•à°¾à°‚à°•à±à°·à°²à°¤à±‹,\n"
+"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
-msgstr ""
+msgstr "%s (@%s) మీ నోటీసà±à°¨à°¿ ఇషà±à°Ÿà°ªà°¡à±à°¡à°¾à°°à±"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5698,13 +6262,42 @@ msgid ""
"Faithfully yours,\n"
"%6$s\n"
msgstr ""
+"%2$s లోని మీ నోటీసà±à°¨à°¿ %1$s (@%7$s) తన ఇషà±à°Ÿà°¾à°‚శాలలో ఇపà±à°ªà±à°¡à±‡ చేరà±à°šà±à°•à±à°¨à±à°¨à°¾à°°à±.\n"
+"\n"
+"మీ నోటీసౠయొకà±à°• à°šà°¿à°°à±à°¨à°¾à°®à°¾ ఇదీ:\n"
+"\n"
+"%3$s\n"
+"\n"
+"మీ నోటీసౠయొకà±à°• పాఠà±à°¯à°‚ ఇదీ:\n"
+"\n"
+"%4$s\n"
+"\n"
+"%1$s యొకà±à°• ఇషà±à°Ÿà°¾à°‚శాల జాబితాని మీరౠఇకà±à°•à°¡ చూడవచà±à°šà±:\n"
+"\n"
+"%5$s\n"
+"\n"
+"మీ విధేయà±à°²à±,\n"
+"%6$s\n"
+
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"పూరà±à°¤à°¿ సంభాషణని ఇకà±à°•à°¡ చదవవచà±à°šà±:\n"
+"\n"
+"%s"
-#: lib/mail.php:635
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) మీకౠఒక నోటీసà±à°¨à°¿ పంపించారà±"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5717,17 +6310,41 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) %2$sలో మీకౠ('@-à°¸à±à°ªà°‚దన') à°’à°• నోటీసà±à°¨à°¿ పంపించారౠ.\n"
+"%2$sలో %1$s (@%9$s) à°’à°• నోటీసà±à°¨à°¿ మీ దృషà±à°Ÿà°¿à°•à°¿ ('@-à°¸à±à°ªà°‚దన') పంపించారà±.\n"
"\n"
-"à°† నోటీసౠఇకà±à°•à°¡:\n"
+"ఈదీ నోటీసà±:\n"
"\n"
"%3$s\n"
"\n"
-"ఇదీ పాఠà±à°¯à°‚:\n"
+"నోటీసౠపాఠà±à°¯à°‚:\n"
"\n"
"%4$s\n"
"\n"
+"%5$sమీరౠఇకà±à°•à°¡ à°ªà±à°°à°¤à°¿à°¸à±à°ªà°‚దించవచà±à°šà±:\n"
+"\n"
+"%6$s\n"
+"\n"
+"మీకౠవచà±à°šà°¿à°¨ à°…à°¨à±à°¨à°¿ @-à°¸à±à°ªà°‚దనలని ఇకà±à°•à°¡ చూడవచà±à°šà±:\n"
+"\n"
+"%7$s\n"
+"\n"
+"మీ విధేయà±à°²à±,\n"
+"%2$s\n"
+"\n"
+"తా.à°•. à°ˆ ఈమెయిలౠగమనింపà±à°²à°¨à°¿ మీరౠఇకà±à°•à°¡ నిలిపివేసà±à°•à±‹à°µà°šà±à°šà±: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5738,8 +6355,10 @@ msgid ""
"You have no private messages. You can send private message to engage other "
"users in conversation. People can send you messages for your eyes only."
msgstr ""
+"మీకౠఅంతరంగిక సందేశాలౠలేవà±. ఇతర వాడà±à°•à°°à±à°²à°¤à±‹ సంభాషణకై మీరౠవారికి అంతరంగిక సందేశాలౠ"
+"పంపించవచà±à°šà±. మీ à°•à°‚à°Ÿà°¿à°•à°¿ మాతà±à°°à°®à±‡ కనబడేలా వారౠమీకౠసందేశాలౠపంపవచà±à°šà±."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "à°¨à±à°‚à°¡à°¿"
@@ -5780,11 +6399,11 @@ msgstr ""
#: lib/mediafile.php:152
msgid "The uploaded file was only partially uploaded."
-msgstr ""
+msgstr "à°Žà°•à±à°•à°¿à°‚à°šà°¿à°¨ ఫైలౠకేవలం పాకà±à°·à°¿à°•à°‚à°—à°¾ మాతà±à°°à°®à±‡ à°Žà°•à±à°•à°¿à°‚ది."
#: lib/mediafile.php:159
msgid "Missing a temporary folder."
-msgstr ""
+msgstr "తాతà±à°•à°¾à°²à°¿à°• సంచయం కనబడటంలేదà±."
#: lib/mediafile.php:162
msgid "Failed to write file to disk."
@@ -5794,25 +6413,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "వాడà±à°•à°°à°¿à°¨à°¿ తాజాకరించలేకà±à°¨à±à°¨à°¾à°‚."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5830,7 +6449,6 @@ msgid "Available characters"
msgstr "à°…à°‚à°¦à±à°¬à°¾à°Ÿà±à°²à±‹ ఉనà±à°¨ à°…à°•à±à°·à°°à°¾à°²à±"
#: lib/messageform.php:178 lib/noticeform.php:236
-#, fuzzy
msgctxt "Send button for sending notice"
msgid "Send"
msgstr "పంపించà±"
@@ -5854,67 +6472,70 @@ msgid "Attach a file"
msgstr "à°’à°• ఫైలà±à°¨à°¿ జోడించà±"
#: lib/noticeform.php:212
-#, fuzzy
msgid "Share my location"
-msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚."
+msgstr "నేనà±à°¨à±à°¨ à°ªà±à°°à°¾à°‚తానà±à°¨à°¿ బహిరంగపరచà±"
#: lib/noticeform.php:215
-#, fuzzy
msgid "Do not share my location"
-msgstr "à°Ÿà±à°¯à°¾à°—à±à°²à°¨à°¿ à°­à°¦à±à°°à°ªà°°à°šà°²à±‡à°•à±à°¨à±à°¨à°¾à°‚."
+msgstr "నేనà±à°¨à±à°¨ à°ªà±à°°à°¾à°‚తానà±à°¨à°¿ బహిరంగపరచకà±"
#: lib/noticeform.php:216
msgid ""
"Sorry, retrieving your geo location is taking longer than expected, please "
"try again later"
msgstr ""
+"à°•à±à°·à°®à°¿à°‚à°šà°‚à°¡à°¿, మీ భౌగోళిక à°ªà±à°°à°¾à°‚తానà±à°¨à°¿ తెలà±à°¸à±à°•à±‹à°µà°¡à°‚ à°…à°¨à±à°•à±à°¨à±à°¨à°¦à°¾à°¨à°¿à°•à°‚టే à°Žà°•à±à°•à°µ సమయం తీసà±à°•à±à°‚టూంది, దయచేసి "
+"కాసేపాగి à°ªà±à°°à°¯à°¤à±à°¨à°¿à°‚à°šà°‚à°¡à°¿"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "à°‰"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "à°¦"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "తూ"
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "à°ª"
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "సందరà±à°­à°‚లో"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "సృషà±à°Ÿà°¿à°¤à°‚"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "à°ˆ నోటీసà±à°ªà±ˆ à°¸à±à°ªà°‚దించండి"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "à°¸à±à°ªà°‚దించండి"
-#: lib/noticelist.php:673
-#, fuzzy
+#: lib/noticelist.php:674
msgid "Notice repeated"
-msgstr "నోటీసà±à°¨à°¿ తొలగించాం."
+msgstr "నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చారà±"
#: lib/nudgeform.php:116
msgid "Nudge this user"
@@ -5937,6 +6558,10 @@ msgstr "కొతà±à°¤ à°ªà±à°°à±Šà°ªà±ˆà°²à±à°¨à°¿ చేరà±à°šà°Ÿà°‚à°²à
msgid "Error inserting avatar"
msgstr "అవతారానà±à°¨à°¿ పెటà±à°Ÿà°¡à°‚లో పొరపాటà±"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "దూరపౠపà±à°°à±Šà°ªà±ˆà°²à±à°¨à°¿ తాజాకరించటంలో పొరపాటà±"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "దూరపౠపà±à°°à±Šà°ªà±ˆà°²à±à°¨à°¿ చేరà±à°šà°Ÿà°‚లో పొరపాటà±"
@@ -5948,7 +6573,7 @@ msgstr "కొతà±à°¤ సందేశం"
#: lib/oauthstore.php:490
msgid "Couldn't insert new subscription."
-msgstr ""
+msgstr "కొతà±à°¤ చందాని చేరà±à°šà°²à±‡à°•à°ªà±‹à°¯à°¾à°‚."
#: lib/personalgroupnav.php:99
msgid "Personal"
@@ -5983,11 +6608,11 @@ msgstr "మీరౠపంపిన సందేశాలà±"
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "చందాలà±"
@@ -5995,32 +6620,32 @@ msgstr "చందాలà±"
msgid "All subscriptions"
msgstr "à°…à°¨à±à°¨à°¿ చందాలà±"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "చందాదారà±à°²à±"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "అందరౠచందాదారà±à°²à±"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "వాడà±à°•à°°à°¿ ID"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "సభà±à°¯à±à°²à±ˆà°¨ తేదీ"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "రోజà±à°µà°¾à°°à±€ సగటà±"
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "à°…à°¨à±à°¨à°¿ à°—à±à°‚à°ªà±à°²à±"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పతà±à°°à°®à±‡à°®à±€ లేదà±."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6044,11 +6669,20 @@ msgstr "విశేషం"
msgid "Popular"
msgstr "à°ªà±à°°à°¾à°šà±à°°à±à°¯à°‚"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "à°…à°Ÿà±à°µà°‚à°Ÿà°¿ పతà±à°°à°®à±‡à°®à±€ లేదà±."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "à°ˆ నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚చాలా?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "à°…à°µà±à°¨à±"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "à°ˆ నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚à°šà±"
@@ -6057,7 +6691,7 @@ msgstr "à°ˆ నోటీసà±à°¨à°¿ à°ªà±à°¨à°°à°¾à°µà±ƒà°¤à°¿à°‚à°šà±"
msgid "Revoke the \"%s\" role from this user"
msgstr "à°ˆ à°—à±à°‚à°ªà±à°¨à±à°‚à°¡à°¿ à°ˆ వాడà±à°•à°°à°¿à°¨à°¿ నిరోధించà±"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6092,7 +6726,7 @@ msgstr "à°ªà±à°°à°œà°²à±"
#: lib/searchgroupnav.php:81
msgid "Find people on this site"
-msgstr ""
+msgstr "à°ˆ సైటà±à°²à±‹à°¨à°¿ à°µà±à°¯à°•à±à°¤à±à°²à°¨à°¿ à°•à°¨à±à°—ొనండి"
#: lib/searchgroupnav.php:83
msgid "Find content of notices"
@@ -6100,11 +6734,11 @@ msgstr ""
#: lib/searchgroupnav.php:85
msgid "Find groups on this site"
-msgstr ""
+msgstr "à°ˆ సైటà±à°²à±‹à°¨à°¿ à°—à±à°‚à°ªà±à°²à°¨à°¿ à°•à°¨à±à°—ొనండి"
#: lib/section.php:89
msgid "Untitled section"
-msgstr ""
+msgstr "శీరà±à°·à°¿à°•à°²à±‡à°¨à°¿ విభాగం"
#: lib/section.php:106
msgid "More..."
@@ -6142,7 +6776,7 @@ msgstr "ఆహà±à°µà°¾à°¨à°¿à°‚à°šà±"
#: lib/subgroupnav.php:106
#, php-format
msgid "Invite friends and colleagues to join you on %s"
-msgstr ""
+msgstr "%sలో తోడà±à°•à±ˆ మీ à°¸à±à°¨à±‡à°¹à°¿à°¤à±à°²à°¨à°¿ మరియౠసహోదà±à°¯à±‹à°—à±à°²à°¨à°¿ ఆహà±à°µà°¾à°¨à°¿à°‚à°šà°‚à°¡à°¿"
#: lib/subscriberspeopleselftagcloudsection.php:48
#: lib/subscriptionspeopleselftagcloudsection.php:48
@@ -6158,6 +6792,50 @@ msgstr ""
msgid "None"
msgstr "à°à°®à±€à°²à±‡à°¦à±"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "అవతారపౠతాజాకరణ విఫలమైంది."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "దూరపౠపà±à°°à±Šà°ªà±ˆà°²à±à°¨à°¿ తాజాకరించటంలో పొరపాటà±"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6188,92 +6866,108 @@ msgstr "à°ˆ వాడà±à°•à°°à°¿ à°¨à±à°‚à°¡à°¿ చందామానà±"
msgid "Unsubscribe"
msgstr "చందామానà±"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "వాడà±à°•à°°à°¿ %s (%d) à°•à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à± లేదà±."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "అవతారానà±à°¨à°¿ మారà±à°šà±"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "వాడà±à°•à°°à°¿ à°šà°°à±à°¯à°²à±"
-#: lib/userprofile.php:251
-#, fuzzy
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "వాడà±à°•à°°à°¿ తొలగింపౠకొనసాగà±à°¤à±‚ంది..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
-msgstr "à°«à±à°°à±Šà°«à±ˆà°²à± అమరికలà±"
+msgstr "à°«à±à°°à±Šà°«à±ˆà°²à± అమరికలని మారà±à°šà±"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "మారà±à°šà±"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "à°ˆ వాడà±à°•à°°à°¿à°•à°¿ à°’à°• నేరౠసందేశానà±à°¨à°¿ పంపించండి"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "సందేశం"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
-#, fuzzy
+#: lib/userprofile.php:364
msgid "User role"
-msgstr "వాడà±à°•à°°à°¿ à°ªà±à°°à±Šà°«à±ˆà°²à±"
+msgstr "వాడà±à°•à°°à°¿ పాతà±à°°"
-#: lib/userprofile.php:354
-#, fuzzy
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "నిరà±à°µà°¾à°¹à°•à±à°²à±"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
-msgstr ""
+msgstr "సమనà±à°µà°¯à°•à°°à±à°¤"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "కొనà±à°¨à°¿ à°•à±à°·à°£à°¾à°² à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "à°“ నిమిషం à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "%d నిమిషాల à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "à°’à°• à°—à°‚à°Ÿ à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "%d à°—à°‚à°Ÿà°² à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "à°“ రోజౠకà±à°°à°¿à°¤à°‚"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "%d రోజà±à°² à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "à°“ నెల à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "%d నెలల à°•à±à°°à°¿à°¤à°‚"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "à°’à°• సంవతà±à°¸à°°à°‚ à°•à±à°°à°¿à°¤à°‚"
@@ -6287,7 +6981,7 @@ msgstr "%s అనేది సరైన రంగౠకాదà±!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s అనేది సరైన రంగౠకాదà±! 3 లేదా 6 హెకà±à°¸à± à°…à°•à±à°·à°°à°¾à°²à°¨à± వాడండి."
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "నోటిసౠచాలా పొడవà±à°—à°¾ ఉంది - %1$d à°…à°•à±à°·à°°à°¾à°²à± à°—à°°à°¿à°·à±à° à°‚, మీరౠ%2$d పంపించారà±."
diff --git a/locale/tr/LC_MESSAGES/statusnet.po b/locale/tr/LC_MESSAGES/statusnet.po
index 805e55268..029f36db1 100644
--- a/locale/tr/LC_MESSAGES/statusnet.po
+++ b/locale/tr/LC_MESSAGES/statusnet.po
@@ -9,12 +9,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:04+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:03+0000\n"
"Language-Team: Turkish\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: tr\n"
"X-Message-Group: out-statusnet\n"
@@ -22,7 +22,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "Kabul et"
@@ -78,86 +78,91 @@ msgstr "Böyle bir kullanıcı yok."
msgid "Save access settings"
msgstr "Ayarlar"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "Kaydet"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Böyle bir durum mesajı yok."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Böyle bir kullanıcı yok."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s ve arkadaşları"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s ve arkadaşları"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "%s için arkadaş güncellemeleri RSS beslemesi"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "%s için arkadaş güncellemeleri RSS beslemesi"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "%s için arkadaş güncellemeleri RSS beslemesi"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -165,79 +170,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s ve arkadaşları"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Onay kodu bulunamadı."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Kullanıcı güncellenemedi."
@@ -247,7 +254,7 @@ msgstr "Kullanıcı güncellenemedi."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "Kullanıcının profili yok."
@@ -258,9 +265,9 @@ msgid "Could not save profile."
msgstr "Profil kaydedilemedi."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,49 +325,50 @@ msgstr ""
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr ""
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
"Ah, durumunuz biraz uzun kaçtı. Azami 180 karaktere sığdırmaya ne dersiniz?"
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr ""
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Bu zaten sizin Jabber ID'niz."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr ""
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "Sunucuya yönlendirme yapılamadı: %s"
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -377,8 +385,8 @@ msgstr "Sunucuya yönlendirme yapılamadı: %s"
msgid "You cannot unfollow yourself."
msgstr "Kullanıcı güncellenemedi."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -391,120 +399,133 @@ msgstr "Kullanıcı güncellenemedi."
msgid "Could not find target user."
msgstr "Kullanıcı güncellenemedi."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Takma ad sadece küçük harflerden ve rakamlardan oluşabilir, boşluk "
"kullanılamaz. "
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Takma ad kullanımda. Başka bir tane deneyin."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Geçersiz bir takma ad."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Başlangıç sayfası adresi geçerli bir URL değil."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Tam isim çok uzun (azm: 255 karakter)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "Hakkında bölümü çok uzun (azm 140 karakter)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Yer bilgisi çok uzun (azm: 255 karakter)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "%s Geçersiz başlangıç sayfası"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Takma ad kullanımda. Başka bir tane deneyin."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "İstek bulunamadı!"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Sunucuya yönlendirme yapılamadı: %s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "Bize o profili yollamadınız"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "OpenID formu yaratılamadı: %s"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "Profil"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Bize o profili yollamadınız"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr ""
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Yükle"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -515,17 +536,17 @@ msgid "Invalid token."
msgstr "Geçersiz büyüklük."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -559,12 +580,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "BeklenmeÄŸen form girdisi."
@@ -584,21 +608,23 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
#, fuzzy
msgid "Account"
msgstr "Hakkında"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Takma ad"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Parola"
@@ -614,11 +640,11 @@ msgstr ""
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -637,62 +663,67 @@ msgstr "Eğer lisansı kabul etmezseniz kayıt olamazsınız."
msgid "Already repeated that notice."
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "Avatar güncellendi."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
"Ah, durumunuz biraz uzun kaçtı. Azami 180 karaktere sığdırmaya ne dersiniz?"
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr ""
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+#, fuzzy
+msgid "Not found."
+msgstr "İstek bulunamadı!"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Desteklenmeyen görüntü dosyası biçemi."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s'in %2$s'deki durum mesajları "
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s adli kullanicinin durum mesajlari"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s'in %2$s'deki durum mesajları "
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -707,20 +738,19 @@ msgstr "%s için cevaplar"
msgid "Repeats of %s"
msgstr "%s için cevaplar"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "%s adli kullanicinin durum mesajlari"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "İstek bulunamadı!"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
#, fuzzy
@@ -742,8 +772,9 @@ msgstr ""
msgid "Invalid size."
msgstr "Geçersiz büyüklük."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Avatar"
@@ -753,10 +784,11 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr ""
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
+msgstr "Kullanıcının profili yok."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -775,7 +807,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr ""
@@ -787,23 +819,28 @@ msgstr "Yükle"
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Kısmi yükleme."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Avatar güncellendi."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Avatar güncellemede hata."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "Avatar güncellendi."
@@ -813,41 +850,57 @@ msgstr "Avatar güncellendi."
msgid "You already blocked that user."
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
#, fuzzy
msgid "Block user"
msgstr "Böyle bir kullanıcı yok."
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
-msgstr ""
+msgstr "Durum mesajları"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Böyle bir kullanıcı yok."
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr ""
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "Böyle bir kullanıcı yok."
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -860,8 +913,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "Böyle bir durum mesajı yok."
@@ -894,9 +947,11 @@ msgstr ""
msgid "Unblock this user"
msgstr "Böyle bir kullanıcı yok."
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "%s için cevaplar"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -910,34 +965,44 @@ msgstr "Onay kodu bulunamadı."
msgid "That confirmation code is not for you!"
msgstr "O onay kodu sizin için değil!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Tanınmayan adres türü %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "O adres daha önce onaylanmış."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Kullanıcı güncellenemedi."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Eposta onayı silinemedi."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Adresi Onayla"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "\"%s\" adresi hesabınız için onaylandı."
@@ -948,7 +1013,7 @@ msgid "Conversation"
msgstr "Yer"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Durum mesajları"
@@ -970,7 +1035,7 @@ msgstr "Bize o profili yollamadınız"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -986,23 +1051,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Böyle bir durum mesajı yok."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Giriş yapılmadı."
@@ -1025,12 +1092,14 @@ msgstr ""
msgid "Are you sure you want to delete this notice?"
msgstr ""
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Böyle bir durum mesajı yok."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr ""
@@ -1054,64 +1123,76 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Böyle bir kullanıcı yok."
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Geçersiz büyüklük."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Parolayı değiştir"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "Yeni durum mesajı"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "DeÄŸiÅŸtir"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Yeni durum mesajı"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Yeni durum mesajı"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1119,71 +1200,80 @@ msgid ""
msgstr ""
"Ah, durumunuz biraz uzun kaçtı. Azami 180 karaktere sığdırmaya ne dersiniz?"
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "Parolayı değiştir"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "BaÄŸlan"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Ara"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr ""
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "GiriÅŸ"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Kaydet"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1296,12 +1386,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "Hakkında bölümü çok uzun (azm 140 karakter)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "%s Geçersiz başlangıç sayfası"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "Kullanıcı güncellenemedi."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Avatar bilgisi kaydedilemedi"
@@ -1311,180 +1407,239 @@ msgstr "Avatar bilgisi kaydedilemedi"
msgid "Options saved."
msgstr "Ayarlar kaydedildi."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Profil ayarları"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Adres"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Eposta adresi onayı"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr ""
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Kaldır"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Ä°ptal et"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Eposta adresi onayı"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr ""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Ekle"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr ""
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Tercihler"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr ""
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Tercihler kaydedildi."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr ""
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Geçersiz bir eposta adresi."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr ""
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Onay kodu eklenemedi."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "İptal etmek için beklenen onay yok."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Yanlış IM adresi."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Onaylama iptal edildi."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr ""
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Bu adres kaldırılmıştı."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1604,8 +1759,9 @@ msgstr ""
msgid "Remote service uses unknown version of OMB protocol."
msgstr "OMB protokolünün bilinmeğen sürümü."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Uzaktaki profili güncellemede hata oluştu"
#: actions/getfile.php:79
@@ -1639,13 +1795,13 @@ msgstr "Kullanıcının profili yok."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
@@ -1668,12 +1824,12 @@ msgstr "Kullanıcının profili yok."
msgid "User is not a member of group."
msgstr "Bize o profili yollamadınız"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Böyle bir kullanıcı yok."
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1681,17 +1837,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "Sunucuya yönlendirme yapılamadı: %s"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "Böyle bir kullanıcı yok."
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1735,11 +1893,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Kullanıcının profili yok."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1772,34 +1925,38 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr ""
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "%s adli kullanicinin durum mesajlari"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr ""
@@ -1819,7 +1976,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "Yeni hesap oluÅŸtur"
@@ -1873,12 +2030,16 @@ msgstr "Kullanıcının profili yok."
msgid "Error removing the block."
msgstr "Kullanıcıyı kaydetmede hata oluştu."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "IM Ayarları"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1887,16 +2048,26 @@ msgstr ""
"Jabber/GTalk kullanarak durum mesaji gÖnderip alabilirsiniz. IM adres "
"ayarlarinizi aşağıda yapın."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "IM adresi"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Onaylanmış Jabber/Gtalk adresi."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1905,12 +2076,9 @@ msgstr ""
"Bu adresten onay bekleniyor. Jabber/Google Talk hesabınızı ayrıntılı bilgi "
"içeren mesajı almak için kontrol edin. (%s'u arkadaş listenize eklediniz mi?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM adresi"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1919,44 +2087,66 @@ msgstr ""
"Jabber veya Gtalk adresi: \"KullaniciAdi@example.org\" gibi. Öncelikle %s, "
"IM istemcisi veya Gtalk arkadaşlar listenize eklenmiş olmalıdır."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Tercihler"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Durum mesajlarını Jabber/GTalk üzerinden gönder."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
"Jabber/GTalk durum mesajim değiştiğinde nedurum.com'da durumumu güncelle"
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Tercihler kaydedildi."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "JabberID yok."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Jabber iÅŸlemlerinde bir hata oluÅŸtu."
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Geçersiz bir Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Bu zaten sizin Jabber ID'niz."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID başka bir kullanıcıya ait."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1965,10 +2155,35 @@ msgstr ""
"Eklemiş olduğunuz IM adresine bir onay kodu gönderildi. %s tarafından size "
"mesaj yollanabilmesi için onaylamanız gerekmektedir."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Yanlış IM adresi."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Eposta onayı silinemedi."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Onaylama iptal edildi."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Bu sizin Jabber ID'niz deÄŸil."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Bu adres kaldırılmıştı."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1988,9 +2203,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Kullanıcı güncellenemedi."
#: actions/invite.php:72
#, php-format
@@ -2009,7 +2224,9 @@ msgstr ""
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2057,12 +2274,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Gönder"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2102,7 +2321,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "Takma ad yok"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr ""
@@ -2111,51 +2332,53 @@ msgstr ""
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "Bize o profili yollamadınız"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s'in %2$s'deki durum mesajları "
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Zaten giriş yapılmış."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Yanlış kullanıcı adı veya parola."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "YetkilendirilmemiÅŸ."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "GiriÅŸ"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Beni hatırla"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Gelecekte kendiliğinden giriş yap, paylaşılan bilgisayarlar için değildir!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Parolamı unuttum veya kaybettim"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2163,11 +2386,15 @@ msgstr ""
"Güvenliğiniz için, ayarlarınızı değiştirmeden önce lütfen kullanıcı adınızı "
"ve parolanızı tekrar giriniz."
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Geçersiz kullanıcı adı veya parola."
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Kullanıcı adı ve parolanızla giriş yapın. Henüz bir hesabınız yok mu? Ne "
"duruyorsunuz, hemen bir [yeni hesap oluÅŸturun](%%action.register%%) ya da "
@@ -2193,8 +2420,9 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Kullanıcının profili yok."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "Sonuç yok"
#: actions/newapplication.php:52
#, fuzzy
@@ -2230,12 +2458,12 @@ msgstr ""
msgid "New message"
msgstr ""
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "İçerik yok!"
@@ -2243,7 +2471,7 @@ msgstr "İçerik yok!"
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2257,7 +2485,7 @@ msgstr ""
msgid "Direct message to %s sent."
msgstr ""
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr ""
@@ -2265,7 +2493,7 @@ msgstr ""
msgid "New notice"
msgstr "Yeni durum mesajı"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
#, fuzzy
msgid "Notice posted"
msgstr "Durum mesajları"
@@ -2314,7 +2542,7 @@ msgstr "\"%s\" kelimesinin geçtiği tüm güncellemeler"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2356,11 +2584,11 @@ msgid "You are not a user of that application."
msgstr "Bize o profili yollamadınız"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2368,26 +2596,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Bu durum mesajının ait oldugu kullanıcı profili yok"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s'in %2$s'deki durum mesajları "
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "BaÄŸlan"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2499,7 +2732,7 @@ msgid "6 or more characters"
msgstr "6 veya daha fazla karakter"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Onayla"
@@ -2511,11 +2744,11 @@ msgstr "yukarıdaki parolanın aynısı"
msgid "Change"
msgstr "DeÄŸiÅŸtir"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr ""
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Parolalar birbirini tutmuyor."
@@ -2527,7 +2760,7 @@ msgstr "Eski parola yanlış"
msgid "Error saving user; invalid."
msgstr "Kullanıcıyı kaydetmede hata oluştu; geçersiz."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Yeni parola kaydedilemedi."
@@ -2536,7 +2769,7 @@ msgid "Password saved."
msgstr "Parola kaydedildi."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2546,23 +2779,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2711,18 +2944,19 @@ msgstr ""
msgid "People search"
msgstr "KiÅŸi Arama"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "Geçersiz bir eposta adresi."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "%s adli kullanicinin durum mesajlari"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Geçersiz durum mesajı"
#: actions/postnotice.php:101
@@ -2752,44 +2986,45 @@ msgstr ""
"1-64 küçük harf veya rakam, noktalama işaretlerine ve boşluklara izin "
"verilmez"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Tam Ä°sim"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Başlangıç Sayfası"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
"Web Sitenizin, blogunuzun ya da varsa baÅŸka bir sitedeki profilinizin adresi"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Hakkında"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Yer"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Bulunduğunuz yer, \"Şehir, Eyalet (veya Bölge), Ülke\" gibi"
@@ -2799,7 +3034,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2829,7 +3064,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Hakkında bölümü çok uzun (azm 140 karakter)."
@@ -2872,7 +3107,7 @@ msgstr "Ayarlar kaydedildi."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3029,7 +3264,7 @@ msgstr "Parolayı sıfırla"
msgid "Recover password"
msgstr "Parolanı geri al"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Parola geri alma isteÄŸi"
@@ -3049,19 +3284,19 @@ msgstr "Sıfırla"
msgid "Enter a nickname or email address."
msgstr "Bir takma ad veya eposta adresi girin."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Kullanıcı için kaydedilmiş eposta adresi yok."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Adres onayını kaydetmede hata."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3069,109 +3304,124 @@ msgstr ""
"Hesabınıza eklemiş olduğunuz eposta adresine parolanızı geri getirmek için "
"gerekli olan talimatlar yollanmıştır."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Beklemeğen parola sıfırlaması."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Parola 6 veya daha fazla karakterden oluşmalıdır."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Parola ve onaylaması birbirini tutmuyor."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Kullanıcı ayarlamada hata oluştu."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Yeni parola başarıyla kaydedildi. Şimdi giriş yaptınız."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Onay kodu hatası."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr ""
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Kayıt"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr ""
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Eğer lisansı kabul etmezseniz kayıt olamazsınız."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Eposta adresi zaten var."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Geçersiz kullanıcı adı veya parola."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr ""
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr ""
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Eposta"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
"Sadece sistem güncellemeleri, duyurular ve parola geri alma için kullanılır."
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Durum mesajlarim ve dosyalarim şu lisans ile korunmaktadır: "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
"bu özel veriler haricinde: parola, eposta adresi, IM adresi, telefon "
"numarası."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3190,7 +3440,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3230,7 +3480,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Abone ol"
@@ -3270,7 +3520,7 @@ msgstr "Eğer lisansı kabul etmezseniz kayıt olamazsınız."
msgid "You already repeated that notice."
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Yarat"
@@ -3310,7 +3560,7 @@ msgstr "%s için durum RSS beslemesi"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3323,8 +3573,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3342,7 +3592,7 @@ msgstr "Bize o profili yollamadınız"
msgid "User doesn't have this role."
msgstr "Kullanıcının profili yok."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Avatar güncellendi."
@@ -3359,7 +3609,7 @@ msgstr "Kullanıcının profili yok."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3398,29 +3648,33 @@ msgstr ""
msgid "Application profile"
msgstr "Bu durum mesajının ait oldugu kullanıcı profili yok"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Takma ad"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "Yer"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "Abonelikler"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Ä°statistikler"
@@ -3504,16 +3758,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3530,71 +3784,71 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "Bütün abonelikler"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "Böyle bir durum mesajı yok."
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
#, fuzzy
msgid "Note"
msgstr "Durum mesajları"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "%s için durum RSS beslemesi"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "%s için durum RSS beslemesi"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "%s için durum RSS beslemesi"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "%s için durum RSS beslemesi"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "Üyelik başlangıcı"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "Yarat"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3604,7 +3858,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3613,7 +3867,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3689,8 +3943,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3743,11 +3997,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3840,7 +4094,7 @@ msgid "Unable to save site notice."
msgstr "Durum mesajını kaydederken hata oluştu."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3857,104 +4111,165 @@ msgstr ""
msgid "Save site notice"
msgstr "Yeni durum mesajı"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "IM Ayarları"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IM adresi"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr ""
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Onayla"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr ""
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Tercihler"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Tercihler kaydedildi."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr ""
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr "O onay kodu sizin için değil!"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Onaylama iptal edildi."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr ""
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "Bu adres kaldırılmıştı."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3976,7 +4291,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4017,8 +4332,8 @@ msgstr "Ayarlar"
msgid "You are not subscribed to that profile."
msgstr "Bize o profili yollamadınız"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "Abonelik oluşturulamadı."
@@ -4113,12 +4428,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s %2$s'da durumunuzu takip ediyor"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "JabberID yok."
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr ""
@@ -4152,13 +4467,13 @@ msgstr "Böyle bir belge yok."
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "Kullanıcının profili yok."
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4191,10 +4506,6 @@ msgstr ""
msgid "No such tag."
msgstr "Böyle bir durum mesajı yok."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4212,7 +4523,7 @@ msgstr "Kullanıcının profili yok."
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Yetkilendirme isteÄŸi yok!"
#: actions/unsubscribe.php:98
@@ -4249,7 +4560,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Profil"
@@ -4312,7 +4624,7 @@ msgstr ""
"detayları gözden geçirin. Kimsenin durumunu taki etme isteğinde "
"bulunmadıysanız \"İptal\" tuşuna basın. "
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4411,48 +4723,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Bütün abonelikler"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "Bize o profili yollamadınız"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Ä°statistikler"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4460,7 +4778,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4468,336 +4786,453 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "KiÅŸisel"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Geçersiz büyüklük."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Böyle bir durum mesajı yok."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Kullanıcı güncellenemedi."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Böyle bir durum mesajı yok."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Kullanıcı güncellenemedi."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Avatar bilgisi kaydedilemedi"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "Cevap eklenirken veritabanı hatası: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "Kullanıcının profili yok."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Durum mesajını kaydederken hata oluştu."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
#, fuzzy
msgid "User has blocked you."
msgstr "Kullanıcının profili yok."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Bu kullanıcıyı zaten takip etmiyorsunuz!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Abonelik silinemedi."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Abonelik silinemedi."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Abonelik silinemedi."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "Avatar bilgisi kaydedilemedi"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Abonelik oluşturulamadı."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "Abonelik oluşturulamadı."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Abonelik oluşturulamadı."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr ""
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "Avatar güncellemede hata."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr ""
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Kullanıcının profili yok."
-#: lib/accountsettingsaction.php:128
-msgid "Other"
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
msgstr ""
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s'in %2$s'deki durum mesajları "
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "KiÅŸisel"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Parolayı değiştir"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Sunucuya yönlendirme yapılamadı: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "BaÄŸlan"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Abonelikler"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr ""
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "Geçersiz büyüklük."
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Çıkış"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Yeni hesap oluÅŸtur"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Kayıt"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "GiriÅŸ"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Yardım"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Yardım"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4805,76 +5240,90 @@ msgstr "Ara"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "Yeni durum mesajı"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "Yeni durum mesajı"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "Abonelikler"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Yardım"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Hakkında"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "SSS"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Gizlilik"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Kaynak"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Ä°letiÅŸim"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** [%%site.broughtby%%](%%site.broughtbyurl%%)\" tarafından "
"hazırlanan anında mesajlaşma ağıdır. "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** bir aninda mesajlaşma sosyal ağıdır."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4885,70 +5334,84 @@ msgstr ""
"licenses/agpl-3.0.html) lisansı ile korunan [StatusNet](http://status.net/) "
"microbloglama yazılımının %s. versiyonunu kullanmaktadır."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "Yeni durum mesajı"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "« Sonra"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "Önce »"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4958,168 +5421,206 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "Yeni durum mesajı"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "KiÅŸisel"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "Eposta adresi onayı"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Yeni durum mesajı"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "Eposta adresi onayı"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Kendinizi ve ilgi alanlarınızı 140 karakter ile anlatın"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Kaynak"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr ""
"Web Sitenizin, blogunuzun ya da varsa baÅŸka bir sitedeki profilinizin adresi"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Kaynak"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr ""
"Web Sitenizin, blogunuzun ya da varsa baÅŸka bir sitedeki profilinizin adresi"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Ä°ptal et"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Kaldır"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "Profil"
@@ -5132,47 +5633,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Parola kaydedildi."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Parola kaydedildi."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr ""
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr ""
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
msgstr ""
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "Kullanıcının profili yok."
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Kullanıcı güncellenemedi."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Kullanıcı güncellenemedi."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "%s için cevaplar"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5180,202 +5701,205 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr ""
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "Kullanıcının profili yok."
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Sunucuya yönlendirme yapılamadı: %s"
-#: lib/command.php:236
-#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%1$s'in %2$s'deki durum mesajları "
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "OpenID formu yaratılamadı: %s"
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%1$s'in %2$s'deki durum mesajları "
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "Tam Ä°sim"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr ""
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr ""
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr ""
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr ""
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Eğer lisansı kabul etmezseniz kayıt olamazsınız."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Zaten giriş yapmış durumdasıznız!"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Durum mesajları"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "%s için cevaplar"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Durum mesajını kaydederken hata oluştu."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
+#: lib/command.php:628
#, fuzzy
-msgid "No such user"
-msgstr "Böyle bir kullanıcı yok."
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Bize o profili yollamadınız"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Aboneliği sonlandır"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Bize o profili yollamadınız"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Bize o profili yollamadınız"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Uzaktan abonelik"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Uzaktan abonelik"
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Bize o profili yollamadınız"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Bize o profili yollamadınız"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5417,20 +5941,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Onay kodu yok."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5611,55 +6135,56 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Bu sayfa kabul ettiğiniz ortam türünde kullanılabilir değil"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Desteklenmeyen görüntü dosyası biçemi."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr ""
"Ah, durumunuz biraz uzun kaçtı. Azami 180 karaktere sığdırmaya ne dersiniz?"
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Kısmi yükleme."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Dosya yüklemede sistem hatası."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Bu bir resim dosyası değil ya da dosyada hata var"
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Desteklenmeyen görüntü dosyası biçemi."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "Böyle bir durum mesajı yok."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr ""
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5684,11 +6209,13 @@ msgstr "Geçersiz kullanıcı adı veya parola."
msgid "Sign up for a new account"
msgstr "Yeni hesap oluÅŸtur"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Eposta adresi onayı"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5705,12 +6232,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s %2$s'da durumunuzu takip ediyor"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5731,17 +6267,20 @@ msgstr ""
"Kendisini durumsuz bırakmayın!,\n"
"%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "Hakkında"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5754,21 +6293,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s durum"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5784,12 +6333,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr ""
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5808,12 +6359,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%1$s %2$s'da durumunuzu takip ediyor"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5834,12 +6387,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5852,6 +6415,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5864,7 +6439,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr ""
@@ -5919,25 +6494,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Kullanıcı güncellenemedi."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5995,51 +6570,55 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr ""
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "İçerik yok!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Yarat"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr ""
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
#, fuzzy
msgid "Reply"
msgstr "cevapla"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Durum mesajları"
@@ -6064,6 +6643,10 @@ msgstr "Yeni profil eklemede hata oluÅŸtu"
msgid "Error inserting avatar"
msgstr "Avatar eklemede hata oluÅŸtu"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Uzaktaki profili güncellemede hata oluştu"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Uzak profil eklemede hata oluÅŸtu"
@@ -6110,11 +6693,11 @@ msgstr ""
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Abonelikler"
@@ -6122,33 +6705,33 @@ msgstr "Abonelikler"
msgid "All subscriptions"
msgstr "Bütün abonelikler"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Abone olanlar"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "Abone olanlar"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Üyelik başlangıcı"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr ""
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Böyle bir belge yok."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6173,12 +6756,21 @@ msgstr ""
msgid "Popular"
msgstr "KiÅŸi Arama"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Böyle bir belge yok."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Böyle bir durum mesajı yok."
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr ""
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Böyle bir durum mesajı yok."
@@ -6188,7 +6780,7 @@ msgstr "Böyle bir durum mesajı yok."
msgid "Revoke the \"%s\" role from this user"
msgstr "Böyle bir kullanıcı yok."
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6291,6 +6883,50 @@ msgstr ""
msgid "None"
msgstr ""
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Avatar güncellemede hata."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Uzaktaki profili güncellemede hata oluştu"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6321,92 +6957,111 @@ msgstr ""
msgid "Unsubscribe"
msgstr "Aboneliği sonlandır"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "Kullanıcının profili yok."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Avatar"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr ""
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Profil ayarları"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr ""
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr ""
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Kullanıcının profili yok."
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "birkaç saniye önce"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "yaklaşık bir dakika önce"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "yaklaşık %d dakika önce"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "yaklaşık bir saat önce"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "yaklaşık %d saat önce"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "yaklaşık bir gün önce"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "yaklaşık %d gün önce"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "yaklaşık bir ay önce"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "yaklaşık %d ay önce"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "yaklaşık bir yıl önce"
@@ -6420,7 +7075,7 @@ msgstr "Başlangıç sayfası adresi geçerli bir URL değil."
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/uk/LC_MESSAGES/statusnet.po b/locale/uk/LC_MESSAGES/statusnet.po
index 78aa5dc23..8e1e37ced 100644
--- a/locale/uk/LC_MESSAGES/statusnet.po
+++ b/locale/uk/LC_MESSAGES/statusnet.po
@@ -3,6 +3,7 @@
# Author@translatewiki.net: AS
# Author@translatewiki.net: Boogie
# Author@translatewiki.net: Prima klasy4na
+# Author@translatewiki.net: ТеÑÑ‚
# --
# This file is distributed under the same license as the StatusNet package.
#
@@ -10,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:07+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:05+0000\n"
"Language-Team: Ukrainian\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: uk\n"
"X-Message-Group: out-statusnet\n"
@@ -24,7 +25,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
msgstr "ПогодитиÑÑŒ"
@@ -76,84 +77,89 @@ msgstr "Закрито"
msgid "Save access settings"
msgstr "Зберегти параметри доÑтупу"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "Зберегти"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
-msgstr "Ðемає такої Ñторінки"
+msgid "No such page."
+msgstr "Ðемає такої Ñторінки."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Такого кориÑтувача немає."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%1$s та друзі, Ñторінка %2$d"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s з друзÑми"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Стрічка допиÑів Ð´Ð»Ñ Ð´Ñ€ÑƒÐ·Ñ–Ð² %s (RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Стрічка допиÑів Ð´Ð»Ñ Ð´Ñ€ÑƒÐ·Ñ–Ð² %s (RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Стрічка допиÑів Ð´Ð»Ñ Ð´Ñ€ÑƒÐ·Ñ–Ð² %s (Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "Це Ñтрічка допиÑів %s Ñ– друзів, але вона поки що порожнÑ."
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -163,82 +169,84 @@ msgstr ""
"або напишіть щоÑÑŒ Ñамі."
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Ви можете [«розштовхати» %1$s](../%2$s) зі Ñторінки його профілю або [щоÑÑŒ "
"йому напиÑати](%%%%action.newnotice%%%%?status_textarea=%3$s)."
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
"Чому б не [зареєÑтруватиÑÑŒ](%%%%action.register%%%%) Ñ– не Ñпробувати "
"«розштовхати» %s або щоÑÑŒ йому напиÑати."
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
msgid "You and friends"
msgstr "Ви з друзÑми"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ %1$s та друзів на %2$s!"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
msgid "API method not found."
msgstr "API метод не знайдено."
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Цей метод потребує POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-"Ви муÑите вÑтановити параметр «девайÑ» з одним зі значень: СМС, ІМ, жоден"
+"Ви муÑите вÑтановити параметр «device» з одним зі значень: sms, im, none."
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
msgid "Could not update user."
msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ кориÑтувача."
@@ -247,7 +255,7 @@ msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ кориÑтувача."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "КориÑтувач не має профілю."
@@ -257,9 +265,9 @@ msgid "Could not save profile."
msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ профіль."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -317,47 +325,47 @@ msgstr "ПрÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ %s"
msgid "All the direct messages sent to %s"
msgstr "Ð’ÑÑ– прÑмі Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð´Ñ–Ñлані до %s"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð±ÐµÐ· текÑту!"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Ðадто довго. МакÑимальний розмір %d знаків."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "Отримувача не знайдено."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
"Ðе можна надіÑлати прÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувачеві, Ñкий не Ñ” Вашим другом."
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Жодних ÑтатуÑів з таким ID."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr "Цей ÑÑ‚Ð°Ñ‚ÑƒÑ Ð²Ð¶Ðµ Ñ” обраним."
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Ðе можна позначити Ñк обране."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr "Цей ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ðµ Ñ” обраним."
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "Ðе можна видалити зі ÑпиÑку обраних."
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+msgid "Could not follow user: profile not found."
msgstr "Ðе вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ кориÑтувача: кориÑтувача не знайдено."
#: actions/apifriendshipscreate.php:118
@@ -373,9 +381,9 @@ msgstr "Ðе вдалоÑÑ Ð²Ñ–Ð´Ð¼Ñ–Ð½Ð¸Ñ‚Ð¸ підпиÑку: кориÑтуÐ
msgid "You cannot unfollow yourself."
msgstr "Ви не можете відпиÑатиÑÑŒ від Ñамого Ñебе."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
-msgstr "Два ID або імені_у_мережі повинні підтримуватиÑÑŒ."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
+msgstr "Два ID або імені у мережі мають бути предÑтавлені."
#: actions/apifriendshipsshow.php:134
msgid "Could not determine source user."
@@ -385,117 +393,129 @@ msgstr "Ðе вдалоÑÑŒ вÑтановити джерело кориÑтув
msgid "Could not find target user."
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ цільового кориÑтувача."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
"Ð†Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача повинно ÑкладатиÑÑŒ з літер нижнього регіÑтру Ñ– цифр, ніÑких "
"інтервалів."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Це Ñ–Ð¼â€™Ñ Ð²Ð¶Ðµ викориÑтовуєтьÑÑ. Спробуйте інше."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Це недійÑне Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Веб-Ñторінка має недійÑну URL-адреÑу."
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Повне Ñ–Ð¼â€™Ñ Ð·Ð°Ð´Ð¾Ð²Ð³Ðµ (255 знаків макÑимум)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, php-format
msgid "Description is too long (max %d chars)."
msgstr "ÐžÐ¿Ð¸Ñ Ð½Ð°Ð´Ñ‚Ð¾ довгий (%d знаків макÑимум)."
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
-msgstr "Ð›Ð¾ÐºÐ°Ñ†Ñ–Ñ Ð½Ð°Ð´Ñ‚Ð¾ довга (255 знаків макÑимум)."
+msgstr "Ð Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð½Ð°Ð´Ñ‚Ð¾ довге (255 знаків макÑимум)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr "Забагато додаткових імен! МакÑимум Ñтановить %d."
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, php-format
-msgid "Invalid alias: \"%s\""
-msgstr "Помилкове додаткове ім’Ñ: \"%s\""
+msgid "Invalid alias: \"%s\"."
+msgstr "Помилкове додаткове ім’Ñ: «%s»."
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, php-format
msgid "Alias \"%s\" already in use. Try another one."
-msgstr "Додаткове Ñ–Ð¼â€™Ñ \"%s\" вже викориÑтовуєтьÑÑ. Спробуйте інше."
+msgstr "Додаткове Ñ–Ð¼â€™Ñ Â«%s» вже викориÑтовуєтьÑÑ. Спробуйте інше."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr "Додаткове Ñ–Ð¼â€™Ñ Ð½Ðµ може бути таким Ñамим що й оÑновне."
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-msgid "Group not found!"
-msgstr "Групу не знайдено!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Групу не знайдено."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr "Ви вже Ñ” учаÑником цієї групи."
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr "Ðдмін цієї групи заблокував Вашу приÑутніÑÑ‚ÑŒ в ній."
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "Ðе вдалоÑÑŒ долучити кориÑтувача %1$s до групи %2$s."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
msgid "You are not a member of this group."
msgstr "Ви не Ñ” учаÑником цієї групи."
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "Ðе вдалоÑÑŒ видалити кориÑтувача %1$s з групи %2$s."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, php-format
msgid "%s's groups"
msgstr "%s групи"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%1$s групи, в Ñких %2$s бере учаÑÑ‚ÑŒ."
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s групи"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr "групи на %s"
+#: actions/apimediaupload.php:99
+msgid "Upload failed."
+msgstr "Збій при завантаженні."
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr "Жодного параметру oauth_token не забезпечено."
@@ -505,17 +525,17 @@ msgid "Invalid token."
msgstr "Ðевірний токен."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -549,12 +569,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr "Токен запиту %s було ÑкаÑовано Ñ– відхилено."
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "ÐеÑподіване предÑÑ‚Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ñ„Ð¾Ñ€Ð¼Ð¸."
@@ -578,20 +601,22 @@ msgstr ""
"на доÑтуп до Вашого акаунту %4$s лише тим Ñтороннім додаткам, Ñким Ви "
"довірÑєте."
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "Ðкаунт"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Ð†Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Пароль"
@@ -607,11 +632,11 @@ msgstr "Дозволити"
msgid "Allow or deny access to your account information."
msgstr "Дозволити або заборонити доÑтуп до Вашого облікового запиÑу."
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Цей метод потребує або ÐÐПИСÐТИ, або ВИДÐЛИТИ."
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Ви не можете видалити ÑÑ‚Ð°Ñ‚ÑƒÑ Ñ–Ð½ÑˆÐ¾Ð³Ð¾ кориÑтувача."
@@ -628,61 +653,65 @@ msgstr "Ðе можу повторити Ваш влаÑний допиÑ."
msgid "Already repeated that notice."
msgstr "Цей Ð´Ð¾Ð¿Ð¸Ñ Ð²Ð¶Ðµ повторено."
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
msgid "Status deleted."
msgstr "Ð¡Ñ‚Ð°Ñ‚ÑƒÑ Ð²Ð¸Ð´Ð°Ð»ÐµÐ½Ð¾."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Ðе знайдено жодних ÑтатуÑів з таким ID."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr "Клієнт муÑить надати параметр «ÑтатуÑ» зі значеннÑм."
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Ðадто довго. МакÑимальний розмір допиÑу — %d знаків."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Ðе знайдено"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Ðе знайдено."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
"МакÑимальна довжина допиÑу Ñтановить %d знаків, включно з URL-адреÑою "
"вкладеннÑ."
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr "Формат не підтримуєтьÑÑ."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s / Обрані від %2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%1$s Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¾Ð±Ñ€Ð°Ð½Ð¸Ñ… від %2$s / %2$s."
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Оновленні відповіді %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "%1$s оновив цю відповідь на Ð´Ð¾Ð¿Ð¸Ñ Ð²Ñ–Ð´ %2$s / %3$s."
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s загальна Ñтрічка"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ уÑÑ–Ñ…!"
@@ -697,19 +726,19 @@ msgstr "Повторено Ð´Ð»Ñ %s"
msgid "Repeats of %s"
msgstr "ÐŸÐ¾Ð²Ñ‚Ð¾Ñ€ÐµÐ½Ð½Ñ %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "ДопиÑи позначені з %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ñ– з %1$s на %2$s!"
-#: actions/apiusershow.php:96
-msgid "Not found."
-msgstr "Ðе знайдено."
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API метод наразі знаходитьÑÑ Ñƒ розробці."
#: actions/attachment.php:73
msgid "No such attachment."
@@ -730,8 +759,9 @@ msgstr "Ðемає розміру."
msgid "Invalid size."
msgstr "ÐедійÑний розмір."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Ðватара"
@@ -741,10 +771,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "Ви можете завантажити аватару. МакÑимальний розмір %s."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
-msgstr "КориÑтувач з невідповідним профілем"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
+msgstr "КориÑтувач без відповідного профілю."
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
#: actions/grouplogo.php:254
@@ -762,7 +792,7 @@ msgid "Preview"
msgstr "ПереглÑд"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr "Видалити"
@@ -774,23 +804,27 @@ msgstr "Завантажити"
msgid "Crop"
msgstr "Ð’Ñ‚Ñти"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr "Жодного файлу не завантажено."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "Оберіть квадратну ділÑнку зображеннÑ, Ñка й буде Вашою автарою."
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "Дані Вашого файлу деÑÑŒ загубилиÑÑŒ."
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Ðватару оновлено."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€Ð¸ невдале."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
msgid "Avatar deleted."
msgstr "Ðватару видалено."
@@ -798,41 +832,56 @@ msgstr "Ðватару видалено."
msgid "You already blocked that user."
msgstr "Цього кориÑтувача вже заблоковано."
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
msgstr "Блокувати кориÑтувача"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
"Впевнені, що бажаєте блокувати цього кориÑтувача? ПозаÑк, його буде "
-"відпиÑано від ВаÑ, він не зможе підпиÑитаÑÑ‚ÑŒ до Ð’Ð°Ñ Ñƒ майбутньому Ñ– Ви "
-"більше не отримуватимете жодних допиÑів від нього."
-
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+"відпиÑано від ВаÑ, він не зможе підпиÑатиÑÑŒ до Ð’Ð°Ñ Ñƒ майбутньому Ñ– Ви більше "
+"не отримуватимете жодних допиÑів від нього."
+
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr "ÐÑ–"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
msgid "Do not block this user"
msgstr "Ðе блокувати цього кориÑтувача"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Так"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
msgid "Block this user"
msgstr "Блокувати кориÑтувача"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "Ð—Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— про Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð°Ð²ÐµÑ€ÑˆÐ¸Ð»Ð¾ÑÑŒ невдачею."
@@ -845,8 +894,8 @@ msgstr "Ð—Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— про Ð±Ð»Ð¾ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð·
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "Такої групи немає."
@@ -876,9 +925,11 @@ msgstr "Розблокувати"
msgid "Unblock this user"
msgstr "Розблокувати цього кориÑтувача"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr "ÐапиÑати "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
+msgstr "Опублікувати в %s"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -892,43 +943,53 @@ msgstr "Код Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ знайдено."
msgid "That confirmation code is not for you!"
msgstr "Цей код Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ Ð´Ð»Ñ Ð’Ð°Ñ!"
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
-msgstr "Ðевизначений тип адреÑи %s"
+msgid "Unrecognized address type %s."
+msgstr "Ðевизначений тип адреÑи %s."
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
-msgstr "Цю адреÑу вже було підтверджено."
-
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+msgstr "Цю адреÑу вже підтверджено."
+
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ кориÑтувача."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð¿Ð¾ÑˆÑ‚Ð¾Ð²Ð¾Ñ— адреÑи."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
msgid "Confirm address"
msgstr "Підтвердити адреÑу"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
-msgstr "ÐдреÑу \"%s\" було підтверджено Ð´Ð»Ñ Ð’Ð°ÑˆÐ¾Ð³Ð¾ акаунту."
+msgstr "ÐдреÑу «%s» підтверджено Ð´Ð»Ñ Ð’Ð°ÑˆÐ¾Ð³Ð¾ акаунту."
#: actions/conversation.php:99
msgid "Conversation"
msgstr "Розмова"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "ДопиÑи"
@@ -947,7 +1008,7 @@ msgstr "Ви не Ñ” влаÑником цього додатку."
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr "Виникли певні проблеми з токеном поточної ÑеÑÑ–Ñ—."
@@ -965,21 +1026,23 @@ msgstr ""
"інформацію ÑтоÑовно нього, включно із даними про під’єднаних до цього "
"додатку кориÑтувачів."
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
msgid "Do not delete this application"
msgstr "Ðе видалÑти додаток"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
msgid "Delete this application"
msgstr "Видалити додаток"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Ðе увійшли."
@@ -1002,11 +1065,13 @@ msgstr "Видалити допиÑ"
msgid "Are you sure you want to delete this notice?"
msgstr "Ви впевненні, що бажаєте видалити цей допиÑ?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
msgid "Do not delete this notice"
msgstr "Ðе видалÑти цей допиÑ"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr "Видалити допиÑ"
@@ -1030,58 +1095,69 @@ msgstr ""
"Впевнені, що бажаєте видалити цього кориÑтувача? УÑÑ– дані буде знищено без "
"можливоÑÑ‚Ñ– відновленнÑ."
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
msgid "Delete this user"
msgstr "Видалити цього кориÑтувача"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr "Дизайн"
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¸Ð·Ð°Ð¹Ð½Ñƒ Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ñайту StatusNet."
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
msgid "Invalid logo URL."
msgstr "Помилкова URL-адреÑа логотипу."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, php-format
-msgid "Theme not available: %s"
-msgstr "Тема не доÑтупна: %s"
+msgid "Theme not available: %s."
+msgstr "Тема недоÑтупна: %s."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
msgid "Change logo"
msgstr "Змінити логотип"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
msgid "Site logo"
msgstr "Логотип Ñайту"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
msgid "Change theme"
msgstr "Змінити тему"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
msgid "Site theme"
msgstr "Тема Ñайту"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr "Тема Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ Ñайту."
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+msgid "Custom theme"
+msgstr "Ð¡Ð²Ð¾Ñ Ñ‚ÐµÐ¼Ð°"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr "Ви можете завантажити Ñвою тему Ð´Ð»Ñ Ñайту StatusNet Ñк .ZIP архів."
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr "Змінити фонове зображеннÑ"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr "Фон"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1090,67 +1166,76 @@ msgstr ""
"Ви можете завантажити фонове Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ñайту. МакÑимальний розмір файлу "
"%1$s."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr "Увімк."
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr "Вимк."
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr "Увімкнути або вимкнути фонове зображеннÑ."
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr "ЗамоÑтити фон"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
msgid "Change colours"
msgstr "Змінити кольори"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
msgid "Content"
msgstr "ЗміÑÑ‚"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr "Бічна панель"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "ТекÑÑ‚"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
msgid "Links"
msgstr "ПоÑиланнÑ"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr "Додатково"
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr "Свій CSS"
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr "За замовч."
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr "Оновити Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð° замовчуваннÑм"
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr "ПовернутиÑÑŒ до початкових налаштувань"
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "Зберегти"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr "Зберегти дизайн"
@@ -1255,11 +1340,17 @@ msgstr "СкориÑтайтеÑÑŒ цією формою, щоб відредаÐ
msgid "description is too long (max %d chars)."
msgstr "Ð¾Ð¿Ð¸Ñ Ð½Ð°Ð´Ñ‚Ð¾ довгий (%d знаків макÑимум)."
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Помилкове додаткове ім’Ñ: «%s»"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ групу."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
msgid "Could not create aliases."
msgstr "Ðеможна призначити додаткові імена."
@@ -1267,31 +1358,42 @@ msgstr "Ðеможна призначити додаткові імена."
msgid "Options saved."
msgstr "Опції збережено."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
msgid "Email settings"
msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ð¾ÑˆÑ‚Ð¸"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Зазначте, Ñк Ñаме Ви бажаєте отримувати лиÑти з %%site.name%%."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ÐдреÑа"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+msgid "Email address"
+msgstr "Електронна адреÑа"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Поточна підтверджена поштова адреÑа."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Видалити"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1299,106 +1401,136 @@ msgstr ""
"ÐžÑ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ñ†Ñ–Ñ”Ñ— адреÑи. Перевірте вхідну пошту (Ñ– теку зі "
"Ñпамом також!), там має бути Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· подальшими інÑтрукціÑми."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "СкаÑувати"
-#: actions/emailsettings.php:121
-msgid "Email address"
-msgstr "Електронна адреÑа"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
-msgstr "Електронна адреÑа, на зразок \"UserName@example.org\""
+msgstr "Електронна адреÑа, на зразок «UserName@example.org»"
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+msgctxt "BUTTON"
msgid "Add"
msgstr "Додати"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "Вхідна пошта"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "ÐадÑилайте допиÑи на цю адреÑу Ñ– Ñ—Ñ… буде опубліковано на Ñайті."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Створити нову адреÑу Ð´Ð»Ñ Ð½Ð°Ð´ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ; видалити Ñтару."
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr "Ðове"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr "Преференції"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+msgid "Email preferences"
+msgstr "Преференції ел. пошти"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "ПоівдомлÑти мене поштою про нові підпиÑки."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "ÐадÑилати мені лиÑта, коли хтоÑÑŒ додає мій Ð´Ð¾Ð¿Ð¸Ñ Ð´Ð¾ ÑпиÑку обраних."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "ÐадÑилати мені лиÑта, коли хтоÑÑŒ має приватне Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ Ð¼ÐµÐ½Ðµ."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
-msgstr "ÐадÑилати мені лиÑта, коли на мій Ð´Ð¾Ð¿Ð¸Ñ Ð·â€™ÑвлÑєтьÑÑ \"@-відповідь\"."
+msgstr "ÐадÑилати мені лиÑта, коли на мій Ð´Ð¾Ð¿Ð¸Ñ Ð·â€™ÑвлÑєтьÑÑ Â«@-відповідь»."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "Дозволити друзÑм «розштовхати» мене, надіÑлавши мені лиÑта."
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Я хочу надÑилати допиÑи поштою."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Позначати міткою MicroID мою електронну адреÑу."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "Преференції збережно."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
+msgstr "Преференції пошти збережно."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Ðемає електронної адреÑи."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "Ðе можна полагодити цю поштову адреÑу"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Це недійÑна електронна адреÑа."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "Це Ñ– Ñ” Вашою адреÑою."
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "Ð¦Ñ ÐµÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð° адреÑа належить іншому кориÑтувачу."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Ðе вдалоÑÑ Ð´Ð¾Ð´Ð°Ñ‚Ð¸ код підтвердженнÑ."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1407,43 +1539,53 @@ msgstr ""
"Перевірте вхідну пошту (Ñ– теку зі Ñпамом також!), там має бути код та "
"подальші інÑтрукції."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Ðе очікуєтьÑÑ Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ ÑкаÑуваннÑ."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr "Це помилкова адреÑа IM."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+msgid "That is the wrong email address."
+msgstr "Це помилкова адреÑа електронної пошти."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
-msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ ÑкаÑовано."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+msgid "Email confirmation cancelled."
+msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð¾Ñ— пошти ÑкаÑовано."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "Це не Ñ” Вашою адреÑою."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr "ÐдреÑу було видалено."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+msgid "The email address was removed."
+msgstr "ÐдреÑа була видалена."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "Ðемає адреÑи Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¾Ñ— пошти."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "Ðе вдалоÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ Ð·Ð°Ð¿Ð¸Ñ ÐºÐ¾Ñ€Ð¸Ñтувача."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "ÐдреÑу вхідної пошти видалено."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "Ðову адреÑу Ð´Ð»Ñ Ð²Ñ…Ñ–Ð´Ð½Ð¸Ñ… повідомлень додано."
@@ -1560,9 +1702,9 @@ msgstr "Ðе вдалоÑÑ Ð¿ÐµÑ€ÐµÑ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ð¸ токени запиту нÐ
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Ðевідома верÑÑ–Ñ Ð¿Ñ€Ð¾Ñ‚Ð¾ÐºÐ¾Ð»Ñƒ OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
-msgstr "Помилка при оновленні віддаленого профілю"
+#: actions/finishremotesubscribe.php:138
+msgid "Error updating remote profile."
+msgstr "Помилка при оновленні віддаленого профілю."
#: actions/getfile.php:79
msgid "No such file."
@@ -1590,13 +1732,13 @@ msgstr "КориÑтувач вже має цю роль."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr "Ðе визначено жодного профілю."
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr "Ðе визначено профілю з таким ID."
@@ -1617,11 +1759,11 @@ msgstr "КориÑтувача заблоковано в цій групі."
msgid "User is not a member of group."
msgstr "КориÑтувач не Ñ” учаÑником групи."
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
msgid "Block user from group"
msgstr "Блокувати кориÑтувача в групі"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1632,15 +1774,17 @@ msgstr ""
"позбавлено членÑтва в групі, він не зможе Ñюди пиÑати, Ñ– не зможе вÑтупити "
"до групи знов."
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
msgid "Do not block this user from this group"
msgstr "Ðе блокувати кориÑтувача в групі"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
msgid "Block this user from this group"
msgstr "Блокувати кориÑтувача цієї групи"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr "Виникла помилка при блокуванні кориÑтувача в цій групі."
@@ -1685,10 +1829,6 @@ msgstr ""
"Ви маєте можливіÑÑ‚ÑŒ завантажити логотип Ð´Ð»Ñ Ð’Ð°ÑˆÐ¾Ñ— группи. МакÑимальний "
"розмір файлу %s."
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr "КориÑтувач без відповідного профілю."
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr "Оберіть квадратну ділÑнку зображеннÑ, Ñка й буде логотипом групи."
@@ -1719,34 +1859,38 @@ msgstr "СпиÑок учаÑників цієї групи."
msgid "Admin"
msgstr "Ðдмін"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "Блок"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr "Ðадати кориÑтувачеві права адмініÑтратора"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr "Зробити адміном"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr "Ðадати цьому кориÑтувачеві права адмініÑтратора"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s Ñтрічка"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ñ‡Ð»ÐµÐ½Ñ–Ð² %1$s на %2$s!"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "Групи"
@@ -1767,11 +1911,11 @@ msgid ""
msgstr ""
"Групи на Ñайті %%%%site.name%%%% дозволÑÑ‚ÑŒ Вам відшукати людей зі Ñпільними "
"інтереÑами. Лише приєднайтеÑÑ Ð´Ð¾ групи Ñ– надÑилайте Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð¾ уÑÑ–Ñ… Ñ—Ñ— "
-"учаÑників викориÑтовуючи проÑту команду \"!groupname\" у текÑÑ‚Ñ– "
-"повідомленнÑ. Ðе бачите групу, Ñка Ð’Ð°Ñ Ñ†Ñ–ÐºÐ°Ð²Ð¸Ñ‚ÑŒ? Спробуйте Ñ—Ñ— [знайти](%%%%"
-"action.groupsearch%%%%) або [Ñтворіть влаÑну!](%%%%action.newgroup%%%%)"
+"учаÑників викориÑтовуючи проÑту команду «!groupname» у текÑÑ‚Ñ– повідомленнÑ. "
+"Ðе бачите групу, Ñка Ð’Ð°Ñ Ñ†Ñ–ÐºÐ°Ð²Ð¸Ñ‚ÑŒ? Спробуйте Ñ—Ñ— [знайти](%%%%action."
+"groupsearch%%%%) або [Ñтворіть влаÑну!](%%%%action.newgroup%%%%)"
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
msgid "Create a new group"
msgstr "Створити нову групу"
@@ -1781,7 +1925,7 @@ msgid ""
"Search for groups on %%site.name%% by their name, location, or description. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
-"Пошук груп на %%site.name%% за їхньою назвою, локацією або опиÑом. "
+"Пошук груп на %%site.name%% за їхньою назвою, розташуваннÑм або опиÑом. "
"Відокремлюйте пошукові умови інтервалами; вони повинні ÑкладатиÑÑŒ з 3 знаків "
"або більше."
@@ -1824,11 +1968,15 @@ msgstr "КориÑтувача не блоковано."
msgid "Error removing the block."
msgstr "Помилка при розблокуванні."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
msgid "IM settings"
msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð†Ðœ"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1837,15 +1985,24 @@ msgstr ""
"Ви можете надÑилати та отримувати допиÑи через Jabber/GTalk [Ñлужбу миттєвих "
"повідомлень](%%doc.im%%). Вкажить Ñвою адреÑу Ñ– налаштуйте опції нижче."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
msgid "IM is not available."
msgstr "ІМ недоÑтупний"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+msgid "IM address"
+msgstr "ІМ-адреÑа"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Поточна підтверджена адреÑа Jabber/GTalk."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1855,59 +2012,78 @@ msgstr ""
"туди має надійти Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· подальшими інÑтрукціÑми. (Ви додали %s до "
"Вашого ÑпиÑку контактів?)"
-#: actions/imsettings.php:124
-msgid "IM address"
-msgstr "ІМ-адреÑа"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-"Jabber або GTalk адреÑа, на зразок \"UserName@example.org\". Ðле Ñпершу "
+"Jabber або GTalk адреÑа, на зразок «UserName@example.org». Ðле Ñпершу "
"переконайтеÑÑ, що додали %s до ÑпиÑку контактів в Ñвоєму IM-клієнті або в "
"GTalk."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr "Преференції ІМ"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "ПовідомлÑти мене через Jabber/GTalk."
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "ÐадÑилати допиÑи на Ñайт, коли мій ÑÑ‚Ð°Ñ‚ÑƒÑ Jabber/GTalk змінюєтьÑÑ."
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"ÐадÑилати також мені відповіді через Jabber/GTalk від людей, до Ñких Ñ Ð½Ðµ "
"підпиÑаний."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Позначати міткою MicroID мою адреÑу Jabber/GTalk."
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Преференції збережно."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Ðемає Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Ðе можна полагодити цей Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Це недійÑний Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Це і є Ваш Jabber ID."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID вже належить іншому кориÑтувачу."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -1916,10 +2092,32 @@ msgstr ""
"Код Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð±ÑƒÐ² відправлений на адреÑу IM, Ñку Ви додали. Ви повинні "
"затведити %s Ð´Ð»Ñ Ð²Ñ–Ð´Ð¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ð°Ð¼ повідомлень."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Це помилкова адреÑа IM."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+msgid "Couldn't delete IM confirmation."
+msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð†Ðœ."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+msgid "IM confirmation cancelled."
+msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð†Ðœ ÑкаÑовано."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Це не Ваш Jabber ID."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr "ÐдреÑа ІМ була видалена."
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1941,8 +2139,8 @@ msgstr "Ð—Ð°Ð¿Ñ€Ð¾ÑˆÐµÐ½Ð½Ñ Ð±ÑƒÐ»Ð¸ ÑкаÑовані."
#: actions/invite.php:41
#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr "Ви маєте Ñпочатку увійти, аби мати змогу запроÑити когоÑÑŒ до %s"
+msgid "You must be logged in to invite other users to use %s."
+msgstr "Ви маєте Ñпочатку увійти, аби мати змогу запроÑити когоÑÑŒ до %s."
#: actions/invite.php:72
#, php-format
@@ -1961,7 +2159,9 @@ msgstr "ЗапроÑити нових кориÑтувачів"
msgid "You are already subscribed to these users:"
msgstr "Ви вже підпиÑані до цих кориÑтувачів:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2013,12 +2213,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "ÐадіÑлати"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s запроÑив(ла) Ð’Ð°Ñ Ð¿Ñ€Ð¸Ñ”Ð´Ð½Ð°Ñ‚Ð¸ÑÑ Ð´Ð¾ нього(неї) на %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2084,7 +2286,9 @@ msgstr "Ви повинні Ñпочатку увійти на Ñайт, аби
msgid "No nickname or ID."
msgstr "Ðемає імені або ІД."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr "%1$s приєднавÑÑ Ð´Ð¾ групи %2$s"
@@ -2093,50 +2297,52 @@ msgstr "%1$s приєднавÑÑ Ð´Ð¾ групи %2$s"
msgid "You must be logged in to leave a group."
msgstr "Ви повинні Ñпочатку увійти на Ñайт, аби залишити групу."
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr "Ви не Ñ” учаÑником цієї групи."
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s залишив групу %2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Тепер Ви увійшли."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Ðеточне Ñ–Ð¼â€™Ñ Ð°Ð±Ð¾ пароль."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr "Помилка. Можливо, Ви не авторизовані."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Увійти"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "Вхід на Ñайт"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Пам’Ñтати мене"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr ""
"Ðвтоматично входити у майбутньому; не Ð´Ð»Ñ ÐºÐ¾Ð¼Ð¿â€™ÑŽÑ‚ÐµÑ€Ñ–Ð² загального "
"кориÑтуваннÑ!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Загубили або забули пароль?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2144,14 +2350,17 @@ msgstr ""
"З міркувань безпеки, будь лаÑка, введіть ще раз Ñ–Ð¼â€™Ñ Ñ‚Ð° пароль, перед тим Ñк "
"змінювати налаштуваннÑ."
-#: actions/login.php:270
+#: actions/login.php:292
+msgid "Login with your username and password."
+msgstr "Увійти викориÑтовуючи Ñ–Ð¼â€™Ñ Ñ‚Ð° пароль."
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
-"Увійти викриÑтовуючи Ñ–Ð¼â€™Ñ Ñ‚Ð° пароль. Ще не маєте імені кориÑтувача? "
-"[ЗареєÑтрувати](%%action.register%%) новий акаунт."
+"Ще не маєте імені кориÑтувача? [ЗареєÑтрувати](%%action.register%%) новий "
+"акаунт."
#: actions/makeadmin.php:92
msgid "Only an admin can make another user an admin."
@@ -2174,8 +2383,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "Ðе можна надати %1$s права адміна в групі %2$s."
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr "ÐÑ–Ñкого поточного ÑтатуÑу"
+msgid "No current status."
+msgstr "Жодного поточного ÑтатуÑу."
#: actions/newapplication.php:52
msgid "New Application"
@@ -2209,12 +2418,12 @@ msgstr "СкориÑтайтеÑÑŒ цією формою Ð´Ð»Ñ Ñтворенн
msgid "New message"
msgstr "Ðове повідомленнÑ"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "Ви не можете надіÑлати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð¼Ñƒ кориÑтувачеві."
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Ðемає зміÑту!"
@@ -2222,7 +2431,7 @@ msgstr "Ðемає зміÑту!"
msgid "No recipient specified."
msgstr "Жодного отримувача не визначено."
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2237,7 +2446,7 @@ msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð´Ñ–Ñлано"
msgid "Direct message to %s sent."
msgstr "ПрÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ %s надіÑлано."
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Помилка в Ajax"
@@ -2245,7 +2454,7 @@ msgstr "Помилка в Ajax"
msgid "New notice"
msgstr "Ðовий допиÑ"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð½Ð°Ð´Ñ–Ñлано"
@@ -2288,16 +2497,16 @@ msgstr ""
#: actions/noticesearchrss.php:96
#, php-format
msgid "Updates with \"%s\""
-msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð· \"%s\""
+msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð· «%s»"
#: actions/noticesearchrss.php:98
#, php-format
msgid "Updates matching search term \"%1$s\" on %2$s!"
-msgstr "Ð’ÑÑ– Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð° збігом з \"%s\" на %2$s!"
+msgstr "Ð’ÑÑ– Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð·Ð° збігом з «%s» на %2$s!"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
"Цей кориÑтувач не дозволив Ñебе «розштовхувати», або не підтвердив чи не "
"налаштував преференції електронної пошти."
@@ -2341,11 +2550,11 @@ msgid "You are not a user of that application."
msgstr "Ви не Ñ” кориÑтувачем даного додатку."
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
-msgstr "Ðе вдалоÑÑ ÑкаÑувати доÑтуп Ð´Ð»Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÑƒ: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
+msgstr "Ðе вдалоÑÑ ÑкаÑувати доÑтуп Ð´Ð»Ñ Ð´Ð¾Ð´Ð°Ñ‚ÐºÑƒ: %s."
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr "Ви не дозволили жодним додаткам викориÑтовувати Ваш акаунт."
@@ -2353,25 +2562,30 @@ msgstr "Ви не дозволили жодним додаткам викориÑ
msgid "Developers can edit the registration settings for their applications "
msgstr "Розробники можуть змінити Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñ€ÐµÑ”Ñтрації Ð´Ð»Ñ Ñ—Ñ…Ð½Ñ–Ñ… додатків "
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð½Ðµ має профілю"
+#: actions/oembed.php:80 actions/shownotice.php:100
+msgid "Notice has no profile."
+msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð½Ðµ має профілю."
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s має ÑÑ‚Ð°Ñ‚ÑƒÑ Ð½Ð° %2$s"
-#: actions/oembed.php:157
-msgid "content type "
-msgstr "тип зміÑту "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, php-format
+msgid "Content type %s not supported."
+msgstr "Тип зміÑту %s не підтримуєтьÑÑ."
-#: actions/oembed.php:160
-msgid "Only "
-msgstr "Лише "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
+msgstr "URL-адреÑа %s лише в проÑтому HTTP, будь лаÑка."
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Такий формат даних не підтримуєтьÑÑ."
@@ -2393,11 +2607,11 @@ msgstr "ÐšÐµÑ€ÑƒÐ²Ð°Ð½Ð½Ñ Ð´ÐµÑкими іншими опціÑми."
#: actions/othersettings.php:108
msgid " (free service)"
-msgstr " (безкоштовно)"
+msgstr " (вільний ÑервіÑ)"
#: actions/othersettings.php:116
msgid "Shorten URLs with"
-msgstr "Зручні URL"
+msgstr "Ð¡ÐºÐ¾Ñ€Ð¾Ñ‡ÐµÐ½Ð½Ñ URL"
#: actions/othersettings.php:117
msgid "Automatic shortening service to use."
@@ -2476,7 +2690,7 @@ msgid "6 or more characters"
msgstr "6 або більше знаків"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Підтвердити"
@@ -2488,11 +2702,11 @@ msgstr "Такий Ñамо, Ñк Ñ– пароль вище"
msgid "Change"
msgstr "Змінити"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "Пароль має ÑкладатиÑÑŒ з 6-ти або більше знаків."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Паролі не Ñпівпадають."
@@ -2504,7 +2718,7 @@ msgstr "Старий пароль є неточним"
msgid "Error saving user; invalid."
msgstr "Помилка при збереженні кориÑтувача; недійÑний."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Ðеможна зберегти новий пароль."
@@ -2513,7 +2727,7 @@ msgid "Password saved."
msgstr "Пароль збережено."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr "ШлÑÑ…"
@@ -2523,23 +2737,23 @@ msgstr "ШлÑÑ… та Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ñерверу Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾
#: actions/pathsadminpanel.php:157
#, php-format
-msgid "Theme directory not readable: %s"
-msgstr "Дирикторію теми неможна прочитати: %s"
+msgid "Theme directory not readable: %s."
+msgstr "Директорію теми не можна прочитати: %s."
#: actions/pathsadminpanel.php:163
#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr "ЩоÑÑŒ не так із напиÑаннÑм директорії аватари: %s"
+msgid "Avatar directory not writable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ñ–Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€Ñ–Ð² не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу: %s."
#: actions/pathsadminpanel.php:169
#, php-format
-msgid "Background directory not writable: %s"
-msgstr "ЩоÑÑŒ не так із напиÑаннÑм директорії фону: %s"
+msgid "Background directory not writable: %s."
+msgstr "Ð”Ð¸Ñ€ÐµÐºÑ‚Ð¾Ñ€Ñ–Ñ Ñ„Ð¾Ð½Ð¾Ð²Ð¸Ñ… зображень не доÑтупна Ð´Ð»Ñ Ð·Ð°Ð¿Ð¸Ñу:% s."
#: actions/pathsadminpanel.php:177
#, php-format
-msgid "Locales directory not readable: %s"
-msgstr "Ðе можу прочитати директорію локалі: %s"
+msgid "Locales directory not readable: %s."
+msgstr "Ðе можна прочитати директорію локалі: %s."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2671,7 +2885,7 @@ msgid ""
"Search for people on %%site.name%% by their name, location, or interests. "
"Separate the terms by spaces; they must be 3 characters or more."
msgstr ""
-"Пошук людей на %%site.name%% за Ñ—Ñ… ім’Ñм, локацією або інтереÑами. "
+"Пошук людей на %%site.name%% за Ñ—Ñ… ім’Ñм, розташуваннÑм або інтереÑами. "
"Відокремлюйте пошукові умови інтервалами; вони повинні ÑкладатиÑÑŒ з 3 знаків "
"або більше."
@@ -2679,19 +2893,19 @@ msgstr ""
msgid "People search"
msgstr "Пошук людей"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, php-format
-msgid "Not a valid people tag: %s"
-msgstr "Це недійÑний оÑобиÑтий теґ: %s"
+msgid "Not a valid people tag: %s."
+msgstr "Це недійÑний оÑобиÑтий теґ: %s."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "КориÑтувачі з оÑобиÑтим теґом %1$s — Ñторінка %2$d"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr "ÐедійÑний зміÑÑ‚ допиÑу"
+msgid "Invalid notice content."
+msgstr "ÐедійÑний зміÑÑ‚ допиÑу."
#: actions/postnotice.php:101
#, php-format
@@ -2717,52 +2931,53 @@ msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
"1-64 літери нижнього регіÑтру Ñ– цифри, ніÑкої пунктуації або інтервалів"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Повне ім’Ñ"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Веб-Ñторінка"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL-адреÑа Вашої веб-Ñторінки, блоґу, або профілю на іншому Ñайті"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Опишіть Ñебе та Ñвої інтереÑи (%d знаків)"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
msgid "Describe yourself and your interests"
msgstr "Опишіть Ñебе та Ñвої інтереÑи"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Про Ñебе"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "РозташуваннÑ"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
-msgstr "Де Ви живете, штибу \"МіÑто, облаÑÑ‚ÑŒ (регіон), країна\""
+msgstr "Де Ви живете, на кшталт «МіÑто, облаÑÑ‚ÑŒ (регіон), країна»"
#: actions/profilesettings.php:138
msgid "Share my current location when posting notices"
-msgstr "Показувати мою поточну локацію при надÑиланні допиÑів"
+msgstr "Показувати моє міÑÑ†ÐµÐ·Ð½Ð°Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ надÑиланні допиÑів"
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Теґи"
@@ -2795,7 +3010,7 @@ msgid ""
msgstr ""
"Ðвтоматично підпиÑуватиÑÑŒ до тих, хто підпиÑавÑÑ Ð´Ð¾ мене. (Слава роботам!)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Ви перевищили ліміт (%d знаків макÑимум)."
@@ -2811,7 +3026,7 @@ msgstr "Мова задовга (50 знаків макÑимум)."
#: actions/profilesettings.php:253 actions/tagother.php:178
#, php-format
msgid "Invalid tag: \"%s\""
-msgstr "ÐедійÑний теґ: \"%s\""
+msgstr "ÐедійÑний теґ: «%s»"
#: actions/profilesettings.php:306
msgid "Couldn't update user for autosubscribe."
@@ -2836,8 +3051,8 @@ msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð±ÐµÑ€ÐµÐ¶ÐµÐ½Ð¾."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
-msgstr "ДоÑÑгнуто ліміту Ñторінки (%s)"
+msgid "Beyond the page limit (%s)."
+msgstr "Перевищено ліміт Ñторінки (%s)."
#: actions/public.php:92
msgid "Could not retrieve public stream."
@@ -2846,7 +3061,7 @@ msgstr "Ðе вдаєтьÑÑ Ð²Ñ–Ð´Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ загальну Ñтрічку
#: actions/public.php:130
#, php-format
msgid "Public timeline, page %d"
-msgstr "Загальний Ñтрічка, Ñторінка %d"
+msgstr "Загальна Ñтрічка, Ñторінка %d"
#: actions/public.php:132 lib/publicgroupnav.php:79
msgid "Public timeline"
@@ -2893,7 +3108,7 @@ msgid ""
"friends, family, and colleagues! ([Read more](%%doc.help%%))"
msgstr ""
"Це %%site.name%% — ÑÐµÑ€Ð²Ñ–Ñ [мікроблоґів](http://uk.wikipedia.org/wiki/"
-"Мікроблоґ), Ñкий працює на вільному програмному забезпеченні [StatusNet]"
+"Мікроблогінг), Ñкий працює на вільному програмному забезпеченні [StatusNet]"
"(http://status.net/). [ПриєднуйтеÑÑŒ](%%action.register%%) зараз Ñ– зможете "
"розділити Ñвоє Ð¶Ð¸Ñ‚Ñ‚Ñ Ð· друзÑми, родиною Ñ– колегами! ([ДізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ](%%"
"doc.help%%))"
@@ -2906,7 +3121,7 @@ msgid ""
"tool."
msgstr ""
"Це %%site.name%% — ÑÐµÑ€Ð²Ñ–Ñ [мікроблоґів](http://uk.wikipedia.org/wiki/"
-"Мікроблоґ), Ñкий працює на вільному програмному забезпеченні [StatusNet]"
+"Мікроблогінг), Ñкий працює на вільному програмному забезпеченні [StatusNet]"
"(http://status.net/)."
#: actions/publictagcloud.php:57
@@ -3005,7 +3220,7 @@ msgstr "Скинути пароль"
msgid "Recover password"
msgstr "Відновити пароль"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Запит на Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð¾Ð»ÑŽ відправлено"
@@ -3025,19 +3240,19 @@ msgstr "Скинути"
msgid "Enter a nickname or email address."
msgstr "Введіть Ñ–Ð¼â€™Ñ Ð°Ð±Ð¾ електронну адреÑу."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "КориÑтувача з такою електронною адреÑою або ім’Ñм немає."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Ð”Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ кориÑтувача немає зареєÑтрованої електронної адреÑи."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Помилка при збереженні Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð°Ð´Ñ€ÐµÑи."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3045,111 +3260,127 @@ msgstr ""
"ІнÑтрукції з Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð¾Ð»ÑŽ було надіÑлано на електронну адреÑу, Ñку Ви "
"вказали у налаштуваннÑÑ… Вашого профілю."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "ÐеÑподіване ÑÐºÐ¸Ð´Ð°Ð½Ð½Ñ Ð¿Ð°Ñ€Ð¾Ð»ÑŽ."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Пароль має ÑкладатиÑÑŒ з 6-ти або більше знаків."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Пароль та Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ Ñпівпадають."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Помилка в налаштуваннÑÑ… кориÑтувача."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Ðовий пароль уÑпішно збережено. Тепер Ви увійшли."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
"Пробачте, але лише Ñ‚Ñ–, кого було запрошено, мають змогу зареєÑтруватиÑÑŒ тут."
-#: actions/register.php:92
+#: actions/register.php:99
msgid "Sorry, invalid invitation code."
msgstr "Даруйте, помилка у коді запрошеннÑ."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "РеєÑÑ‚Ñ€Ð°Ñ†Ñ–Ñ ÑƒÑпішна"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "РеєÑтраціÑ"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "РеєÑтрацію не дозволено."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Ви не зможете зареєÑтруватиÑÑŒ, Ñкщо не погодитеÑÑŒ з умовами ліцензії."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Ð¦Ñ Ð°Ð´Ñ€ÐµÑа вже викориÑтовуєтьÑÑ."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "ÐедійÑне Ñ–Ð¼â€™Ñ Ð°Ð±Ð¾ пароль."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-"Ð¦Ñ Ñ„Ð¾Ñ€Ð¼Ð° дозволить Ñтворити новий акаунт. Ви зможете робити допиÑи Ñ– будете "
-"в курÑÑ– Ñправ Ваших друзів та колег. "
+"Ð¦Ñ Ñ„Ð¾Ñ€Ð¼Ð° дозволить вам Ñтворити новий акаунт. Ви зможете робити допиÑи Ñ– "
+"будете в курÑÑ– Ñправ ваших друзів та колег. "
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 літери нижнього регіÑтра Ñ– цифри, ніÑкої пунктуації або інтервалів. "
"Ðеодмінно."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 або більше знаків. Ðеодмінно."
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Такий Ñамо, Ñк Ñ– пароль вище. Ðеодмінно."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Пошта"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "ВикориÑтовуєтьÑÑ Ð»Ð¸ÑˆÐµ Ð´Ð»Ñ Ð¾Ð½Ð¾Ð²Ð»ÐµÐ½ÑŒ, оголошень та Ð²Ñ–Ð´Ð½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð¿Ð°Ñ€Ð¾Ð»ÑŽ"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "Повне ім’Ñ, звіÑно ж Ваше Ñправжнє Ñ–Ð¼â€™Ñ :)"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Мої Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ‚Ð° файли доÑтупні під "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr "Я розумію, що зміÑÑ‚ Ñ– дані %1$s Ñ” приватними Ñ– конфіденційними."
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
-msgstr "Кріейтів ÐšÐ¾Ð¼Ð¾Ð½Ñ ÐвторÑтво 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
+msgstr "ÐвторÑькі права на мої текÑти Ñ– файли належать %1$s."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr "ÐвторÑькі права на мої текÑти Ñ– файли залишаютьÑÑ Ð·Ð° мною."
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr "Ð’ÑÑ– права захищені."
-#: actions/register.php:497
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr ""
-" окрім цих приватних даних: пароль, електронна адреÑа, адреÑа IM, телефонний "
-"номер."
+"Мої текÑти Ñ– файли доÑтупні під %s, окрім цих приватних даних: пароль, "
+"електронна адреÑа, адреÑа IM, телефонний номер."
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3182,7 +3413,7 @@ msgstr ""
"ДÑкуємо, що зареєÑтрувалиÑÑŒ у наÑ, Ñ–, ÑподіваємоÑÑŒ, Вам ÑподобаєтьÑÑ Ð½Ð°Ñˆ "
"ÑервіÑ."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3226,7 +3457,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL-адреÑа Вашого профілю на іншому ÑуміÑному ÑервіÑÑ–"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "ПідпиÑатиÑÑŒ"
@@ -3263,7 +3494,7 @@ msgstr "Ви не можете повторювати Ñвої влаÑні до
msgid "You already repeated that notice."
msgstr "Ви вже повторили цей допиÑ."
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
msgid "Repeated"
msgstr "Повторено"
@@ -3301,7 +3532,7 @@ msgstr "Стрічка відповідей до %s (Atom)"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
"Ð¦Ñ Ñтрічка допиÑів міÑтить відповіді Ð´Ð»Ñ %1$s, але %2$s поки що нічого не "
"отримав у відповідь."
@@ -3318,8 +3549,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
"Ви можете [«розштовхати» %1$s](../%2$s) або [напиÑати дещо варте його уваги](%"
"%%%action.newnotice%%%%?status_textarea=%3$s)."
@@ -3337,7 +3568,7 @@ msgstr "Ви не можете позбавлÑти кориÑтувачів Ñ€Ð
msgid "User doesn't have this role."
msgstr "КориÑтувач не має цієї ролі."
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
msgid "StatusNet"
msgstr "StatusNet"
@@ -3351,7 +3582,7 @@ msgstr "КориÑтувача ізольовано доки наберетьÑÑ
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr "СеÑÑ–Ñ—"
@@ -3388,26 +3619,30 @@ msgstr "Ви повинні Ñпочатку увійти, аби переглÑ
msgid "Application profile"
msgstr "Профіль додатку"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr "Іконка"
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
msgid "Name"
msgstr "Ім’Ñ"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
msgid "Organization"
msgstr "ОрганізаціÑ"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "ОпиÑ"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "СтатиÑтика"
@@ -3496,20 +3731,20 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
-"%s поки що не вподобав жодних допиÑів. Може Ви б напиÑали йому щоÑÑŒ "
+"%s поки що не вподобав жодного допиÑу. Може Ви б напиÑали йому щоÑÑŒ "
"цікаве? :)"
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
-"%s поки що не вподобав жодних допиÑів. Чому б не [зареєÑтруватиÑÑŒ](%%%%"
+"%s поки що не вподобав жодного допиÑу. Чому б не [зареєÑтруватиÑÑŒ](%%%%"
"action.register%%%%) Ñ– не напиÑати щоÑÑŒ цікаве, що мало б ÑподобатиÑÑŒ цьому "
"кориÑтувачеві :)"
@@ -3527,67 +3762,67 @@ msgstr "Група %s"
msgid "%1$s group, page %2$d"
msgstr "Група %1$s, Ñторінка %2$d"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
msgid "Group profile"
msgstr "Профіль групи"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr "ЗауваженнÑ"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr "Додаткові імена"
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "ДіÑльніÑÑ‚ÑŒ групи"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Стрічка допиÑів групи %s (RSS 1.0)"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Стрічка допиÑів групи %s (RSS 2.0)"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Стрічка допиÑів групи %s (Atom)"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "FOAF Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¸ %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "УчаÑники"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(ПуÑто)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "Ð’ÑÑ– учаÑники"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
msgid "Created"
msgstr "Створено"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3597,12 +3832,13 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
"**%s** це група на %%%%site.name%%%% — ÑервіÑÑ– [мікроблоґів](http://uk."
-"wikipedia.org/wiki/Мікроблоґ), Ñкий працює на вільному програмному "
+"wikipedia.org/wiki/Мікроблогінг), Ñкий працює на вільному програмному "
"забезпеченні [StatusNet](http://status.net/). Члени цієї групи роблÑÑ‚ÑŒ "
-"короткі допиÑи про Ñвоє Ð¶Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° інтереÑи. [ПриєднуйтеÑÑŒ](%%action.register%"
-"%) зараз Ñ– долучітьÑÑ Ð´Ð¾ ÑпілкуваннÑ! ([ДізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ](%%doc.help%%))"
+"короткі допиÑи про Ñвоє Ð¶Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° інтереÑи. [ПриєднуйтеÑÑŒ](%%%%action.register"
+"%%%%) зараз Ñ– долучітьÑÑ Ð´Ð¾ ÑпілкуваннÑ! ([ДізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ](%%%%doc.help%%%"
+"%))"
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3610,12 +3846,12 @@ msgid ""
"[StatusNet](http://status.net/) tool. Its members share short messages about "
"their life and interests. "
msgstr ""
-"**%s** це група кориÑтувачів на %%site.name%% — ÑервіÑÑ– [мікроблоґів](http://"
-"uk.wikipedia.org/wiki/Мікроблоґ), Ñкий працює на вільному програмному "
-"забезпеченні [StatusNet](http://status.net/). Члени цієї групи роблÑÑ‚ÑŒ "
-"короткі допиÑи про Ñвоє Ð¶Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° інтереÑи. "
+"**%s** це група кориÑтувачів на %%%%site.name%%%% — ÑервіÑÑ– [мікроблоґів]"
+"(http://uk.wikipedia.org/wiki/Мікроблогінг), Ñкий працює на вільному "
+"програмному забезпеченні [StatusNet](http://status.net/). Члени цієї групи "
+"роблÑÑ‚ÑŒ короткі допиÑи про Ñвоє Ð¶Ð¸Ñ‚Ñ‚Ñ Ñ‚Ð° інтереÑи. "
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr "Ðдміни"
@@ -3692,8 +3928,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
"Ви можете «розштовхати» %1$s або [щоÑÑŒ йому напиÑати](%%%%action.newnotice%%%"
"%?status_textarea=%2$s)."
@@ -3707,10 +3943,10 @@ msgid ""
"follow **%s**'s notices and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
"**%s** кориÑтуєтьÑÑ %%%%site.name%%%% — ÑервіÑом [мікроблоґів](http://uk."
-"wikipedia.org/wiki/Мікроблоґ), Ñкий працює на вільному програмному "
-"забезпеченні [StatusNet](http://status.net/). [ПриєднуйтеÑÑŒ](%%action."
-"register%%) зараз Ñ– Ñлідкуйте за допиÑами **%s**, також на Ð’Ð°Ñ Ñ‡ÐµÐºÐ°Ñ” багато "
-"іншого! ([ДізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ](%%doc.help%%))"
+"wikipedia.org/wiki/Мікроблогінг), Ñкий працює на вільному програмному "
+"забезпеченні [StatusNet](http://status.net/). [ПриєднуйтеÑÑŒ](%%%%action."
+"register%%%%) зараз Ñ– Ñлідкуйте за допиÑами **%s**, також на Ð’Ð°Ñ Ñ‡ÐµÐºÐ°Ñ” "
+"багато іншого! ([ДізнатиÑÑ Ð±Ñ–Ð»ÑŒÑˆÐµ](%%%%doc.help%%%%))"
#: actions/showstream.php:248
#, php-format
@@ -3720,7 +3956,7 @@ msgid ""
"[StatusNet](http://status.net/) tool. "
msgstr ""
"**%s** Ñ” влаÑником акаунту на Ñайті %%%%site.name%%%% — ÑервіÑÑ– [мікроблоґів]"
-"(http://uk.wikipedia.org/wiki/Мікроблоґ), Ñкий працює на вільному "
+"(http://uk.wikipedia.org/wiki/Мікроблогінг), Ñкий працює на вільному "
"програмному забезпеченні [StatusNet](http://status.net/). "
#: actions/showstream.php:305
@@ -3754,14 +3990,14 @@ msgid "Unknown language \"%s\"."
msgstr "Ðевідома мова «%s»."
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
-msgstr "Ліміт текÑтових повідомлень Ñтановить 140 знаків."
+msgid "Minimum text limit is 0 (unlimited)."
+msgstr "Ліміт текÑтових повідомлень Ñтановить 0 (необмежено)."
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
-"ЧаÑове Ð¾Ð±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ð¿Ñ€Ð¸ надÑиланні дублікату Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð°Ñ” Ñтановити від 1 Ñ– "
-"більше Ñекунд."
+"ÐžÐ±Ð¼ÐµÐ¶ÐµÐ½Ð½Ñ Ñ‡Ð°Ñу при повторному надіÑланні того Ñамого Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð¼Ð°Ñ” "
+"Ñтановити одну Ñ– більше Ñекунд."
#: actions/siteadminpanel.php:221
msgid "General"
@@ -3773,7 +4009,7 @@ msgstr "Ðазва Ñайту"
#: actions/siteadminpanel.php:225
msgid "The name of your site, like \"Yourcompany Microblog\""
-msgstr "Ðазва Вашого Ñайту, штибу \"Мікроблоґи компанії ...\""
+msgstr "Ðазва Вашого Ñайту, щоÑÑŒ на зразок «Мікроблоґи компанії ...»"
#: actions/siteadminpanel.php:229
msgid "Brought by"
@@ -3852,59 +4088,87 @@ msgid "Unable to save site notice."
msgstr "Ðе вдаєтьÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту."
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
-msgstr "МакÑимальна довжина Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту Ñтановить 255 Ñимволів"
+msgid "Max length for the site-wide notice is 255 chars."
+msgstr "МакÑимальна довжина Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту Ñтановить 255 Ñимволів."
#: actions/sitenoticeadminpanel.php:176
msgid "Site notice text"
-msgstr "ТекÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту"
+msgstr "ТекÑÑ‚ повідомленнÑ"
#: actions/sitenoticeadminpanel.php:178
msgid "Site-wide notice text (255 chars max; HTML okay)"
-msgstr "ТекÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту (255 Ñимволів макÑимум; HTML дозволено)"
+msgstr ""
+"ТекÑÑ‚ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту (255 Ñимволів макÑимум; деÑкий HTML дозволено)"
#: actions/sitenoticeadminpanel.php:198
msgid "Save site notice"
msgstr "Зберегти Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
msgid "SMS settings"
msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¡ÐœÐ¡"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Ви можете отримувати СМС через електронну пошту від %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
msgid "SMS is not available."
msgstr "СМС недоÑтупно."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+msgid "SMS address"
+msgstr "SMS-адреÑа"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "Поточний підтверджений телефонний номер."
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "ÐžÑ‡Ñ–ÐºÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ñ‚ÐµÐ»ÐµÑ„Ð¾Ð½Ð½Ð¾Ð³Ð¾ номера."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "Код підтвердженнÑ"
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Введіть код, Ñкий Ви отримали телефоном."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Підтвердити"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr "Телефонний номер"
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Телефонний номер та регіональний код, ніÑкої пунктуації чи інтервалів"
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr "Преференції SMS"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -3912,23 +4176,33 @@ msgstr ""
"ПовідомлÑти мене за допомогою СМС; Я розімію, що, можливо, понеÑу надмірні "
"витрати від мого мобільного оператора."
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr "Преференції SMS збережено."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Ðемає телефонного номера."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "Оператора не обрано."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "Це і є Ваш телефонний номер."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "Цей телефонний номер належить іншому кориÑтувачу."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
@@ -3936,23 +4210,40 @@ msgstr ""
"Код Ð¿Ñ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð±ÑƒÐ² відправлений на телефонний номер, Ñкий Ви додали. "
"Перевірте вхідні повідомленнÑ, там має бути код та подальші інÑтрукції."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "Це помилковий код підтвердженнÑ."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+msgid "SMS confirmation cancelled."
+msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ SMS ÑкаÑовано."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Це не Ваш телефонний номер."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr "Телефонний номер Ð´Ð»Ñ SMS був видалений."
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr "Мобільний оператор"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Оберіть оператора"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -3962,13 +4253,14 @@ msgstr ""
"надÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¡ÐœÐ¡ через електронну пошту, але він тут не вказаний, напишіть нам "
"Ñ– ми внеÑемо його до ÑпиÑку."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Код не введено"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr "Снепшоти"
@@ -3989,8 +4281,8 @@ msgid "Invalid snapshot report URL."
msgstr "Помилковий Ñнепшот URL."
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
-msgstr "Випадково під Ñ‡Ð°Ñ Ð²ÐµÐ±-хіта"
+msgid "Randomly during web hit"
+msgstr "Випадково під Ñ‡Ð°Ñ Ð²ÐµÐ±-зверненнÑ"
#: actions/snapshotadminpanel.php:201
msgid "In a scheduled job"
@@ -4028,8 +4320,8 @@ msgstr "Зберегти Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð·Ð½Ñ–Ð¼ÐºÑƒ"
msgid "You are not subscribed to that profile."
msgstr "Ви не підпиÑані до цього профілю."
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
msgid "Could not save subscription."
msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ підпиÑку."
@@ -4130,11 +4422,11 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%s не відÑлідковує нічого"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
msgid "Jabber"
msgstr "Jabber"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "СМС"
@@ -4167,12 +4459,12 @@ msgstr "Ðемає ID аргументу."
msgid "Tag %s"
msgstr "Позначити %s"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
msgid "User profile"
msgstr "Профіль кориÑтувача."
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "Фото"
@@ -4207,10 +4499,6 @@ msgstr "СкориÑтайтеÑÑŒ цією формою, щоб додати Ñ‚
msgid "No such tag."
msgstr "Такого теґу немає."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API метод наразі знаходитьÑÑ Ñƒ розробці."
-
#: actions/unblock.php:59
msgid "You haven't blocked that user."
msgstr "Цього кориÑтувача блокувати неможливо."
@@ -4224,7 +4512,7 @@ msgid "User is not silenced."
msgstr "КориÑтувач поки що має право голоÑу."
#: actions/unsubscribe.php:77
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "У запиті відÑутній ID профілю."
#: actions/unsubscribe.php:98
@@ -4258,9 +4546,10 @@ msgstr "Помилковий текÑÑ‚ привітаннÑ. МакÑималь
#: actions/useradminpanel.php:165
#, php-format
msgid "Invalid default subscripton: '%1$s' is not user."
-msgstr "Помилкова підпиÑка за замовчуваннÑм: '%1$s' не Ñ” кориÑтувачем."
+msgstr "Помилкова підпиÑка за замовчуваннÑм: «%1$s» не Ñ” кориÑтувачем."
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Профіль"
@@ -4320,7 +4609,7 @@ msgstr ""
"підпиÑатиÑÑŒ на допиÑи цього кориÑтувача. Якщо Ви не збиралиÑÑŒ підпиÑуватиÑÑŒ "
"ні на чиї допиÑи, проÑто натиÑніть «Відмінити»."
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr "ЛіцензіÑ"
@@ -4381,32 +4670,32 @@ msgstr "URI Ñлухача «%s» тут не знайдено"
#: actions/userauthorization.php:308
#, php-format
msgid "Listenee URI ‘%s’ is too long."
-msgstr "URI Ñлухача ‘%s’ задовге."
+msgstr "URI Ñлухача «%s» задовге."
#: actions/userauthorization.php:314
#, php-format
msgid "Listenee URI ‘%s’ is a local user."
-msgstr "URI Ñлухача ‘%s’ це локальний кориÑтувач"
+msgstr "URI Ñлухача «%s» це локальний кориÑтувач"
#: actions/userauthorization.php:329
#, php-format
msgid "Profile URL ‘%s’ is for a local user."
-msgstr "URL-адреÑа профілю ‘%s’ Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ кориÑтувача."
+msgstr "URL-адреÑа профілю «%s» Ð´Ð»Ñ Ð»Ð¾ÐºÐ°Ð»ÑŒÐ½Ð¾Ð³Ð¾ кориÑтувача."
#: actions/userauthorization.php:345
#, php-format
msgid "Avatar URL ‘%s’ is not valid."
-msgstr "URL-адреÑа автари ‘%s’ помилкова."
+msgstr "URL-адреÑа аватари «%s» помилкова."
#: actions/userauthorization.php:350
#, php-format
msgid "Can’t read avatar URL ‘%s’."
-msgstr "Ðе можна прочитати URL аватари ‘%s’."
+msgstr "Ðе можна прочитати URL аватари «%s»."
#: actions/userauthorization.php:355
#, php-format
msgid "Wrong image type for avatar URL ‘%s’."
-msgstr "Ðеправильний тип Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ URL-адреÑи аватари ‘%s’."
+msgstr "Ðеправильний тип Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð´Ð»Ñ URL-адреÑи аватари «%s»."
#: actions/userdesignsettings.php:76 lib/designsettings.php:65
msgid "Profile design"
@@ -4424,38 +4713,44 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr "ПолаÑуйте бутербродом!"
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, php-format
msgid "%1$s groups, page %2$d"
msgstr "Групи %1$s, Ñторінка %2$d"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr "Шукати групи ще"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr "%s не Ñ” учаÑником жодної групи."
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
"Спробуйте [знайти ÑкіÑÑŒ групи](%%action.groupsearch%%) Ñ– приєднайтеÑÑ Ð´Ð¾ них."
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "ÐžÐ½Ð¾Ð²Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ %1$s на %2$s!"
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr "StatusNet %s"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
@@ -4464,11 +4759,11 @@ msgstr ""
"Цей Ñайт працює на %1$s, верÑÑ–Ñ %2$s. ÐвторÑькі права 2008-2010 StatusNet, "
"Inc. і розробники."
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr "Розробники"
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4480,7 +4775,7 @@ msgstr ""
"Ñ—Ñ… було опубліковано Free Software Foundation, 3-Ñ‚Ñ Ð²ÐµÑ€ÑÑ–Ñ Ð»Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ— або (на "
"Ваш розÑуд) будь-Ñка подальша верÑÑ–Ñ. "
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4492,7 +4787,7 @@ msgstr ""
"ПРИДÐТÐОСТІ ДЛЯ ДОСЯГÐЕÐÐЯ ПЕВÐОЇ МЕТИ. Щодо більш детальних роз’ÑÑнень, "
"ознайомтеÑÑŒ з умовами GNU Affero General Public License. "
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
@@ -4501,91 +4796,140 @@ msgstr ""
"Разом з програмою Ви маєте отримати копію ліцензійних умов GNU Affero "
"General Public License. Якщо ні, перейдіть на %s."
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr "Додатки"
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
msgid "Version"
msgstr "ВерÑÑ–Ñ"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr "Ðвтор(и)"
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr "Ðеможливо обробити URL «%s»"
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr "Робін вважає, що це неможливо."
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
"ÐÑ–, файл не може бути більшим за %d байтів, а те, що Ви хочете надіÑлати, "
-"важить %d байтів. Спробуйте меншу верÑÑ–ÑŽ."
+"важить %d байтів. Спробуйте завантажити меншу верÑÑ–ÑŽ."
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr "Розміри цього файлу перевищують Вашу квоту на %d байтів."
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr "Розміри цього файлу перевищують Вашу міÑÑчну квоту на %d байтів."
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+msgid "Invalid filename."
+msgstr "Ðевірне Ñ–Ð¼â€™Ñ Ñ„Ð°Ð¹Ð»Ñƒ."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
msgid "Group join failed."
msgstr "Ðе вдалоÑÑ Ð¿Ñ€Ð¸Ñ”Ð´Ð½Ð°Ñ‚Ð¸ÑÑŒ до групи."
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
msgid "Not part of group."
msgstr "Ðе Ñ” чаÑтиною групи."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
msgid "Group leave failed."
msgstr "Ðе вдалоÑÑ Ð·Ð°Ð»Ð¸ÑˆÐ¸Ñ‚Ð¸ групу."
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
msgid "Could not update local group."
msgstr "Ðе вдаєтьÑÑ Ð¾Ð½Ð¾Ð²Ð¸Ñ‚Ð¸ локальну групу."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, php-format
msgid "Could not create login token for %s"
msgstr "Ðе вдалоÑÑ Ñтворити токен входу Ð´Ð»Ñ %s"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr "Ðемає імені бази даних або DSN ніде не знайдено"
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr "Вам заборонено надÑилати прÑмі повідомленнÑ."
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "Ðе можна долучити повідомленнÑ."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "Ðе можна оновити Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð· новим URI."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr "Ðемає такого профілю (%1$d) Ð´Ð»Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ (%2$d)."
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, php-format
-msgid "DB error inserting hashtag: %s"
-msgstr "Помилка бази даних при додаванні теґу: %s"
+msgid "Database error inserting hashtag: %s"
+msgstr "Помилка бази даних при додаванні хеш-теґу: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
msgid "Problem saving notice. Too long."
msgstr "Проблема при збереженні допиÑу. Ðадто довге."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
msgid "Problem saving notice. Unknown user."
msgstr "Проблема при збереженні допиÑу. Ðевідомий кориÑтувач."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
"Дуже багато допиÑів за короткий термін; ходіть подихайте повітрÑм Ñ– "
"повертайтеÑÑŒ за кілька хвилин."
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
@@ -4593,287 +4937,366 @@ msgstr ""
"Дуже багато повідомлень за короткий термін; ходіть подихайте повітрÑм Ñ– "
"повертайтеÑÑŒ за кілька хвилин."
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "Вам заборонено надÑилати допиÑи до цього Ñайту."
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Проблема при збереженні допиÑу."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr "ЗадаєтьÑÑ Ð½ÐµÐ²Ñ–Ñ€Ð½Ð¸Ð¹ тип Ð´Ð»Ñ saveKnownGroups"
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
msgid "Problem saving group inbox."
msgstr "Проблема при збереженні вхідних допиÑів Ð´Ð»Ñ Ð³Ñ€ÑƒÐ¿Ð¸."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr "RT @%1$s %2$s"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr "Ðе вдалоÑÑ ÑкаÑувати роль «%s» Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача #%2$s; не Ñ–Ñнує."
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+"Ðе вдалоÑÑ ÑкаÑувати роль «%1$s» Ð´Ð»Ñ ÐºÐ¾Ñ€Ð¸Ñтувача #%2$s; помилка бази даних."
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+msgid "Missing profile."
+msgstr "Загублений профіль."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+msgid "Unable to save tag."
+msgstr "Ðе вдаєтьÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ теґ."
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr "Ð’Ð°Ñ Ð¿Ð¾Ð·Ð±Ð°Ð²Ð»ÐµÐ½Ð¾ можливоÑÑ‚Ñ– підпиÑатиÑÑŒ."
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr "Вже підпиÑаний!"
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr "КориÑтувач заблокував ВаÑ."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
msgid "Not subscribed!"
msgstr "Ðе підпиÑано!"
-#: classes/Subscription.php:163
-msgid "Couldn't delete self-subscription."
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
+msgid "Could not delete self-subscription."
msgstr "Ðе можу видалити ÑамопідпиÑку."
-#: classes/Subscription.php:190
-msgid "Couldn't delete subscription OMB token."
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
+msgid "Could not delete subscription OMB token."
msgstr "Ðе вдаєтьÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ токен підпиÑки OMB."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+msgid "Could not delete subscription."
msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ підпиÑку."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "Вітаємо на %1$s, @%2$s!"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "Ðе вдалоÑÑ Ñтворити нову групу."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
msgid "Could not set group URI."
msgstr "Ðе вдалоÑÑ Ð²Ñтановити URI групи."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
msgid "Could not set group membership."
msgstr "Ðе вдалоÑÑ Ð²Ñтановити членÑтво."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
msgid "Could not save local group info."
msgstr "Ðе вдалоÑÑ Ð·Ð±ÐµÑ€ÐµÐ³Ñ‚Ð¸ інформацію про локальну групу."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Змінити Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ„Ñ–Ð»ÑŽ"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ð°Ð²Ð°Ñ‚Ð°Ñ€Ð¸"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Змінити Ваш пароль"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Змінити електронну адреÑу"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
msgid "Design your profile"
msgstr "Дизайн Вашого профілю"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "Інше"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "Інші опції"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "Інше"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, php-format
msgid "%1$s - %2$s"
msgstr "%1$s — %2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "Сторінка без заголовку"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "Відправна Ð½Ð°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ Ð¿Ð¾ Ñайту"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "ПерÑональний профіль Ñ– Ñтрічка друзів"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
msgctxt "MENU"
msgid "Personal"
msgstr "ОÑобиÑте"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Змінити електронну адреÑу, аватару, пароль, профіль"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Ð—â€™Ñ”Ð´Ð½Ð°Ð½Ð½Ñ Ð· ÑервіÑами"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "З’єднаннÑ"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Змінити конфігурацію Ñайту"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr "Ðдмін"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "ЗапроÑÑ–Ñ‚ÑŒ друзів та колег приєднатиÑÑŒ до Ð’Ð°Ñ Ð½Ð° %s"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
msgctxt "MENU"
msgid "Invite"
msgstr "ЗапроÑити"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "Вийти з Ñайту"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
msgctxt "MENU"
msgid "Logout"
msgstr "Вийти"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Створити новий акаунт"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
msgctxt "MENU"
msgid "Register"
msgstr "РеєÑтраціÑ"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "Увійти на Ñайт"
-#: lib/action.php:479
+#: lib/action.php:491
msgctxt "MENU"
msgid "Login"
msgstr "Увійти"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Допоможіть!"
-#: lib/action.php:485
+#: lib/action.php:497
msgctxt "MENU"
msgid "Help"
msgstr "Довідка"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "Пошук людей або текÑтів"
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr "Пошук"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
msgid "Site notice"
-msgstr "Ð—Ð°ÑƒÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñайту"
+msgstr "Об’Ñви на Ñайті"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "ОглÑд"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
msgid "Page notice"
msgstr "Ð—Ð°ÑƒÐ²Ð°Ð¶ÐµÐ½Ð½Ñ Ñторінки"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr "ДругорÑдна Ð½Ð°Ð²Ñ–Ð³Ð°Ñ†Ñ–Ñ Ð¿Ð¾ Ñайту"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Допомога"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Про"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
-msgstr "ЧаПи"
+msgstr "ЧаП"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr "Умови"
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
-msgstr "КонфіденційніÑÑ‚ÑŒ"
+msgstr "ПриватніÑÑ‚ÑŒ"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Джерело"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Контакт"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr "Бедж"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "Ð›Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð½Ð¾Ð³Ð¾ Ð·Ð°Ð±ÐµÐ·Ð¿ÐµÑ‡ÐµÐ½Ð½Ñ StatusNet"
-#: lib/action.php:802
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
#, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** — це ÑÐµÑ€Ð²Ñ–Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð² наданий вам [%%site.broughtby%%](%%"
-"site.broughtbyurl%%). "
+"site.broughtbyurl%%)."
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** — це ÑÐµÑ€Ð²Ñ–Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð². "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** — це ÑÐµÑ€Ð²Ñ–Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð²."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4884,68 +5307,83 @@ msgstr ""
"Ð´Ð»Ñ Ð¼Ñ–ÐºÑ€Ð¾Ð±Ð»Ð¾Ò‘Ñ–Ð², верÑÑ–Ñ %s, доÑтупному під [GNU Affero General Public "
"License](http://www.fsf.org/licensing/licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
msgid "Site content license"
msgstr "Ð›Ñ–Ñ†ÐµÐ½Ð·Ñ–Ñ Ð·Ð¼Ñ–Ñту Ñайту"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr "ЗміÑÑ‚ Ñ– дані %1$s Ñ” приватними Ñ– конфіденційними."
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr "ÐвторÑькі права на зміÑÑ‚ Ñ– дані належать %1$s. Ð’ÑÑ– права захищено."
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
"ÐвторÑькі права на зміÑÑ‚ Ñ– дані належать розробникам. Ð’ÑÑ– права захищено."
-#: lib/action.php:847
-msgid "All "
-msgstr "Ð’ÑÑ– "
-
-#: lib/action.php:853
-msgid "license."
-msgstr "ліцензіÑ."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr "ВеÑÑŒ зміÑÑ‚ Ñ– дані %1$s доÑтупні на умовах ліцензії %2$s."
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "ÐÑƒÐ¼ÐµÑ€Ð°Ñ†Ñ–Ñ Ñторінок"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr "Вперед"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
msgid "Before"
msgstr "Ðазад"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+"Ð’ очікуванні кореневого елементу веб-Ñтрічки, отримали цілий документ XML."
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr "Поки що не можу обробити віддалений контент."
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr "Поки що не можу обробити вбудований XML контент."
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr "Поки що не можу обробити вбудований контент Base64."
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr "Ви не можете щоÑÑŒ змінювати на цьому Ñайті."
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr "Ð”Ð»Ñ Ñ†Ñ–Ñ”Ñ— панелі зміни не припуÑтимі."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr "showForm() не виконано."
@@ -4955,155 +5393,192 @@ msgstr "showForm() не виконано."
msgid "saveSettings() not implemented."
msgstr "saveSettings() не виконано."
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr "Ðемає можливоÑÑ‚Ñ– видалити Ð½Ð°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð´Ð¸Ð·Ð°Ð¹Ð½Ñƒ."
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
msgid "Basic site configuration"
msgstr "ОÑновна ÐºÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ñайту"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
msgctxt "MENU"
msgid "Site"
msgstr "Сайт"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
msgid "Design configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ð´Ð¸Ð·Ð°Ð¹Ð½Ñƒ"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
msgctxt "MENU"
msgid "Design"
msgstr "Дизайн"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
msgid "User configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÐºÐ¾Ñ€Ð¸Ñтувача"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "КориÑтувач"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
msgid "Access configuration"
msgstr "ПрийнÑти конфігурацію"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
msgid "Paths configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑˆÐ»Ñху"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
msgid "Sessions configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ ÑеÑій"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
msgid "Edit site notice"
msgstr "Редагувати Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñайту"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
msgid "Snapshots configuration"
msgstr "ÐšÐ¾Ð½Ñ„Ñ–Ð³ÑƒÑ€Ð°Ñ†Ñ–Ñ Ð·Ð½Ñ–Ð¼ÐºÑ–Ð²"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
"API-реÑÑƒÑ€Ñ Ð²Ð¸Ð¼Ð°Ð³Ð°Ñ” дозвіл типу «читаннÑ-запиÑ», але у Ð²Ð°Ñ Ñ” лише доÑтуп Ð´Ð»Ñ "
"читаннÑ."
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-"Ðевдала Ñпроба авторизації API, nickname = %1$s, proxy = %2$s, ip = %3$s"
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr "Керувати додатками"
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr "Іконка Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ додатку"
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, php-format
msgid "Describe your application in %d characters"
msgstr "Опишіть додаток, вкладаючиÑÑŒ у %d знаків"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
msgid "Describe your application"
msgstr "Опишіть Ваш додаток"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
-msgstr "URL-адреÑа"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
msgid "URL of the homepage of this application"
msgstr "URL-адреÑа веб-Ñторінки цього додатку"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
+msgstr "URL-адреÑа"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr "ОрганізаціÑ, відповідальна за цей додаток"
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr "URL-адреÑа веб-Ñторінки організації"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr "URL-адреÑа, на Ñку перенаправлÑти піÑÐ»Ñ Ð°Ð²Ñ‚ÐµÐ½Ñ‚Ð¸Ñ„Ñ–ÐºÐ°Ñ†Ñ–Ñ—"
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr "Браузер"
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr "ДеÑктоп"
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr "Тип додатку, браузер або деÑктоп"
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr "Лише читаннÑ"
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr "Читати-пиÑати"
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
"Дозвіл за замовчуваннÑм Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ додатку: лише Ñ‡Ð¸Ñ‚Ð°Ð½Ð½Ñ Ð°Ð±Ð¾ читати-пиÑати"
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "СкаÑувати"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr "читаннÑ/запиÑ"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr "лише читаннÑ"
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr "Підтверджено доÑтуп %1$s — «%2$s»."
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Відкликати"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr "ВкладеннÑ"
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr "Ðвтор"
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr "Провайдер"
@@ -5115,45 +5590,64 @@ msgstr "ДопиÑи, до Ñких прикріплено це вкладенн
msgid "Tags for this attachment"
msgstr "Теґи Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ вкладеннÑ"
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr "Ðе вдалоÑÑ Ð·Ð¼Ñ–Ð½Ð¸Ñ‚Ð¸ пароль"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr "Змінювати пароль не дозволено"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "Результати команди"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "Команду виконано"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "Команду не виконано"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "Даруйте, але Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ ще не завершено."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
+msgstr "Такого допиÑу не Ñ–Ñнує"
+
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "КориÑтувач не має оÑтаннього допиÑу"
-#: lib/command.php:88
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ кориÑтувача з іменем %s"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Ðе вдалоÑÑ Ð·Ð½Ð°Ð¹Ñ‚Ð¸ локального кориÑтувача з іменем %s"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "Даруйте, але Ð²Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ ще не завершено."
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr "Гадаємо, кориÑÑ‚Ñ– від «розштовхуваннÑ» Ñамого Ñебе небагато, чи не так?!"
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr "Спробу «розштовхати» %s зараховано"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5164,199 +5658,207 @@ msgstr ""
"ПідпиÑчики: %2$s\n"
"ДопиÑи: %3$s"
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr "Такого допиÑу не Ñ–Ñнує"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "КориÑтувач не має оÑтаннього допиÑу"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð¿Ð¾Ð·Ð½Ð°Ñ‡ÐµÐ½Ð¾ Ñк обраний."
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "Ви вже Ñ” учаÑником цієї групи."
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "Ðе вдалоÑÑŒ долучити кориÑтувача %1$s до групи %2$s."
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, php-format
-msgid "%s joined group %s"
-msgstr "%1$s приєднавÑÑ Ð´Ð¾ групи %2$s"
-
-#: lib/command.php:275
-#, php-format
-msgid "Could not remove user %s to group %s"
-msgstr "Ðе вдалоÑÑ Ð²Ð¸Ð´Ð°Ð»Ð¸Ñ‚Ð¸ кориÑтувача %1$s з групи %2$s."
-
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%1$s залишив групу %2$s"
+msgid "Could not remove user %1$s from group %2$s"
+msgstr "Ðе вдалоÑÑŒ видалити кориÑтувача %1$s з групи %2$s"
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "Повне ім’Ñ: %s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
-msgstr "ЛокаціÑ: %s"
+msgstr "РозташуваннÑ: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "Веб-Ñторінка: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "Про мене: %s"
-#: lib/command.php:349
+#: lib/command.php:457
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
-msgstr "ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð´Ñ‚Ð¾ довге — макÑимум %d знаків, а ви надÑилаєте %d"
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+"%s — це віддалений профіль; Ви можете надÑилати приватні Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð»Ð¸ÑˆÐµ "
+"кориÑтувачам одного з вами ÑервіÑу."
-#: lib/command.php:367
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
+#, php-format
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
+msgstr ""
+"ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð½Ð°Ð´Ñ‚Ð¾ довге — макÑимум Ñтановить %1$d Ñимволів, Ви надÑилаєте %2"
+"$d"
+
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "ПрÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð´Ð»Ñ %s надіÑлано."
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "Помилка при відправці прÑмого повідомленнÑ."
-#: lib/command.php:413
+#: lib/command.php:514
msgid "Cannot repeat your own notice"
msgstr "Ðе можу повторити Ваш влаÑний допиÑ"
-#: lib/command.php:418
+#: lib/command.php:519
msgid "Already repeated that notice"
msgstr "Цей Ð´Ð¾Ð¿Ð¸Ñ Ð²Ð¶Ðµ повторили"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, php-format
msgid "Notice from %s repeated"
msgstr "Ð”Ð¾Ð¿Ð¸Ñ %s повторили"
-#: lib/command.php:428
+#: lib/command.php:531
msgid "Error repeating notice."
msgstr "Помилка при повторенні допиÑу."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð½Ð°Ð´Ñ‚Ð¾ довгий — макÑимум %d знаків, а ви надÑилаєте %d"
-#: lib/command.php:491
+#: lib/command.php:571
#, php-format
msgid "Reply to %s sent"
msgstr "Відповідь до %s надіÑлано"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "Проблема при збереженні допиÑу."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "Зазначте Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача, до Ñкого бажаєте підпиÑатиÑÑŒ"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "Такого кориÑтувача немає."
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Ðе можу підпиÑатиÑÑŒ до профілю OMB за командою."
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "ПідпиÑано до %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "Зазначте Ñ–Ð¼â€™Ñ ÐºÐ¾Ñ€Ð¸Ñтувача, від Ñкого бажаєте відпиÑатиÑÑŒ"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "ВідпиÑано від %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "Ð’Ð¸ÐºÐ¾Ð½Ð°Ð½Ð½Ñ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð¸ ще не завершено."
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "Ð¡Ð¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ Ð²Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¾."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "Ðе можна вимкнути ÑповіщеннÑ."
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "Ð¡Ð¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ ÑƒÐ²Ñ–Ð¼ÐºÐ½ÑƒÑ‚Ð¾."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "Ðе можна увімкнути ÑповіщеннÑ."
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr "Команду входу відключено"
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
"Це поÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¼Ð¾Ð¶Ð½Ð° викориÑтати лише раз, воно дійÑне протÑгом 2 хвилин: %s"
-#: lib/command.php:692
+#: lib/command.php:761
#, php-format
msgid "Unsubscribed %s"
msgstr "ВідпиÑано %s"
-#: lib/command.php:709
+#: lib/command.php:778
msgid "You are not subscribed to anyone."
msgstr "Ви не маєте жодних підпиÑок."
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Ви підпиÑані до цієї оÑоби:"
msgstr[1] "Ви підпиÑані до цих людей:"
msgstr[2] "Ви підпиÑані до цих людей:"
-#: lib/command.php:731
+#: lib/command.php:800
msgid "No one is subscribed to you."
msgstr "До Ð’Ð°Ñ Ð½Ñ–Ñ…Ñ‚Ð¾ не підпиÑаний."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Ð¦Ñ Ð¾Ñоба Ñ” підпиÑаною до ВаÑ:"
msgstr[1] "Ці люди підпиÑані до ВаÑ:"
msgstr[2] "Ці люди підпиÑані до ВаÑ:"
-#: lib/command.php:753
+#: lib/command.php:822
msgid "You are not a member of any groups."
msgstr "Ви не Ñ” учаÑником жодної групи."
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Ви Ñ” учаÑником групи:"
msgstr[1] "Ви Ñ” учаÑником таких груп:"
msgstr[2] "Ви Ñ” учаÑником таких груп:"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5433,19 +5935,19 @@ msgstr ""
"tracks — наразі не виконуєтьÑÑ\n"
"tracking — наразі не виконуєтьÑÑ\n"
-#: lib/common.php:148
+#: lib/common.php:135
msgid "No configuration file found. "
msgstr "Файлу конфігурації не знайдено. "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr "Шукав файли конфігурації в цих міÑцÑÑ…: "
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr "ЗапуÑÑ‚Ñ–Ñ‚ÑŒ файл інÑталÑції, аби полагодити це."
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr "Іти до файлу інÑталÑції."
@@ -5547,7 +6049,7 @@ msgstr "Вперед"
#: lib/grantroleform.php:91
#, php-format
msgid "Grant this user the \"%s\" role"
-msgstr "Ðадати цьому кориÑтувачеві роль \"%s\""
+msgstr "Ðадати цьому кориÑтувачеві роль «%s»"
#: lib/groupeditform.php:163
msgid "URL of the homepage or blog of the group or topic"
@@ -5565,7 +6067,7 @@ msgstr "Опишіть групу або тему, вкладаючиÑÑŒ у %d
#: lib/groupeditform.php:179
msgid ""
"Location for the group, if any, like \"City, State (or Region), Country\""
-msgstr "Ð›Ð¾ÐºÐ°Ñ†Ñ–Ñ Ð³Ñ€ÑƒÐ¿Ð¸, штибу \"МіÑто, облаÑÑ‚ÑŒ (або регіон), країна\""
+msgstr "Ð Ð¾Ð·Ñ‚Ð°ÑˆÑƒÐ²Ð°Ð½Ð½Ñ Ð³Ñ€ÑƒÐ¿Ð¸, на кшталт «МіÑто, облаÑÑ‚ÑŒ (або регіон), країна»"
#: lib/groupeditform.php:187
#, php-format
@@ -5618,53 +6120,54 @@ msgstr "Групи з найбільшою кількіÑÑ‚ÑŽ допиÑів"
msgid "Tags in %s group's notices"
msgstr "Теґи у допиÑах групи %s"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Ð¦Ñ Ñторінка не доÑтупна Ð´Ð»Ñ Ñ‚Ð¾Ð³Ð¾ типу медіа, з Ñким ви погодилиÑÑŒ"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Формат Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ."
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "Цей файл завеликий. МакÑимальний розмір %s."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "ЧаÑткове завантаженнÑ."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "СиÑтема відповіла помилкою при завантаженні цього файла."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "Це не зображеннÑ, або файл зіпÑовано."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Формат Ð·Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð½Ñ Ð½Ðµ підтримуєтьÑÑ."
-
#: lib/imagefile.php:122
msgid "Lost our file."
msgstr "Файл втрачено."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "Тип файлу не підтримуєтьÑÑ"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr "Мб"
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr "кб"
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr "[%s]"
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr "Ðевідоме джерело вхідного Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ %d."
@@ -5685,11 +6188,13 @@ msgstr "Увійти викориÑтовуючи Ñ–Ð¼â€™Ñ Ñ‚Ð° пароль"
msgid "Sign up for a new account"
msgstr "ЗареєÑтрувати новий акаунт"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð¾Ñ— адреÑи"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5705,25 +6210,37 @@ msgid ""
"Thanks for your time, \n"
"%s\n"
msgstr ""
-"Ðгов, %s.\n"
+"Ðгов, %s!\n"
"\n"
"ХтоÑÑŒ щойно ввів цю електронну адреÑу на %s.\n"
"\n"
-"Якщо то були Ви, муÑите це підтвердити викориÑтовуючи поÑиланнÑ:\n"
+"Якщо то були Ви, муÑите це підтвердити, викориÑтовуючи поÑиланнÑ:\n"
"\n"
-"\t%s\n"
+"%s\n"
"\n"
-"Ð Ñкщо ні, то проÑто проігноруйте це повідомленнÑ.\n"
+"Ð Ñкщо ні, проÑто ігноруйте це повідомленнÑ.\n"
"\n"
-"ДÑкуємо за Ваш Ñ‡Ð°Ñ \n"
+"Вибачте за турботу, \n"
"%s\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s тепер Ñлідкує за Вашими допиÑами на %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+"Якщо Ви вважаєте, що цей акаунт викориÑтовуєтьÑÑ Ð½ÐµÐ¿Ñ€Ð°Ð²Ð¾Ð¼Ñ–Ñ€Ð½Ð¾, Ви можете "
+"заблокувати його у ÑпиÑку Ñвоїх підпиÑчиків Ñ– повідомити адмініÑтраторів "
+"Ñайту про факт Ñпаму на %s"
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5748,17 +6265,20 @@ msgstr ""
"----\n"
"Змінити електронну адреÑу або умови ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ â€” %8$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, php-format
msgid "Bio: %s"
msgstr "Про Ñебе: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Ðова електронна адреÑа Ð´Ð»Ñ Ð½Ð°Ð´ÑÐ¸Ð»Ð°Ð½Ð½Ñ Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½ÑŒ на %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5779,21 +6299,33 @@ msgstr ""
"Щиро Ваші,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s ÑтатуÑ"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "ÐŸÑ–Ð´Ñ‚Ð²ÐµÑ€Ð´Ð¶ÐµÐ½Ð½Ñ Ð¡ÐœÐ¡"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+"%s, підтвердьте, що Ви Ñ” влаÑником зазначеного номеру телефону, "
+"ÑкориÑтавшиÑÑŒ даним кодом:"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "Ð’Ð°Ñ Ñпробував «розштовхати» %s"
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5820,12 +6352,14 @@ msgstr ""
"З найкращими побажаннÑми,\n"
"%4$s\n"
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Ðове приватне Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð²Ñ–Ð´ %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5858,12 +6392,14 @@ msgstr ""
"З найкращими побажаннÑми,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s (@%s) додав(ла) Ваш Ð´Ð¾Ð¿Ð¸Ñ Ð¾Ð±Ñ€Ð°Ð½Ð¸Ñ…"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5900,12 +6436,25 @@ msgstr ""
"Щиро Ваші,\n"
"%6$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+"Ð’ÑÑŽ розмову можна переглÑнути тут:\n"
+"\n"
+"%s"
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr "%s (@%s) пропонує до Вашої уваги наÑтупний допиÑ"
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5918,18 +6467,41 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
-"%1$s (@%9$s) пропонує до Вашої уваги наÑтупний Ð´Ð¾Ð¿Ð¸Ñ (це '@-відповідь') %2"
-"$s.\n"
+"%1$s (@%9$s) щойно надіÑлав(ла) Вам Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ («@-відповідь») на %2$s.\n"
"\n"
-"Ð”Ð¾Ð¿Ð¸Ñ Ñ‚ÑƒÑ‚:\n"
+"ÐŸÐ¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð·Ð½Ð°Ñ…Ð¾Ð´Ð¸Ñ‚ÑŒÑÑ Ñ‚ÑƒÑ‚:\n"
"\n"
-"\t%3$s\n"
+"%3$s\n"
"\n"
-"ТекÑÑ‚:\n"
+"ОÑÑŒ його зміÑÑ‚:\n"
"\n"
-"\t%4$s\n"
+"%4$s\n"
+"\n"
+"%5$sÐадіÑлати відповідь можна звідÑи:\n"
+"\n"
+"%6$s\n"
+"\n"
+"СпиÑок вÑÑ–Ñ… @-відповідей, надіÑланих Вам, знаходитьÑÑ Ñ‚ÑƒÑ‚:\n"
+"\n"
+"%7$s\n"
"\n"
+"З повагою,\n"
+"%2$s\n"
+"\n"
+"P.S. Ви можете вимкнути ÑÐ¿Ð¾Ð²Ñ–Ñ‰ÐµÐ½Ð½Ñ ÐµÐ»ÐµÐºÑ‚Ñ€Ð¾Ð½Ð½Ð¾ÑŽ поштою тут: %8$s\n"
#: lib/mailbox.php:89
msgid "Only the user can read their own mailboxes."
@@ -5945,7 +6517,7 @@ msgstr ""
"Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð°Ð±Ð¸ долучити кориÑтувачів до розмови. Такі Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ð±Ð°Ñ‡Ð¸Ñ‚Ðµ "
"лише Ви."
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr "від"
@@ -6003,24 +6575,24 @@ msgstr "Ð—Ð°Ð¿Ð¸Ñ Ñ„Ð°Ð¹Ð»Ñƒ на диÑк ÑкаÑовано."
msgid "File upload stopped by extension."
msgstr "Ð—Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ„Ð°Ð¹Ð»Ñƒ зупинено розширеннÑм."
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr "Файл перевищив квоту кориÑтувача."
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr "Файл не може бути переміщений у директорію призначеннÑ."
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
msgid "Could not determine file's MIME type."
msgstr "Ðе вдаєтьÑÑ Ð²Ð¸Ð·Ð½Ð°Ñ‡Ð¸Ñ‚Ð¸ MIME-тип файлу."
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr " Спробуйте викориÑтати інший %s формат."
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr "%s не підтримуєтьÑÑ Ñк тип файлів на цьому Ñервері."
@@ -6061,11 +6633,11 @@ msgstr "ВклаÑти файл"
#: lib/noticeform.php:212
msgid "Share my location"
-msgstr "Показувати локацію."
+msgstr "Показувати міÑцезнаходженнÑ."
#: lib/noticeform.php:215
msgid "Do not share my location"
-msgstr "Приховувати мою локацію"
+msgstr "Приховувати моє міÑцезнаходженнÑ"
#: lib/noticeform.php:216
msgid ""
@@ -6075,48 +6647,52 @@ msgstr ""
"Ðа жаль, Ð¾Ñ‚Ñ€Ð¸Ð¼Ð°Ð½Ð½Ñ Ñ–Ð½Ñ„Ð¾Ñ€Ð¼Ð°Ñ†Ñ–Ñ— щодо Вашого міÑÑ†ÐµÐ·Ð½Ð°Ñ…Ð¾Ð´Ð¶ÐµÐ½Ð½Ñ Ð·Ð°Ð¹Ð¼Ðµ більше "
"чаÑу, ніж очікувалоÑÑŒ; будь лаÑка, Ñпробуйте пізніше"
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr "Півн."
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr "Півд."
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr "Сх."
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr "Зах."
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+
+#: lib/noticelist.php:453
msgid "at"
msgstr "в"
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
msgid "in context"
msgstr "в контекÑÑ‚Ñ–"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
msgid "Repeated by"
msgstr "Повторено"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr "ВідповіÑти на цей допиÑ"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "ВідповіÑти"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
msgid "Notice repeated"
msgstr "Ð”Ð¾Ð¿Ð¸Ñ Ð¿Ð¾Ð²Ñ‚Ð¾Ñ€Ð¸Ð»Ð¸"
@@ -6140,6 +6716,10 @@ msgstr "Помилка при додаванні нового профілю"
msgid "Error inserting avatar"
msgstr "Помилка при додаванні аватари"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Помилка при оновленні віддаленого профілю"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Помилка при додаванні віддаленого профілю"
@@ -6185,11 +6765,11 @@ msgstr "ÐадіÑлані вами повідомленнÑ"
msgid "Tags in %s's notices"
msgstr "Теґи у допиÑах %s"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr "Ðевідомо"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "ПідпиÑки"
@@ -6197,31 +6777,32 @@ msgstr "ПідпиÑки"
msgid "All subscriptions"
msgstr "Ð’ÑÑ– підпиÑки"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "ПідпиÑчики"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
msgid "All subscribers"
msgstr "Ð’ÑÑ– підпиÑчики"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr "ІД"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
-msgstr "З нами від"
+msgstr "РеєÑтраціÑ"
+
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr "За добу"
-#: lib/profileaction.php:247
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "Ð’ÑÑ– групи"
#: lib/profileformaction.php:123
-msgid "No return-to arguments."
-msgstr "Ðемає аргументів return-to."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr "Метод не виконуєтьÑÑ."
@@ -6245,20 +6826,28 @@ msgstr "ПоÑтаті"
msgid "Popular"
msgstr "ПопулÑрне"
+#: lib/redirectingaction.php:95
+msgid "No return-to arguments."
+msgstr "Ðемає аргументів return-to."
+
#: lib/repeatform.php:107
msgid "Repeat this notice?"
msgstr "Повторити цей допиÑ?"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Так"
+
+#: lib/repeatform.php:132
msgid "Repeat this notice"
msgstr "Повторити цей допиÑ"
#: lib/revokeroleform.php:91
#, php-format
msgid "Revoke the \"%s\" role from this user"
-msgstr "Відкликати роль \"%s\" Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ кориÑтувача"
+msgstr "Відкликати роль «%s» Ð´Ð»Ñ Ñ†ÑŒÐ¾Ð³Ð¾ кориÑтувача"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr "КориÑтувача Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾ÐºÐ¾Ñ€Ð¸Ñтувацького режиму не визначено."
@@ -6356,6 +6945,52 @@ msgstr "Хмарка теґів (позначки, Ñкими Ви позначÐ
msgid "None"
msgstr "ПуÑто"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr "Цей Ñервер не може опрацювати Ð·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶ÐµÐ½Ð½Ñ Ñ‚ÐµÐ¼Ð¸ без підтримки ZIP."
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr "Файл теми відÑутній, або ÑтавÑÑ Ð·Ð±Ñ–Ð¹ при завантаженні."
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+msgid "Failed saving theme."
+msgstr "Помилка при збереженні теми."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr "Ðевірна тема: хибна Ñтруктура каталогів."
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+"Тема, що Ñ—Ñ— було завантажено, надто велика; без компреÑÑ–Ñ— розмір має "
+"Ñтановити менше ніж %d байтів."
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr "Ð’ архіві з темою Ñ” помилка: відÑутній файл css/display.css"
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+"Тема міÑтить неприпуÑтиме Ñ–Ð¼â€™Ñ Ñ„Ð°Ð¹Ð»Ñƒ або теки. ВикориÑтовуйте літери "
+"Ñтандарту ASCII, цифри, знаки підкреÑÐ»ÐµÐ½Ð½Ñ Ñ‚Ð° мінуÑу."
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr "Тема міÑтить файл типу «.%s», Ñкий Ñ” неприпуÑтимим."
+
+#: lib/themeuploader.php:234
+msgid "Error opening theme archive."
+msgstr "Помилка при відкритті архіву з темою."
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr "Топ-допиÑувачі"
@@ -6384,89 +7019,108 @@ msgstr "ВідпиÑатиÑÑŒ від цього кориÑтувача"
msgid "Unsubscribe"
msgstr "ВідпиÑатиÑÑŒ"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "КориÑтувач %s (%d) не має запиÑу профілю."
+
+#: lib/userprofile.php:117
msgid "Edit Avatar"
msgstr "Ðватара"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr "ДіÑльніÑÑ‚ÑŒ кориÑтувача"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr "Ð’Ð¸Ð´Ð°Ð»ÐµÐ½Ð½Ñ ÐºÐ¾Ñ€Ð¸Ñтувача у процеÑÑ–..."
+
+#: lib/userprofile.php:263
msgid "Edit profile settings"
msgstr "ÐÐ°Ð»Ð°ÑˆÑ‚ÑƒÐ²Ð°Ð½Ð½Ñ Ð¿Ñ€Ð¾Ñ„Ñ–Ð»ÑŽ"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr "Правка"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr "ÐадіÑлати прÑме Ð¿Ð¾Ð²Ñ–Ð´Ð¾Ð¼Ð»ÐµÐ½Ð½Ñ Ñ†ÑŒÐ¾Ð¼Ñƒ кориÑтувачеві"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr "ПовідомленнÑ"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr "Модерувати"
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
msgid "User role"
msgstr "Роль кориÑтувача"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr "ÐдмініÑтратор"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr "Модератор"
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "мить тому"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "хвилину тому"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "близько %d хвилин тому"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "годину тому"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "близько %d годин тому"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "день тому"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "близько %d днів тому"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "міÑÑць тому"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "близько %d міÑÑців тому"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "рік тому"
@@ -6480,7 +7134,7 @@ msgstr "%s Ñ” неприпуÑтимим кольором!"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr "%s неприпуÑтимий колір! ВикориÑтайте 3 або 6 знаків (HEX-формат)"
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/vi/LC_MESSAGES/statusnet.po b/locale/vi/LC_MESSAGES/statusnet.po
index 59751aa5d..c82d34e66 100644
--- a/locale/vi/LC_MESSAGES/statusnet.po
+++ b/locale/vi/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Vietnamese
#
+# Author@translatewiki.net: Minh Nguyen
# --
# This file is distributed under the same license as the StatusNet package.
#
@@ -7,12 +8,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:10+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:06+0000\n"
"Language-Team: Vietnamese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: vi\n"
"X-Message-Group: out-statusnet\n"
@@ -20,10 +21,9 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
-#, fuzzy
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
msgid "Access"
-msgstr "Chấp nhận"
+msgstr "Truy cập"
#. TRANS: Page notice
#: actions/accessadminpanel.php:67
@@ -33,7 +33,6 @@ msgstr "Thay đổi hình đại diện"
#. TRANS: Form legend for registration form.
#: actions/accessadminpanel.php:161
-#, fuzzy
msgid "Registration"
msgstr "Äăng ký"
@@ -44,7 +43,6 @@ msgstr ""
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
-#, fuzzy
msgctxt "LABEL"
msgid "Private"
msgstr "Riêng tư"
@@ -67,9 +65,8 @@ msgstr ""
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
-#, fuzzy
msgid "Closed"
-msgstr "Ban user"
+msgstr "Äóng"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
@@ -77,86 +74,90 @@ msgstr "Ban user"
msgid "Save access settings"
msgstr "Thay đổi hình đại diện"
-#: actions/accessadminpanel.php:203
-#, fuzzy
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr "LÆ°u"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "Không có tin nhắn nào."
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "Không có user nào."
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s và bạn bè"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s và bạn bè"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "Chá»n những ngÆ°á»i bạn của %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "Chá»n những ngÆ°á»i bạn của %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "Chá»n những ngÆ°á»i bạn của %s"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -164,79 +165,80 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
-#, fuzzy
+#: actions/all.php:182
msgid "You and friends"
-msgstr "%s và bạn bè"
+msgstr "Bạn và bạn bè"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "Phương thức API không tìm thấy!"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "Phương thức này yêu cầu là POST."
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "Không thể cập nhật thành viên."
@@ -246,7 +248,7 @@ msgstr "Không thể cập nhật thành viên."
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "NgÆ°á»i dùng không có thông tin."
@@ -257,9 +259,9 @@ msgid "Could not save profile."
msgstr "Không thể lưu hồ sơ cá nhân."
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -318,52 +320,52 @@ msgstr "Tin nhắn riêng"
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
#, fuzzy
msgid "No message text!"
msgstr "Không có tin nhắn nào."
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "Quá dài. Tối đa là 140 ký tự."
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
#, fuzzy
msgid "Recipient user not found."
msgstr "Không tìm thấy user."
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "Không tìm thấy trạng thái nào tương ứng với ID đó."
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "Tin nhắn này đã có trong danh sách tin nhắn ưa thích của bạn rồi!"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "Không thể tạo favorite."
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "Tin nhắn này đã có trong danh sách tin nhắn ưa thích của bạn rồi!"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
#, fuzzy
msgid "Could not delete favorite."
msgstr "Không thể tạo favorite."
#: actions/apifriendshipscreate.php:109
#, fuzzy
-msgid "Could not follow user: User not found."
+msgid "Could not follow user: profile not found."
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/apifriendshipscreate.php:118
@@ -381,8 +383,8 @@ msgstr "Không thể theo bạn này: %s đã có trong danh sách bạn bè cá»
msgid "You cannot unfollow yourself."
msgstr "Không thể cập nhật thành viên."
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -395,118 +397,130 @@ msgstr "Không thể lấy lại các tin nhắn ưa thích"
msgid "Could not find target user."
msgstr "Không tìm thấy bất kỳ trạng thái nào."
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "Biệt hiệu phải là chữ viết thÆ°á»ng hoặc số và không có khoảng trắng."
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "Biệt hiệu này đã dùng rồi. Hãy nhập biệt hiệu khác."
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "Biệt hiệu không hợp lệ."
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "Trang chủ không phải là URL"
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "Tên đầy đủ quá dài (tối đa là 255 ký tự)."
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "Lý lịch quá dài (không quá 140 ký tự)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "Tên khu vực quá dài (không quá 255 ký tự)."
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "Trang chủ '%s' không hợp lệ"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "Biệt hiệu này đã dùng rồi. Hãy nhập biệt hiệu khác."
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-#, fuzzy
-msgid "Group not found!"
-msgstr "Phương thức API không tìm thấy!"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "Không tìm thấy nhóm."
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to 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."
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from 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."
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "%s và nhóm"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "Bạn chưa cập nhật thông tin riêng"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, fuzzy, php-format
msgid "%s groups"
msgstr "%s và nhóm"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "Mã nhóm"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "Tải file"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -517,17 +531,17 @@ msgid "Invalid token."
msgstr "Kích thước không hợp lệ."
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -561,12 +575,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "Bất ngỠgửi mẫu thông tin. "
@@ -586,21 +603,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
-#, fuzzy
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
-msgstr "Giới thiệu"
+msgstr "Tài khoản"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "Biệt danh"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "Mật khẩu"
@@ -616,11 +634,11 @@ msgstr ""
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "Phương thức này yêu cầu là POST hoặc DELETE"
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "Bạn đã không xóa trạng thái của những ngÆ°á»i khác."
@@ -639,61 +657,65 @@ msgstr "Bạn không thể đăng ký nếu không đồng ý các Ä‘iá»u khoáº
msgid "Already repeated that notice."
msgstr "Xóa tin nhắn"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "Hình đại diện đã được cập nhật."
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "Không tìm thấy trạng thái nào tương ứng với ID đó."
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "Quá dài. Tối đa là 140 ký tự."
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr "Không tìm thấy"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+msgid "Not found."
+msgstr "Không tìm thấy."
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "Không hỗ trợ kiểu file ảnh này."
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "Tìm kiếm các tin nhắn ưa thích của %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "Tất cả các cập nhật của %s"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / Các cập nhật Ä‘ang trả lá»i tá»›i %2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, fuzzy, php-format
msgid "%s public timeline"
msgstr "Dòng tin công cộng"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "%s cập nhật từ tất cả má»i ngÆ°á»i!"
@@ -708,20 +730,19 @@ msgstr "Trả lá»i cho %s"
msgid "Repeats of %s"
msgstr "Trả lá»i cho %s"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "Thông báo được gắn thẻ %s"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "Dòng tin nhắn cho %s"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "Không tìm thấy"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "Phương thức API dưới cấu trúc có sẵn."
#: actions/attachment.php:73
#, fuzzy
@@ -743,8 +764,9 @@ msgstr "Không có kích thước."
msgid "Invalid size."
msgstr "Kích thước không hợp lệ."
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "Hình đại diện"
@@ -756,10 +778,10 @@ msgstr ""
"vỠbạn."
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
#, fuzzy
-msgid "User without matching profile"
+msgid "User without matching profile."
msgstr "Hồ sơ ở nơi khác không khớp với hồ sơ này của bạn"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -778,10 +800,9 @@ msgid "Preview"
msgstr "Xem trÆ°á»›c"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
-#, fuzzy
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
-msgstr "Xóa tin nhắn"
+msgstr "Xóa"
#: actions/avatarsettings.php:166 actions/grouplogo.php:236
msgid "Upload"
@@ -792,23 +813,28 @@ msgstr "Tải file"
msgid "Crop"
msgstr "Nhóm"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "Upload từng phần."
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "Hình đại diện đã được cập nhật."
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "Cập nhật hình đại diện không thành công."
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "Hình đại diện đã được cập nhật."
@@ -818,41 +844,57 @@ msgstr "Hình đại diện đã được cập nhật."
msgid "You already blocked that user."
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
-#, fuzzy
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
msgid "Block user"
-msgstr "Ban user"
+msgstr "Chặn ngÆ°á»i dùng"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "Không"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "Bá» chặn ngÆ°á»i dùng này"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "Có"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "Ban user"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -865,8 +907,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "Không có tin nhắn nào."
@@ -898,9 +940,11 @@ msgstr "BỠchặn"
msgid "Unblock this user"
msgstr "Bá» chặn ngÆ°á»i dùng này"
-#: actions/bookmarklet.php:50
-msgid "Post to "
-msgstr ""
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
+msgstr "Mã nhóm"
#: actions/confirmaddress.php:75
msgid "No confirmation code."
@@ -914,34 +958,44 @@ msgstr "Không tìm thấy mã xác nhận."
msgid "That confirmation code is not for you!"
msgstr "Mã xác nhận này không phải của bạn!"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "Không nhận dạng kiểu địa chỉ %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "Äịa chỉ đó đã được xác nhận rồi."
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "Không thể cập nhật thành viên."
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "Không thể xóa email xác nhận."
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "Xác nhận địa chỉ"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "Äịa chỉ \"%s\" đã được xác nhận từ tài khoản của bạn."
@@ -952,7 +1006,7 @@ msgid "Conversation"
msgstr "Không có mã số xác nhận."
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "Tin nhắn"
@@ -974,7 +1028,7 @@ msgstr "Bạn chưa cập nhật thông tin riêng"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
#, fuzzy
msgid "There was a problem with your session token."
msgstr "Có lỗi xảy ra khi thao tác. Hãy thử lại lần nữa."
@@ -991,23 +1045,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "Không thể xóa tin nhắn này."
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "Xóa tin nhắn"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "Chưa đăng nhập."
@@ -1031,12 +1087,14 @@ msgstr "Xóa tin nhắn"
msgid "Are you sure you want to delete this notice?"
msgstr "Bạn có chắc chắn là muốn xóa tin nhắn này không?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "Không thể xóa tin nhắn này."
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
#, fuzzy
msgid "Delete this notice"
msgstr "Xóa tin nhắn"
@@ -1062,66 +1120,78 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "Xóa tin nhắn"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "Kích thước không hợp lệ."
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "Thay đổi mật khẩu của bạn"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "ThÆ° má»i"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "Thay đổi"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "Thông báo mới"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "Thông báo mới"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
#, fuzzy
msgid "Change background image"
msgstr "Background Theme:"
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
#, fuzzy
msgid "Background"
msgstr "Background Theme:"
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
@@ -1130,72 +1200,81 @@ msgstr ""
"Bạn có thể cập nhật hồ sÆ¡ cá nhân tại đây để má»i ngÆ°á»i có thể biết thông tin "
"vỠbạn."
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
#, fuzzy
msgid "Tile background image"
msgstr "Background Theme:"
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "Thay đổi mật khẩu của bạn"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "Kết nối"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "Tìm kiếm"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "Chuỗi bất kỳ"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "Äăng nhập"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "LÆ°u"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
#, fuzzy
msgid "Save design"
msgstr "LÆ°u"
@@ -1315,12 +1394,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "Lý lịch quá dài (không quá 140 ký tự)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "Trang chủ '%s' không hợp lệ"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "Không thể cập nhật thành viên."
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "Không thể tạo favorite."
@@ -1330,32 +1415,45 @@ msgstr "Không thể tạo favorite."
msgid "Options saved."
msgstr "Äã lÆ°u các Ä‘iá»u chỉnh."
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "Thiết lập địa chỉ email"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "Bạn nhận email từ %%site.name%% như thế nào."
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "Äịa chỉ"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "Äịa chỉ email"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "Äã xác nhận địa chỉ này."
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "Xóa"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1363,114 +1461,148 @@ msgstr ""
"Äang đợi xác nhận đến địa chỉ này. Hãy kiểm tra há»™p thÆ° đến (hoặc thÆ° rác) "
"để nhận tin nhắn và lá»i hÆ°á»›ng dẫn."
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "Hủy"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "Äịa chỉ email"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
#, fuzzy
msgid "Email address, like \"UserName@example.org\""
msgstr "Äịa chỉ email GTalk, Ví dụ: \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "Thêm"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "Gửi email đến địa chỉ này để đưa tin nhắn mới lên."
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "Tạo một địa chỉ email mới để đưa tin nhắn lên; và xóa "
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "MÆ¡Ìi"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "Tính năng"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "Hãy gửi email cho tôi thông báo vỠcác đăng nhận mới."
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
"Gửi email thông báo tôi khi có ai đó lưu tin nhắn của tôi vào danh sách ưa "
"thích của há»."
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "Gửi email báo cho tôi biết khi có ai đó gửi tin nhắn riêng cho tôi."
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "Gửi email báo cho tôi biết khi có ai đó gửi tin nhắn riêng cho tôi."
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "Tôi muốn đưa tin nhắn lên bằng email."
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "Xuất bản một MicroID đến địa chỉ email của tôi."
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
msgstr "Các tính năng đã được lưu."
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "Không có địa chỉ email."
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
#, fuzzy
msgid "Cannot normalize that email address"
msgstr "Không thể bình thÆ°á»ng hóa địa chỉ GTalk này"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "Äịa chỉ email không hợp lệ."
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
#, fuzzy
msgid "That is already your email address."
msgstr "Bạn đã dùng địa chỉ email này rồi"
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
#, fuzzy
msgid "That email address already belongs to another user."
msgstr "Äịa chỉ email GTalk này đã có ngÆ°á»i khác sá»­ dụng rồi."
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "Không thể chèn mã xác nhận."
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1478,47 +1610,60 @@ msgstr ""
"Mã xác nhận đã được gửi tới địa chỉ email của bạn. Hãy kiểm tra hộp thư và "
"làm theo hướng dẫn."
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "Sá»± xác nhận chÆ°a được hủy bá»."
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "Sai IM."
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "Sá»± xác nhận đã bị hủy bá»."
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
#, fuzzy
msgid "That is not your email address."
msgstr "Xin lỗi, đó không phải là địa chỉ email mà bạn nhập vào."
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "Äã xóa địa chỉ."
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
#, fuzzy
msgid "No incoming email address."
msgstr "Äịa chỉ email không hợp lệ."
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
#, fuzzy
msgid "Couldn't update user record."
msgstr "Không thể cập nhật thành viên."
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
#, fuzzy
msgid "Incoming email address removed."
msgstr "Äịa chỉ email hoặc mật khẩu không đúng."
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
#, fuzzy
msgid "New incoming email address added."
msgstr "Äã xác nhận địa chỉ này."
@@ -1643,8 +1788,9 @@ msgstr "Không thể chuyển các token yêu cầu đến token truy cập."
msgid "Remote service uses unknown version of OMB protocol."
msgstr "Không biết phiên bản của giao thức OMB."
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "Lỗi xảy ra khi cập nhật hồ sơ cá nhân"
#: actions/getfile.php:79
@@ -1678,13 +1824,13 @@ msgstr "NgÆ°á»i dùng không có thông tin."
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
#, fuzzy
msgid "No profile with that ID."
msgstr "Không tìm thấy trạng thái nào tương ứng với ID đó."
@@ -1708,12 +1854,12 @@ msgstr "NgÆ°á»i dùng không có thông tin."
msgid "User is not a member of group."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "Ban user"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1721,17 +1867,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
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/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "Ban user"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1778,11 +1926,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "Hồ sơ ở nơi khác không khớp với hồ sơ này của bạn"
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1815,36 +1958,40 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
#, fuzzy
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 "
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
#, fuzzy
msgid "Make this user an admin"
msgstr "Kênh mà bạn tham gia"
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, fuzzy, php-format
msgid "%s timeline"
msgstr "Dòng tin nhắn của %s"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "Dòng tin nhắn cho %s"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
#, fuzzy
msgid "Groups"
@@ -1865,7 +2012,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "Tạo nhóm"
@@ -1918,12 +2065,16 @@ msgstr "NgÆ°á»i dùng không có thông tin."
msgid "Error removing the block."
msgstr "Lỗi xảy ra khi lưu thành viên."
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "Cấu hình IM"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1932,16 +2083,26 @@ msgstr ""
"Bạn có thể gửi và nhận những tin nhắn qua Jabber hoặc GTalk [tin nhắn nhanh]"
"(%%doc.im%%). Äịnh dạng địa chỉ của bạn và các thiết lập sau."
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "IM"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "Äịa chỉ Jabber/GTalk vừa được xác nhận."
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1950,12 +2111,9 @@ msgstr ""
"Äang đợi xác nhận đến địa chỉ này. Hãy kiểm tra tài khoản Jabber/GTalk để "
"nhận tin nhắn và lá»i hÆ°á»›ng dẫn. (Bạn đã thêm %s vào danh sách bạn thân chÆ°a?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1964,45 +2122,67 @@ msgstr ""
"Äịa chỉ Jabber hoặc GTalk, giống nhÆ° \"UserName@example.org\". Äầu tiên, hãy "
"tạo thêm %s vào danh sách buddy trên IM client hoặc GTalk của bạn."
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "Tính năng"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "Hãy gửi tin nhắn đến tôi qua Jabber hay GTalk"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "Gửi một tin nhắn khi trạng thái của tôi trên Jabber hay GTalk "
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
"Gá»­i những tin nhắn trả lá»i của tôi từ những ngÆ°á»i mà tôi không theo qua "
"Jabber/GTalk."
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "Gửi MicroID đến địa chỉ Jabber/GTalk của tôi. "
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "Các tính năng đã được lưu."
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "Không có Jabber ID."
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "Không thể bình thÆ°á»ng hóa Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "Jabber ID không hợp lệ"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "Tài khoản đó đã là tên tài khoản Jabber của bạn rồi."
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID này đã thuá»™c vá» ngÆ°á»i khác rồi."
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
@@ -2011,10 +2191,35 @@ msgstr ""
"Mã xác nhận đã được gửi đến địa chỉ IM. Bạn phải chấp nhận %s để có thể gửi "
"tin nhắn đến bạn."
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "Sai IM."
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "Không thể xóa email xác nhận."
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "Sá»± xác nhận đã bị hủy bá»."
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "Äây không phải Jabber ID của bạn."
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "Äã xóa địa chỉ."
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -2034,8 +2239,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "Bạn phải đăng nhập vào má»›i có thể gá»­i thÆ° má»i những "
#: actions/invite.php:72
@@ -2055,7 +2260,9 @@ msgstr "Gá»­i thÆ° má»i đến những ngÆ°á»i chÆ°a có tài khoản"
msgid "You are already subscribed to these users:"
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, fuzzy, php-format
msgid "%1$s (%2$s)"
msgstr "%s (%s)"
@@ -2110,12 +2317,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "Gá»­i"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s moi ban tham gia vao %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2182,7 +2391,9 @@ msgstr "Bạn phải đăng nhập vào má»›i có thể gá»­i thÆ° má»i những
msgid "No nickname or ID."
msgstr "Không có biệt hiệu."
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s và nhóm"
@@ -2192,50 +2403,52 @@ msgstr "%s và nhóm"
msgid "You must be logged in to leave a group."
msgstr "Bạn phải đăng nhập vào má»›i có thể gá»­i thÆ° má»i những "
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s và nhóm"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "Äã đăng nhập."
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "Sai tên đăng nhập hoặc mật khẩu."
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "Chưa được phép."
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "Äăng nhập"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "Nhớ tôi"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "Sẽ tự động đăng nhập, không dành cho các máy sử dụng chung!"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "Mất hoặc quên mật khẩu?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
@@ -2243,11 +2456,15 @@ msgstr ""
"Vì lý do bảo mật, bạn hãy nhập lại tên đăng nhập và mật khẩu trước khi thay "
"đổi trong Ä‘iá»u chỉnh."
-#: actions/login.php:270
-#, php-format
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "Sai tên đăng nhập hoặc mật khẩu."
+
+#: actions/login.php:295
+#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"Hãy đăng nhập với tên đăng nhập và mật khẩu của bạn. Nếu bạn chưa có tài "
"khoản, [hãy đăng ký](%%action.register%%) tài khoản mới, hoặc thử đăng nhập "
@@ -2273,8 +2490,9 @@ 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 "
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "Không có kết quả nào"
#: actions/newapplication.php:52
#, fuzzy
@@ -2313,13 +2531,13 @@ msgstr ""
msgid "New message"
msgstr "Tin mới nhất"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
#, fuzzy
msgid "You can't send a message to this user."
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "Không có nội dung!"
@@ -2327,7 +2545,7 @@ msgstr "Không có nội dung!"
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2342,7 +2560,7 @@ msgstr "Tin mới nhất"
msgid "Direct message to %s sent."
msgstr "Tin nhắn riêng"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
#, fuzzy
msgid "Ajax Error"
msgstr "Lá»—i"
@@ -2351,7 +2569,7 @@ msgstr "Lá»—i"
msgid "New notice"
msgstr "Thông báo mới"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
#, fuzzy
msgid "Notice posted"
msgstr "Tin đã gửi"
@@ -2400,7 +2618,7 @@ msgstr "Các thay đổi phù hợp với từ \"%s\""
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2445,11 +2663,11 @@ msgid "You are not a user of that application."
msgstr "Bạn chưa cập nhật thông tin riêng"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2457,26 +2675,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "Tin nhắn không có hồ sơ cá nhân"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "Trạng thái của %1$s vào %2$s"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "Kết nối"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "Không hỗ trợ định dạng dữ liệu này."
@@ -2591,7 +2814,7 @@ msgid "6 or more characters"
msgstr "Nhiá»u hÆ¡n 6 ký tá»±"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "Xác nhận"
@@ -2603,12 +2826,12 @@ msgstr "Cùng mật khẩu ở trên"
msgid "Change"
msgstr "Thay đổi"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
#, fuzzy
msgid "Password must be 6 or more characters."
msgstr "Mật khẩu phải nhiá»u hÆ¡n 6 ký tá»±."
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "Mật khẩu không khớp."
@@ -2620,7 +2843,7 @@ msgstr "Mật khẩu cũ sai"
msgid "Error saving user; invalid."
msgstr "Lỗi xảy ra khi lưu thành viên; không hợp lệ."
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "Không thể lưu mật khẩu mới"
@@ -2629,7 +2852,7 @@ msgid "Password saved."
msgstr "Äã lÆ°u mật khẩu."
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2639,23 +2862,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "Background Theme:"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2810,18 +3033,19 @@ msgstr ""
msgid "People search"
msgstr "Tìm kiếm nhiá»u ngÆ°á»i"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "Äịa chỉ email không hợp lệ."
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "Dòng tin nhắn cho %s"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "Nội dung tin nhắn không hợp lệ"
#: actions/postnotice.php:101
@@ -2849,43 +3073,44 @@ msgstr "Hồ sơ này không biết"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64 chữ cái thÆ°á»ng hoặc là chữ số, không có dấu chấm hay "
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "Tên đầy đủ"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "Trang chủ hoặc Blog"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "URL vỠTrang chính, Blog, hoặc hồ sơ cá nhân của bạn trên "
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "Nói vỠbạn và những sở thích của bạn khoảng 140 ký tự"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "Nói vỠbạn và những sở thích của bạn khoảng 140 ký tự"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "Lý lịch"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "Thành phố"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "Bạn ở đâu, \"Thành phố, Tỉnh thành, Quốc gia\""
@@ -2895,7 +3120,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "Từ khóa"
@@ -2925,7 +3150,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "Tá»± Ä‘á»™ng theo những ngÆ°á»i nào đăng ký theo tôi"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "Lý lịch quá dài (không quá 140 ký tự)"
@@ -2970,7 +3195,7 @@ msgstr "Äã lÆ°u các Ä‘iá»u chỉnh."
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3128,7 +3353,7 @@ msgstr "Khởi tạo lại mật khẩu"
msgid "Recover password"
msgstr "Khôi phục mật khẩu"
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "Yêu cầu khôi phục lại mật khẩu đã được gửi"
@@ -3148,20 +3373,20 @@ msgstr "Khởi tạo"
msgid "Enter a nickname or email address."
msgstr "Nhập biệt hiệu hoặc email."
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
"Không tìm thấy ngÆ°á»i dùng nào tÆ°Æ¡ng ứng vá»›i địa chỉ email hoặc username đó."
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "Thành viên này đã không đăng ký địa chỉ email."
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "Lỗi xảy ra khi lưu địa chỉ đã được xác nhận."
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
@@ -3169,109 +3394,124 @@ msgstr ""
"Hướng dẫn cách khôi phục mật khẩu đã được gửi đến địa chỉ email đăng ký "
"trong tài khoản của bạn."
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "Bất ngỠreset mật khẩu."
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "Mật khẩu phải nhiá»u hÆ¡n 6 ký tá»±."
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "Mật khẩu và mật khẩu xác nhận không khớp nhau."
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "Lỗi xảy ra khi tạo thành viên."
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "Mật khẩu má»›i đã được lÆ°u. Bạn có thể đăng nhập ngay bây giá»."
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "Lỗi xảy ra với mã xác nhận."
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "Äăng ký thành công"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "Äăng ký"
-#: actions/register.php:135
+#: actions/register.php:142
#, fuzzy
msgid "Registration not allowed."
msgstr "Biệt hiệu không được cho phép."
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "Bạn không thể đăng ký nếu không đồng ý các Ä‘iá»u khoản."
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "Äịa chỉ email đã tồn tại."
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "Tên đăng nhập hoặc mật khẩu không hợp lệ."
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
"1-64 chữ cái thÆ°á»ng hoặc là chữ số, không có dấu chấm hay khoảng trắng. Bắt "
"buá»™c."
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "Nhiá»u hÆ¡n 6 ký tá»±. Bắt buá»™c"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "Cùng mật khẩu ở trên. Bắt buộc."
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "Email"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "Chỉ dùng để cập nhật, thông báo, và hồi phục mật khẩu"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "HỠtên đầy đủ của bạn, tốt nhất là tên thật của bạn."
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "Ghi chú và các file của tôi đã có ở phía dưới"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr " ngoại trừ thông tin riêng: mật khẩu, email, địa chỉ IM, số điện thoại"
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3302,7 +3542,7 @@ msgstr ""
"\n"
"Cảm ơn bạn đã đăng ký để là thành viên và rất mong bạn sẽ thích dịch vụ này."
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3348,7 +3588,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "URL trong hồ sơ cá nhân của bạn ở trên các trang microblogging khác"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "Theo bạn này"
@@ -3389,7 +3629,7 @@ msgstr "Bạn không thể đăng ký nếu không đồng ý các Ä‘iá»u khoáº
msgid "You already repeated that notice."
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "Tạo"
@@ -3429,7 +3669,7 @@ msgstr "Dòng tin nhắn cho %s"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3442,8 +3682,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3461,7 +3701,7 @@ msgstr "Bạn đã theo những ngÆ°á»i này:"
msgid "User doesn't have this role."
msgstr "Hồ sơ ở nơi khác không khớp với hồ sơ này của bạn"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "Hình đại diện đã được cập nhật."
@@ -3478,7 +3718,7 @@ msgstr "NgÆ°á»i dùng không có thông tin."
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3518,28 +3758,32 @@ msgstr "Bạn phải đăng nhập vào má»›i có thể gá»­i thÆ° má»i những
msgid "Application profile"
msgstr "Tin nhắn không có hồ sơ cá nhân"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "Biệt danh"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "ThÆ° má»i đã gá»­i"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
msgid "Description"
msgstr "Mô tả"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "Số liệu thống kê"
@@ -3624,16 +3868,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3650,72 +3894,72 @@ msgstr "%s và nhóm"
msgid "%1$s group, page %2$d"
msgstr "Thành viên"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "Thông tin nhóm"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
#, fuzzy
msgid "Note"
msgstr "Tin nhắn"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
#, fuzzy
msgid "Group actions"
msgstr "Mã nhóm"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "Dòng tin nhắn cho %s"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "Dòng tin nhắn cho %s"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "Dòng tin nhắn cho %s"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "Hộp thư đi của %s"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
msgid "Members"
msgstr "Thành viên"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
#, fuzzy
msgid "All members"
msgstr "Thành viên"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "Tạo"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3725,7 +3969,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3734,7 +3978,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3811,8 +4055,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3866,11 +4110,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3965,7 +4209,7 @@ msgid "Unable to save site notice."
msgstr "Không thể lưu thông tin Twitter của bạn!"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3982,49 +4226,79 @@ msgstr ""
msgid "Save site notice"
msgstr "Thông báo mới"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "Thiết lập SMS"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "Bạn có thể nhận tin nhắn SMS qua email từ %%site.name%%."
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IM"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "SMS xác nhận ngay - đã cho phép gửi qua điện thoại. "
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
#, fuzzy
msgid "Awaiting confirmation on this phone number."
msgstr "Äó không phải là số Ä‘iện thoại của bạn."
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
#, fuzzy
msgid "Confirmation code"
msgstr "Không có mã số xác nhận."
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "Nhập mã mà bạn nhận được trên điện thoại của bạn."
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "Xác nhận"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "Số điện thoại để nhắn SMS "
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "Số điện thoại, không cho phép nhập dấu chấm và ký tự "
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "Tính năng"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
@@ -4032,26 +4306,37 @@ msgstr ""
"Hãy gửi thông báo đến tôi qua SMS; Tôi biết là bạn đang phải trả giá cao "
"cho dịch vụ của chúng tôi. "
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "Các tính năng đã được lưu."
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "Không có số điện thoại."
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
#, fuzzy
msgid "No carrier selected."
msgstr "Bạn chÆ°a chá»n hình để Ä‘Æ°a lên."
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
#, fuzzy
msgid "That is already your phone number."
msgstr "Äó không phải là số Ä‘iện thoại của bạn."
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
#, fuzzy
msgid "That phone number already belongs to another user."
msgstr "Äịa chỉ email Yahoo này đã có ngÆ°á»i khác sá»­ dụng rồi."
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -4060,25 +4345,44 @@ msgstr ""
"Mã xác nhận đã được gửi tới địa chỉ email của bạn. Hãy kiểm tra hộp thư và "
"làm theo hướng dẫn."
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
#, fuzzy
msgid "That is the wrong confirmation number."
msgstr "Äó không phải là số Ä‘iện thoại của bạn."
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "Sá»± xác nhận đã bị hủy bá»."
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "Äó không phải là số Ä‘iện thoại của bạn."
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "Số điện thoại để nhắn SMS "
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
#, fuzzy
msgid "Mobile carrier"
msgstr "Chá»n nhà cung cấp Mobile"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "Chá»n nhà cung cấp Mobile"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4088,13 +4392,14 @@ msgstr ""
"dịch vụ điện thoại nào cho phép nhận SMS qua email mà chưa có trong danh "
"sách này, vui lòng gửi mail cho chúng tôi đến địa chỉ %s."
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "Không có mã nào được nhập"
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4116,7 +4421,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4157,8 +4462,8 @@ msgstr "Thay đổi hình đại diện"
msgid "You are not subscribed to that profile."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "Không thể tạo đăng nhận."
@@ -4253,12 +4558,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s dang theo doi tin nhan cua ban tren %2$s."
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "Không có Jabber ID."
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS"
@@ -4292,13 +4597,13 @@ msgstr "Không có tài liệu nào."
msgid "Tag %s"
msgstr "Từ khóa"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "Hồ sơ"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4332,10 +4637,6 @@ msgstr ""
msgid "No such tag."
msgstr "Không có tin nhắn nào."
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "Phương thức API dưới cấu trúc có sẵn."
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4353,7 +4654,7 @@ msgstr "NgÆ°á»i dùng không có thông tin."
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "Không có URL cho hồ sÆ¡ để quay vá»."
#: actions/unsubscribe.php:98
@@ -4390,7 +4691,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "Hồ sơ "
@@ -4455,7 +4757,7 @@ msgstr ""
"nhắn của các thành viên này. Nếu bạn không yêu cầu đăng nhận xem tin nhắn "
"của há», hãy nhấn \"Hủy bá»\""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4561,48 +4863,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "Thành viên"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "Số liệu thống kê"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4610,7 +4918,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4618,272 +4926,386 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "Cá nhân"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "Kích thước không hợp lệ."
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "Thông tin nhóm"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "Không thể cập nhật thành viên."
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "Thông tin nhóm"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "Không thể cập nhật thành viên."
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "Không thể tạo favorite."
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "Thư bạn đã gửi"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
#, fuzzy
msgid "Could not insert message."
msgstr "Không thể chèn thêm vào đăng nhận."
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
#, fuzzy
msgid "Could not update message with new URI."
msgstr "Không thể cập nhật thông tin user với địa chỉ email đã được xác nhận."
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
+#, php-format
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
#, fuzzy, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "Database error inserting hashtag: %s"
msgstr "Lá»—i cÆ¡ sở dữ liệu khi chèn trả lá»i: %s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%s (%s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "NgÆ°á»i dùng không có thông tin."
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "Không thể lưu thông tin Twitter của bạn!"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
#, fuzzy
msgid "User has blocked you."
msgstr "NgÆ°á»i dùng không có thông tin."
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "Chưa đăng nhận!"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "Không thể xóa đăng nhận."
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "Không thể xóa đăng nhận."
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "Không thể xóa đăng nhận."
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "%s chào mừng bạn "
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "Không thể tạo favorite."
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "Không thể tạo đăng nhận."
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "Không thể tạo đăng nhận."
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "Không thể tạo đăng nhận."
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "Thay đổi các thiết lập trong hồ sơ cá nhân của bạn"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "Cập nhật hình đại diện không thành công."
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "Thay đổi mật khẩu của bạn"
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "Äang thá»±c hiện việc thay đổi email"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "Hồ sơ"
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
+msgstr ""
+
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
#, fuzzy
msgid "Other"
msgstr "Sau"
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
-msgstr ""
-
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%s (%s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "Cá nhân"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "Thay đổi mật khẩu của bạn"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "Không thể chuyển đến máy chủ: %s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "Kết nối"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "Tôi theo"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
@@ -4891,69 +5313,72 @@ msgstr ""
"Äiá»n địa chỉ email và ná»™i dung tin nhắn để gá»­i thÆ° má»i bạn bè và đồng nghiệp "
"của bạn tham gia vào dịch vụ này."
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "ThÆ° má»i"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "Thoát"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "Tạo tài khoản mới"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "Äăng ký"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "Äăng nhập"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "Hướng dẫn"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "Hướng dẫn"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4961,77 +5386,91 @@ msgstr "Tìm kiếm"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "Thông báo mới"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "Thông báo mới"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "Tôi theo"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "Hướng dẫn"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "Giới thiệu"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "Riêng tư"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "Nguồn"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "Liên hệ"
-#: lib/action.php:771
+#: lib/action.php:794
#, fuzzy
msgid "Badge"
msgstr "Tin đã gửi"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** là dịch vụ gửi tin nhắn được cung cấp từ [%%site.broughtby%"
"%](%%site.broughtbyurl%%). "
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
-msgstr "**%%site.name%%** là dịch vụ gửi tin nhắn. "
+msgid "**%%site.name%%** is a microblogging service."
+msgstr "**%%site.name%%** là dịch vụ gửi tin nhắn."
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, fuzzy, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -5042,72 +5481,86 @@ msgstr ""
"quyá»n [GNU Affero General Public License](http://www.fsf.org/licensing/"
"licenses/agpl-3.0.html)."
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "Tìm theo nội dung của tin nhắn"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "Sau"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "TrÆ°á»›c"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "Biệt hiệu không được cho phép."
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -5117,167 +5570,205 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "Không thể lưu thông tin Twitter của bạn!"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "Xac nhan dia chi email"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "ThÆ° má»i"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "Xác nhận SMS"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "Cá nhân"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "Xác nhận SMS"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "Xác nhận SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "Xác nhận SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "Xác nhận SMS"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "Thông báo mới"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "Xác nhận SMS"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "Nói vỠnhững sở thích của nhóm trong vòng 140 ký tự"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "Nói vỠnhững sở thích của nhóm trong vòng 140 ký tự"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "Nguồn"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "URL vỠTrang chính, Blog, hoặc hồ sơ cá nhân của bạn trên "
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "Nguồn"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "URL vỠTrang chính, Blog, hoặc hồ sơ cá nhân của bạn trên "
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "Hủy"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "Xóa"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "Hồ sơ "
@@ -5290,49 +5781,70 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "Äã lÆ°u mật khẩu."
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "Äã lÆ°u mật khẩu."
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
#, fuzzy
msgid "Command results"
msgstr "Không có kết quả nào"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
#, fuzzy
msgid "Command failed"
msgstr " và bạn bè"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr ""
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "Không tìm thấy trạng thái nào tương ứng với ID đó."
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "NgÆ°á»i dùng không có thông tin."
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "Không thể cập nhật thông tin user với địa chỉ email đã được xác nhận."
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "Không thể cập nhật thông tin user với địa chỉ email đã được xác nhận."
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "Tin đã gửi"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5340,207 +5852,209 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "Không tìm thấy trạng thái nào tương ứng với ID đó."
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "NgÆ°á»i dùng không có thông tin."
-
-#: lib/command.php:190
+#: lib/command.php:302
#, fuzzy
msgid "Notice marked as fave."
msgstr "Tin nhắn này đã có trong danh sách tin nhắn ưa thích của bạn rồi!"
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to 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."
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%s và nhóm"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from 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."
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%s và nhóm"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "Tên đầy đủ"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, fuzzy, php-format
msgid "Location: %s"
msgstr "Thành phố: %s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, fuzzy, php-format
msgid "Homepage: %s"
msgstr "Trang chủ hoặc Blog: %s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, fuzzy, php-format
msgid "About: %s"
msgstr "Giới thiệu"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, fuzzy, php-format
msgid "Direct message to %s sent"
msgstr "Tin nhắn riêng"
-#: lib/command.php:369
+#: lib/command.php:494
#, fuzzy
msgid "Error sending direct message."
msgstr "Thư bạn đã gửi"
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "Bạn không thể đăng ký nếu không đồng ý các Ä‘iá»u khoản."
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "Xóa tin nhắn"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "Tin đã gửi"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "Trả lá»i tin nhắn này"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "Có lỗi xảy ra khi lưu tin nhắn."
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
+#: lib/command.php:628
#, fuzzy
-msgid "No such user"
-msgstr "Không có user nào."
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "Bạn chưa cập nhật thông tin riêng"
-#: lib/command.php:561
+#: lib/command.php:634
#, fuzzy, php-format
msgid "Subscribed to %s"
msgstr "Theo nhóm này"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, fuzzy, php-format
msgid "Unsubscribed from %s"
msgstr "Hết theo"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
#, fuzzy
msgid "Notification off."
msgstr "Không có mã số xác nhận."
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
#, fuzzy
msgid "Notification on."
msgstr "Không có mã số xác nhận."
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "Hết theo"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "Bạn đã theo những ngÆ°á»i này:"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "Không thể tạo favorite."
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "Không thể tạo favorite."
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "Bạn chưa cập nhật thông tin riêng"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "Bạn chưa cập nhật thông tin riêng"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5582,20 +6096,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "Không có mã số xác nhận."
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5781,57 +6295,58 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "Trang này không phải là phÆ°Æ¡ng tiện truyá»n thông mà bạn chấp nhận."
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "Không hỗ trợ kiểu file ảnh này."
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr ""
"Bạn có thể cập nhật hồ sÆ¡ cá nhân tại đây để má»i ngÆ°á»i có thể biết thông tin "
"vỠbạn."
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "Upload từng phần."
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "Hệ thống xảy ra lỗi trong khi tải file."
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "File há»ng hoặc không phải là file ảnh."
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "Không hỗ trợ kiểu file ảnh này."
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "Không có tin nhắn nào."
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
#, fuzzy
msgid "Unknown file type"
msgstr "Không hỗ trợ kiểu file ảnh này."
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5856,11 +6371,13 @@ msgstr "Sai tên đăng nhập hoặc mật khẩu."
msgid "Sign up for a new account"
msgstr "Tạo tài khoản mới"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "Xac nhan dia chi email"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, fuzzy, php-format
msgid ""
"Hey, %s.\n"
@@ -5892,12 +6409,21 @@ msgstr ""
"%4$s\n"
"\n"
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s đang theo dõi lưu ý của bạn trên %2$s."
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5918,17 +6444,20 @@ msgstr ""
"NgÆ°á»i bạn trung thành của bạn,\n"
"%4$s.\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "Thành phố: %s"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "Dia chi email moi de gui tin nhan den %s"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5949,21 +6478,31 @@ msgstr ""
"Chúc sức khá»e,\n"
"%4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, fuzzy, php-format
msgid "%s status"
msgstr "Trạng thái của %1$s vào %2$s"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "Xác nhận SMS"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "Äó không phải là số Ä‘iện thoại của bạn."
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5979,12 +6518,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "Bạn có tin nhắn riêng từ %s"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -6017,12 +6558,14 @@ msgstr ""
"Chúc sức khá»e,\n"
"%5$s\n"
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s da them tin nhan cua ban vao danh sach tin nhan ua thich"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, fuzzy, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -6056,12 +6599,22 @@ msgstr ""
"Chúc sức khá»e,\n"
"%5$s\n"
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -6074,6 +6627,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -6086,7 +6651,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " từ "
@@ -6143,25 +6708,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "Không thể lấy lại các tin nhắn ưa thích"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6220,52 +6785,56 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "Không"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "Không có nội dung!"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "Tạo"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
#, fuzzy
msgid "Reply to this notice"
msgstr "Trả lá»i tin nhắn này"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr "Trả lá»i"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "Tin đã gửi"
@@ -6293,6 +6862,10 @@ msgstr "Lỗi xảy ra khi thêm mới hồ sơ cá nhân"
msgid "Error inserting avatar"
msgstr "Lỗi xảy ra khi thêm mới hình đại diện"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "Lỗi xảy ra khi cập nhật hồ sơ cá nhân"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "Lỗi xảy ra khi thêm mới hồ sơ cá nhân"
@@ -6339,12 +6912,12 @@ msgstr "Thư bạn đã gửi"
msgid "Tags in %s's notices"
msgstr "cảnh báo tin nhắn"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "Không tìm thấy action"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "Tôi theo bạn này"
@@ -6352,34 +6925,34 @@ msgstr "Tôi theo bạn này"
msgid "All subscriptions"
msgstr "Tất cả đăng nhận"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "Bạn này theo tôi"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "Bạn này theo tôi"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "Gia nhập từ"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
#, fuzzy
msgid "All groups"
msgstr "Nhóm"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "Không có tài liệu nào."
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6406,12 +6979,21 @@ msgstr ""
msgid "Popular"
msgstr "Tên tài khoản"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "Không có tài liệu nào."
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "Trả lá»i tin nhắn này"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "Có"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "Trả lá»i tin nhắn này"
@@ -6421,7 +7003,7 @@ msgstr "Trả lá»i tin nhắn này"
msgid "Revoke the \"%s\" role from this user"
msgstr "Ban user"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6529,6 +7111,50 @@ msgstr ""
msgid "None"
msgstr "Không"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "Cập nhật hình đại diện không thành công."
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "Lỗi xảy ra khi cập nhật hồ sơ cá nhân"
+
#: lib/topposterssection.php:74
#, fuzzy
msgid "Top posters"
@@ -6560,95 +7186,114 @@ msgstr "Ngừng đăng ký từ ngÆ°á»i dùng này"
msgid "Unsubscribe"
msgstr "Hết theo"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "NgÆ°á»i dùng không có thông tin."
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "Hình đại diện"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
#, fuzzy
msgid "User actions"
msgstr "Không tìm thấy action"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "Các thiết lập cho Hồ sơ cá nhân"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
#, fuzzy
msgid "Send a direct message to this user"
msgstr "Bạn đã theo những ngÆ°á»i này:"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
#, fuzzy
msgid "Message"
msgstr "Tin mới nhất"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "Hồ sơ"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "vài giây trước"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "1 phút trước"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "%d phút trước"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "1 giá» trÆ°á»›c"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "%d giá» trÆ°á»›c"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "1 ngày trước"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "%d ngày trước"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "1 tháng trước"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "%d tháng trước"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "1 năm trước"
@@ -6662,7 +7307,7 @@ msgstr "Trang chủ không phải là URL"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/locale/zh_CN/LC_MESSAGES/statusnet.po b/locale/zh_CN/LC_MESSAGES/statusnet.po
index cc1761616..9de9d8e75 100644
--- a/locale/zh_CN/LC_MESSAGES/statusnet.po
+++ b/locale/zh_CN/LC_MESSAGES/statusnet.po
@@ -1,5 +1,6 @@
# Translation of StatusNet to Simplified Chinese
#
+# Author@translatewiki.net: Chenxiaoqino
# Author@translatewiki.net: Shizhao
# --
# Messages of identi.ca
@@ -10,12 +11,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:13+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:08+0000\n"
"Language-Team: Simplified Chinese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: zh-hans\n"
"X-Message-Group: out-statusnet\n"
@@ -23,7 +24,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "接å—"
@@ -43,7 +44,7 @@ msgstr "注册"
#. TRANS: Checkbox instructions for admin setting "Private"
#: actions/accessadminpanel.php:165
msgid "Prohibit anonymous users (not logged in) from viewing site?"
-msgstr ""
+msgstr "è¦ç¦æ­¢åŒ¿å用户(未登录)æµè§ˆç½‘ç«™å—?"
#. TRANS: Checkbox label for prohibiting anonymous users from viewing site.
#: actions/accessadminpanel.php:167
@@ -55,7 +56,7 @@ msgstr "éšç§"
#. TRANS: Checkbox instructions for admin setting "Invite only"
#: actions/accessadminpanel.php:174
msgid "Make registration invitation only."
-msgstr ""
+msgstr "åªå…许邀请注册。"
#. TRANS: Checkbox label for configuring site as invite only.
#: actions/accessadminpanel.php:176
@@ -66,13 +67,13 @@ msgstr "邀请"
#. TRANS: Checkbox instructions for admin setting "Closed" (no new registrations)
#: actions/accessadminpanel.php:183
msgid "Disable new registrations."
-msgstr ""
+msgstr "ç¦æ­¢æ–°ç”¨æˆ·æ³¨å†Œ"
#. TRANS: Checkbox label for disabling new user registrations.
#: actions/accessadminpanel.php:185
#, fuzzy
msgid "Closed"
-msgstr "阻止"
+msgstr "已关闭"
#. TRANS: Title / tooltip for button to save access settings in site admin panel
#: actions/accessadminpanel.php:202
@@ -80,85 +81,91 @@ msgstr "阻止"
msgid "Save access settings"
msgstr "头åƒè®¾ç½®"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
#, fuzzy
msgctxt "BUTTON"
msgid "Save"
msgstr "ä¿å­˜"
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
-msgid "No such page"
+#, fuzzy
+msgid "No such page."
msgstr "没有该页é¢"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "没有这个用户。"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
-#, fuzzy, php-format
+#: actions/all.php:90
+#, php-format
msgid "%1$s and friends, page %2$d"
-msgstr "%s åŠå¥½å‹"
+msgstr "%1$s 和好å‹ï¼Œç¬¬%2$d页"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s åŠå¥½å‹"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "%s 好å‹çš„èšåˆ(RSS 1.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "%s 好å‹çš„èšåˆ(RSS 2.0)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "%s 好å‹çš„èšåˆ(Atom)"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr "这是 %s 和好å‹çš„时间线,但是没有任何人å‘布内容。"
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -166,79 +173,80 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
-#, fuzzy
+#: actions/all.php:182
msgid "You and friends"
-msgstr "%s åŠå¥½å‹"
+msgstr "你和好å‹"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr "æ¥è‡ª%2$s 上 %1$s 和好å‹çš„æ›´æ–°ï¼"
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "API 方法未实现ï¼"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr "此方法接å—POST请求。"
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "无法更新用户。"
@@ -248,7 +256,7 @@ msgstr "无法更新用户。"
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr "用户没有个人信æ¯ã€‚"
@@ -259,9 +267,9 @@ msgid "Could not save profile."
msgstr "无法ä¿å­˜ä¸ªäººä¿¡æ¯ã€‚"
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -320,48 +328,49 @@ msgstr "å‘ç»™ %s 的直接消æ¯"
msgid "All the direct messages sent to %s"
msgstr "å‘ç»™ %s 的直接消æ¯"
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr "消æ¯æ²¡æœ‰æ­£æ–‡ï¼"
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, fuzzy, php-format
msgid "That's too long. Max message size is %d chars."
msgstr "超出长度é™åˆ¶ã€‚ä¸èƒ½è¶…过 140 个字符。"
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr "未找到收件人。"
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr "无法å‘并éžå¥½å‹çš„用户å‘é€ç›´æŽ¥æ¶ˆæ¯ã€‚"
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr "没有找到此IDçš„ä¿¡æ¯ã€‚"
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
#, fuzzy
msgid "This status is already a favorite."
msgstr "已收è—此通告ï¼"
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr "无法创建收è—。"
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
#, fuzzy
msgid "That status is not a favorite."
msgstr "此通告未被收è—ï¼"
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr "无法删除收è—。"
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
+#, fuzzy
+msgid "Could not follow user: profile not found."
msgstr "无法订阅用户:未找到。"
#: actions/apifriendshipscreate.php:118
@@ -379,8 +388,9 @@ msgstr "无法订阅用户:未找到。"
msgid "You cannot unfollow yourself."
msgstr "无法更新用户。"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+#, fuzzy
+msgid "Two valid IDs or screen_names must be supplied."
msgstr "å¿…é¡»æ供两个用户å¸å·æˆ–昵称。"
#: actions/apifriendshipsshow.php:134
@@ -393,118 +403,130 @@ msgstr "无法获å–收è—的通告。"
msgid "Could not find target user."
msgstr "找ä¸åˆ°ä»»ä½•ä¿¡æ¯ã€‚"
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "昵称åªèƒ½ä½¿ç”¨å°å†™å­—æ¯å’Œæ•°å­—,ä¸åŒ…å«ç©ºæ ¼ã€‚"
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "昵称已被使用,æ¢ä¸€ä¸ªå§ã€‚"
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr "ä¸æ˜¯æœ‰æ•ˆçš„昵称。"
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "主页的URLä¸æ­£ç¡®ã€‚"
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "å…¨å过长(ä¸èƒ½è¶…过 255 个字符)。"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
-msgstr "æ述过长(ä¸èƒ½è¶…过140字符)。"
+msgstr "æ述过长(ä¸èƒ½è¶…过%d 个字符)。"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "ä½ç½®è¿‡é•¿(ä¸èƒ½è¶…过255个字符)。"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
-msgstr ""
+msgstr "太多化å了ï¼æœ€å¤š%d 个。"
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "主页'%s'ä¸æ­£ç¡®"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
-msgstr "昵称已被使用,æ¢ä¸€ä¸ªå§ã€‚"
+msgstr "昵称%s已被使用,æ¢ä¸€ä¸ªå§ã€‚"
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
-msgstr ""
+msgstr "昵称ä¸èƒ½å’ŒåŒ–å相åŒã€‚"
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
-#, fuzzy
-msgid "Group not found!"
-msgstr "API 方法未实现ï¼"
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
+msgid "Group not found."
+msgstr "å°ç»„未找到。"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
#, fuzzy
msgid "You are already a member of that group."
msgstr "您已ç»æ˜¯è¯¥ç»„æˆå‘˜"
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "无法把 %s 用户添加到 %s 组"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "您未告知此个人信æ¯"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "无法订阅用户:未找到。"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "%s 群组"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "%s 组是æˆå‘˜ç»„æˆäº†"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr "%s 群组"
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, fuzzy, php-format
msgid "groups on %s"
msgstr "组动作"
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "上传"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -515,17 +537,17 @@ msgid "Invalid token."
msgstr "大å°ä¸æ­£ç¡®ã€‚"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -559,12 +581,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr "未预料的表å•æ交。"
@@ -584,20 +609,22 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
msgid "Account"
msgstr "å¸å·"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "昵称"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr "密ç "
@@ -614,11 +641,11 @@ msgstr "全部"
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr "此方法接å—POST或DELETE请求。"
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr "您ä¸èƒ½åˆ é™¤å…¶ä»–用户的状æ€ã€‚"
@@ -637,61 +664,66 @@ msgstr "无法开å¯é€šå‘Šã€‚"
msgid "Already repeated that notice."
msgstr "删除通告"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "头åƒå·²æ›´æ–°ã€‚"
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr "没有找到此IDçš„ä¿¡æ¯ã€‚"
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, fuzzy, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr "超出长度é™åˆ¶ã€‚ä¸èƒ½è¶…过 140 个字符。"
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+#, fuzzy
+msgid "Not found."
msgstr "未找到"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
#, fuzzy
msgid "Unsupported format."
msgstr "ä¸æ”¯æŒè¿™ç§å›¾åƒæ ¼å¼ã€‚"
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%s çš„æ”¶è— / %s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "%s 收è—了 %s çš„ %s 通告。"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s / å›žå¤ %2$s 的消æ¯"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr "å›žå¤ %2$s / %3$s çš„ %1$s 更新。"
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr "%s 公众时间表"
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr "æ¥è‡ªæ‰€æœ‰äººçš„ %s 消æ¯ï¼"
@@ -706,20 +738,19 @@ msgstr "%s 的回å¤"
msgid "Repeats of %s"
msgstr "%s 的回å¤"
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr "带 %s 标签的通告"
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "%2$s 上 %1$s çš„æ›´æ–°ï¼"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "未找到"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr "API 方法尚未实现。"
#: actions/attachment.php:73
#, fuzzy
@@ -741,8 +772,9 @@ msgstr "没有大å°ã€‚"
msgid "Invalid size."
msgstr "大å°ä¸æ­£ç¡®ã€‚"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "头åƒ"
@@ -752,9 +784,10 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr "您å¯ä»¥åœ¨è¿™é‡Œä¸Šä¼ ä¸ªäººå¤´åƒã€‚"
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+#, fuzzy
+msgid "User without matching profile."
msgstr "找ä¸åˆ°åŒ¹é…的用户。"
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -773,7 +806,7 @@ msgid "Preview"
msgstr "预览"
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
#, fuzzy
msgid "Delete"
msgstr "删除"
@@ -786,23 +819,28 @@ msgstr "上传"
msgid "Crop"
msgstr "剪è£"
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+#, fuzzy
+msgid "No file uploaded."
+msgstr "没有收件人。"
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr "请选择一å—方形区域作为你的头åƒ"
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr "文件数æ®ä¸¢å¤±"
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "头åƒå·²æ›´æ–°ã€‚"
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "更新头åƒå¤±è´¥ã€‚"
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "头åƒå·²æ›´æ–°ã€‚"
@@ -812,41 +850,58 @@ msgstr "头åƒå·²æ›´æ–°ã€‚"
msgid "You already blocked that user."
msgstr "您已æˆåŠŸé˜»æ­¢è¯¥ç”¨æˆ·ï¼š"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
#, fuzzy
msgid "Block user"
msgstr "阻止用户"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+#, fuzzy
+msgctxt "BUTTON"
msgid "No"
msgstr "å¦"
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "å–消阻止次用户"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+#, fuzzy
+msgctxt "BUTTON"
msgid "Yes"
msgstr "是"
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "阻止该用户"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr "ä¿å­˜é˜»æ­¢ä¿¡æ¯å¤±è´¥ã€‚"
@@ -859,8 +914,8 @@ msgstr "ä¿å­˜é˜»æ­¢ä¿¡æ¯å¤±è´¥ã€‚"
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
msgid "No such group."
msgstr "没有这个组。"
@@ -893,9 +948,10 @@ msgstr "å–消阻止"
msgid "Unblock this user"
msgstr "å–消阻止次用户"
-#: actions/bookmarklet.php:50
-#, fuzzy
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, fuzzy, php-format
+msgid "Post to %s"
msgstr "相片"
#: actions/confirmaddress.php:75
@@ -910,34 +966,44 @@ msgstr "未找到确认ç ã€‚"
msgid "That confirmation code is not for you!"
msgstr "此确认ç ä¸é€‚用ï¼"
-#: actions/confirmaddress.php:90
-#, php-format
-msgid "Unrecognized address type %s"
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
+#, fuzzy, php-format
+msgid "Unrecognized address type %s."
msgstr "ä¸å¯è¯†åˆ«çš„地å€ç±»åž‹ %s"
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr "此地å€å·²è¢«ç¡®è®¤ã€‚"
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "无法更新用户。"
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "无法删除电å­é‚®ä»¶ç¡®è®¤ã€‚"
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "确认地å€"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr "åœ°å€ \"%s\" 已确认。"
@@ -948,7 +1014,7 @@ msgid "Conversation"
msgstr "确认ç "
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr "通告"
@@ -970,7 +1036,7 @@ msgstr "您未告知此个人信æ¯"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
#, fuzzy
msgid "There was a problem with your session token."
msgstr "会è¯æ ‡è¯†æœ‰é—®é¢˜ï¼Œè¯·é‡è¯•ã€‚"
@@ -986,24 +1052,28 @@ msgid ""
"about the application from the database, including all existing user "
"connections."
msgstr ""
+"你确定è¦åˆ é™¤è¿™ä¸ªç»„件å—?这将从数æ®åº“中清除有关这个组件的所有数æ®ï¼ŒåŒ…括所有的"
+"用户è”系。"
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "无法删除通告。"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "删除通告"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr "未登录。"
@@ -1027,12 +1097,14 @@ msgstr "删除通告"
msgid "Are you sure you want to delete this notice?"
msgstr "确定è¦åˆ é™¤è¿™æ¡æ¶ˆæ¯å—?"
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "无法删除通告。"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
#, fuzzy
msgid "Delete this notice"
msgstr "删除通告"
@@ -1058,136 +1130,157 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "删除通告"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "大å°ä¸æ­£ç¡®ã€‚"
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "修改密ç "
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "邀请"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "修改"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "新通告"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
#, fuzzy
msgid "Theme for the site."
msgstr "登出本站"
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "新通告"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, fuzzy, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr "ä½ å¯ä»¥ç»™ä½ çš„组上载一个logo图。"
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "修改密ç "
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "连接"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
#, fuzzy
msgid "Sidebar"
msgstr "æœç´¢"
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr "文本"
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "登录"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr "ä¿å­˜"
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1304,11 +1397,17 @@ msgstr "使用这个表å•æ¥ç¼–辑组"
msgid "description is too long (max %d chars)."
msgstr "æ述过长(ä¸èƒ½è¶…过140字符)。"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "主页'%s'ä¸æ­£ç¡®"
+
#: actions/editgroup.php:258
msgid "Could not update group."
msgstr "无法更新组"
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "无法创建收è—。"
@@ -1317,32 +1416,45 @@ msgstr "无法创建收è—。"
msgid "Options saved."
msgstr "选项已ä¿å­˜ã€‚"
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "电å­é‚®ä»¶è®¾ç½®"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr "设置 %%site.name%% å‘é€çš„邮件。"
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "地å€"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "电å­é‚®ä»¶åœ°å€"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr "已确认的电å­é‚®ä»¶ã€‚"
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+#, fuzzy
+msgctxt "BUTTON"
msgid "Remove"
msgstr "移除"
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
@@ -1350,108 +1462,142 @@ msgstr ""
"等待确认此地å€ã€‚请查看您的收件箱(和垃圾箱)是å¦æ”¶åˆ°äº†é‚®ä»¶ï¼Œå…¶ä¸­åŒ…å«äº†è¿›ä¸€æ­¥çš„"
"指示。"
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "å–消"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "电å­é‚®ä»¶åœ°å€"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr "电å­é‚®ä»¶ï¼Œç±»ä¼¼ \"UserName@example.org\""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "添加"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr "å‘布用的电å­é‚®ä»¶"
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr "å‘这个电å­é‚®ä»¶å‘信以å‘布新的通告。"
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr "生æˆæ–°çš„电å­é‚®ä»¶åœ°å€ç”¨äºŽå‘布信æ¯ï¼›å–消旧的。"
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+#, fuzzy
+msgctxt "BUTTON"
msgid "New"
msgstr "新建"
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
msgstr "首选项"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr "如果有新订阅,通过电å­é‚®ä»¶å‘Šè¯‰æˆ‘。"
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr "如果有人收è—我的通告,å‘邮件通知我。"
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr "如果收到ç§äººä¿¡æ¯ï¼Œå‘邮件通知我。"
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
#, fuzzy
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr "如果收到ç§äººä¿¡æ¯ï¼Œå‘邮件通知我。"
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr "å…许朋å‹ä»¬å‘¼å«å¹¶ç»™æˆ‘å‘é€é‚®ä»¶ã€‚"
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr "我希望通过邮件å‘布信æ¯ã€‚"
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr "公开电å­é‚®ä»¶çš„ MicroID。"
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
-msgstr "首选项已ä¿å­˜ã€‚"
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+#, fuzzy
+msgid "Email preferences saved."
+msgstr "åŒæ­¥é€‰é¡¹å·²ä¿å­˜ã€‚"
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr "没有电å­é‚®ä»¶åœ°å€ã€‚"
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr "无法识别此电å­é‚®ä»¶"
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "ä¸æ˜¯æœ‰æ•ˆçš„电å­é‚®ä»¶ã€‚"
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr "您已登记此电å­é‚®ä»¶ã€‚"
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr "此电å­é‚®ä»¶å±žäºŽå…¶ä»–用户。"
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "无法æ’入验è¯ç ã€‚"
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
@@ -1459,43 +1605,56 @@ msgstr ""
"验è¯ç å·²è¢«å‘é€åˆ°æ‚¨æ–°å¢žçš„电å­é‚®ä»¶ã€‚请检查收件箱(和垃圾箱),找到验è¯ç å¹¶æŒ‰è¦æ±‚"
"使用它。"
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr "没有å¯ä»¥å–消的确认。"
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
msgstr "å³æ—¶é€šè®¯å¸å·é”™è¯¯ã€‚"
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "å·²å–消确认。"
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr "这是他人的电å­é‚®ä»¶ã€‚"
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
msgstr "地å€è¢«ç§»é™¤ã€‚"
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr "没有å‘布用的电å­é‚®ä»¶åœ°å€ã€‚"
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr "无法更新用户记录。"
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr "å‘布用的电å­é‚®ä»¶è¢«ç§»é™¤ã€‚"
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr "已添加新的å‘布用的电å­é‚®ä»¶åœ°å€ã€‚"
@@ -1619,8 +1778,9 @@ msgstr "无法将请求标记转æ¢ä¸ºè®¿é—®ä»¤ç‰Œã€‚"
msgid "Remote service uses unknown version of OMB protocol."
msgstr "æ­¤OMBå议版本无效。"
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "更新远程的个人信æ¯æ—¶å‡ºé”™"
#: actions/getfile.php:79
@@ -1654,14 +1814,14 @@ msgstr "用户没有个人信æ¯ã€‚"
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
#, fuzzy
msgid "No profile specified."
msgstr "没有收件人。"
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
#, fuzzy
msgid "No profile with that ID."
msgstr "没有找到此IDçš„ä¿¡æ¯ã€‚"
@@ -1686,12 +1846,12 @@ msgstr "用户没有个人信æ¯ã€‚"
msgid "User is not a member of group."
msgstr "您未告知此个人信æ¯"
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "阻止用户"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1699,17 +1859,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "该组æˆå‘˜åˆ—表。"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "该组æˆå‘˜åˆ—表。"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1755,11 +1917,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr "ä½ å¯ä»¥ç»™ä½ çš„组上载一个logo图。"
-#: actions/grouplogo.php:181
-#, fuzzy
-msgid "User without matching profile."
-msgstr "找ä¸åˆ°åŒ¹é…的用户。"
-
#: actions/grouplogo.php:365
#, fuzzy
msgid "Pick a square area of the image to be the logo."
@@ -1792,36 +1949,40 @@ msgstr "该组æˆå‘˜åˆ—表。"
msgid "Admin"
msgstr "admin管ç†å‘˜"
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr "阻止"
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
#, fuzzy
msgid "Make user an admin of the group"
msgstr "åªæœ‰adminæ‰èƒ½ç¼–辑这个组"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
#, fuzzy
msgid "Make Admin"
msgstr "admin管ç†å‘˜"
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr "%s 时间表"
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "%2$s 上 %1$s çš„æ›´æ–°ï¼"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr "组"
@@ -1841,7 +2002,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "创建新组"
@@ -1893,12 +2054,16 @@ msgstr "用户没有个人信æ¯ã€‚"
msgid "Error removing the block."
msgstr "ä¿å­˜ç”¨æˆ·æ—¶å‡ºé”™ã€‚"
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "IM 设置"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
@@ -1907,16 +2072,26 @@ msgstr ""
"您å¯ä»¥é€šè¿‡Jabber/GTalk [å³æ—¶é€šè®¯å·¥å…·](%%doc.im%%)å‘é€å’ŒæŽ¥å—通告。在这里é…置它"
"们。"
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "IM å¸å·"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "已确认的Jabber/GTalkå¸å·ã€‚"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1925,12 +2100,9 @@ msgstr ""
"正在等待这个地å€çš„确认。请查阅你Jabber/GTalkçš„å¸æˆ·çœ‹æœ‰æ²¡æœ‰æ”¶åˆ°è¿›ä¸€æ­¥çš„指示。"
"(你是å¦å·²ç»æ·»åŠ  %s为你的好å‹ï¼Ÿï¼‰"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "IM å¸å·"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
@@ -1939,53 +2111,100 @@ msgstr ""
"Jabber 或 GTalk å¸å·ï¼Œç±»ä¼¼\"UserName@example.org\"。首先,必须在å³æ—¶èŠå¤©å·¥å…·"
"或GTalk中将 %s 加为好å‹ã€‚"
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+#, fuzzy
+msgid "IM preferences"
+msgstr "首选项"
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr "通过Jabber/GTalkå‘é€é€šå‘Šã€‚"
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr "当我的Jabber/GTalk状æ€æ”¹å˜æ—¶è‡ªåŠ¨å‘布通告。"
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr "如果我尚未订阅的用户回我消æ¯ï¼Œä½¿ç”¨Jabber/GTalk通知我。"
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr "公开Jabber/GTalkå¸å·çš„ MicroID。"
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr "首选项已ä¿å­˜ã€‚"
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "没有 Jabber ID。"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "无法识别此Jabber ID"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "ä¸æ˜¯æœ‰æ•ˆçš„ Jabber ID"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr "您已登记此Jabberå¸å·ã€‚"
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "Jabber ID 属于å¦ä¸€ç”¨æˆ·ã€‚"
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr "验è¯ç å·²è¢«å‘é€åˆ°æ‚¨æ–°å¢žçš„å³æ—¶é€šè®¯å¸å·ã€‚您必须å…许 %s å‘您å‘é€ä¿¡æ¯ã€‚"
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr "å³æ—¶é€šè®¯å¸å·é”™è¯¯ã€‚"
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "无法删除电å­é‚®ä»¶ç¡®è®¤ã€‚"
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "å·²å–消确认。"
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr "è¿™ä¸æ˜¯æ‚¨çš„Jabberå¸å·ã€‚"
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+#, fuzzy
+msgid "The IM address was removed."
+msgstr "地å€è¢«ç§»é™¤ã€‚"
+
#: actions/inbox.php:59
#, fuzzy, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -2005,8 +2224,8 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
msgstr "您必须登录æ‰èƒ½é‚€è¯·å…¶ä»–人使用 %s"
#: actions/invite.php:72
@@ -2026,7 +2245,9 @@ msgstr "邀请新用户"
msgid "You are already subscribed to these users:"
msgstr "您已订阅这些用户:"
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr "%1$s (%2$s)"
@@ -2074,12 +2295,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr "å‘é€"
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr "%1$s 邀请您加入 %2$s"
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2140,7 +2363,9 @@ msgstr "您必须登录æ‰èƒ½åŠ å…¥ç»„。"
msgid "No nickname or ID."
msgstr "没有昵称。"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, fuzzy, php-format
msgid "%1$s joined group %2$s"
msgstr "%s 加入 %s 组"
@@ -2150,60 +2375,66 @@ msgstr "%s 加入 %s 组"
msgid "You must be logged in to leave a group."
msgstr "您必须登录æ‰èƒ½é‚€è¯·å…¶ä»–人使用 %s"
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
#, fuzzy
msgid "You are not a member of that group."
msgstr "您未告知此个人信æ¯"
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%s 离开群 %s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "已登录。"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "用户å或密ç ä¸æ­£ç¡®ã€‚"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
#, fuzzy
msgid "Error setting user. You are probably not authorized."
msgstr "未认è¯ã€‚"
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "登录"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr "登录"
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr "è®°ä½ç™»å½•çŠ¶æ€"
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "ä¿æŒè¿™å°æœºå™¨ä¸Šçš„登录状æ€ã€‚ä¸è¦åœ¨å…±ç”¨çš„机器上ä¿æŒç™»å½•ï¼"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "忘记了密ç ï¼Ÿ"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr "由于安全原因,修改设置å‰éœ€è¦è¾“入用户å和密ç ã€‚"
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "输入用户å和密ç ä»¥ç™»å½•ã€‚"
+
+#: actions/login.php:295
#, fuzzy, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
"请使用你的å¸å·å’Œå¯†ç ç™»å…¥ã€‚没有å¸å·ï¼Ÿ[注册](%%action.register%%) 一个新å¸å·, "
"或使用 [OpenID](%%action.openidlogin%%). "
@@ -2228,7 +2459,8 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "åªæœ‰adminæ‰èƒ½ç¼–辑这个组"
#: actions/microsummary.php:69
-msgid "No current status"
+#, fuzzy
+msgid "No current status."
msgstr "没有当å‰çŠ¶æ€"
#: actions/newapplication.php:52
@@ -2267,12 +2499,12 @@ msgstr "使用此表格创建组。"
msgid "New message"
msgstr "新消æ¯"
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr "无法å‘此用户å‘é€æ¶ˆæ¯ã€‚"
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "没有内容ï¼"
@@ -2280,7 +2512,7 @@ msgstr "没有内容ï¼"
msgid "No recipient specified."
msgstr "没有收件人。"
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr "ä¸è¦å‘自己å‘é€æ¶ˆæ¯ï¼›è·Ÿè‡ªå·±æ‚„悄说就得了。"
@@ -2295,7 +2527,7 @@ msgstr "新消æ¯"
msgid "Direct message to %s sent."
msgstr "å·²å‘ %s å‘é€æ¶ˆæ¯"
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr "Ajax错误"
@@ -2303,7 +2535,7 @@ msgstr "Ajax错误"
msgid "New notice"
msgstr "新通告"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr "消æ¯å·²å‘布。"
@@ -2350,8 +2582,9 @@ msgid "Updates matching search term \"%1$s\" on %2$s!"
msgstr "所有匹é…æœç´¢æ¡ä»¶\"%s\"的消æ¯"
#: actions/nudge.php:85
+#, fuzzy
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr "此用户ä¸å…许振铃呼å«æˆ–者还没有确认或设置TA的电å­é‚®ä»¶ã€‚"
#: actions/nudge.php:94
@@ -2395,11 +2628,11 @@ msgid "You are not a user of that application."
msgstr "您未告知此个人信æ¯"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2407,26 +2640,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
msgstr "通告没有关è”个人信æ¯"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s çš„ %2$s 状æ€"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "连接"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr "ä¸æ”¯æŒçš„æ•°æ®æ ¼å¼ã€‚"
@@ -2539,7 +2777,7 @@ msgid "6 or more characters"
msgstr "6 个或更多字符"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "确认"
@@ -2551,11 +2789,11 @@ msgstr "相åŒçš„密ç "
msgid "Change"
msgstr "修改"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr "密ç å¿…é¡»åŒ…å« 6 个或更多字符。"
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr "密ç ä¸åŒ¹é…。"
@@ -2567,7 +2805,7 @@ msgstr "旧密ç ä¸æ­£ç¡®"
msgid "Error saving user; invalid."
msgstr "ä¿å­˜ç”¨æˆ·æ—¶å‡ºé”™ï¼›ä¸æ­£ç¡®ã€‚"
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "无法ä¿å­˜æ–°å¯†ç ã€‚"
@@ -2576,7 +2814,7 @@ msgid "Password saved."
msgstr "密ç å·²ä¿å­˜ã€‚"
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2586,23 +2824,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2753,18 +2991,19 @@ msgstr ""
msgid "People search"
msgstr "æœç´¢ç”¨æˆ·"
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "ä¸æ˜¯æœ‰æ•ˆçš„电å­é‚®ä»¶"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "用户自加标签 %s - 第 %d 页"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
+#, fuzzy
+msgid "Invalid notice content."
msgstr "通告内容ä¸æ­£ç¡®"
#: actions/postnotice.php:101
@@ -2790,43 +3029,44 @@ msgstr "未知的å¸å·"
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1 到 64 个å°å†™å­—æ¯æˆ–数字,ä¸åŒ…å«æ ‡ç‚¹åŠç©ºç™½"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "å…¨å"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "主页"
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr "您的主页ã€åšå®¢æˆ–在其他站点的URL"
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "用ä¸è¶…过140个字符æ述您自己和您的爱好"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "用ä¸è¶…过140个字符æ述您自己和您的爱好"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "自述"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "ä½ç½®"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr "ä½ çš„ä½ç½®ï¼Œæ ¼å¼ç±»ä¼¼\"城市,çœä»½ï¼Œå›½å®¶\""
@@ -2836,7 +3076,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr "标签"
@@ -2866,7 +3106,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr "自动订阅任何订阅我的更新的人(这个选项最适åˆæœºå™¨äºº)"
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "自述过长(ä¸èƒ½è¶…过140字符)。"
@@ -2909,7 +3149,7 @@ msgstr "设置已ä¿å­˜ã€‚"
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -3069,7 +3309,7 @@ msgstr "é‡ç½®å¯†ç "
msgid "Recover password"
msgstr "æ¢å¤å¯†ç "
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr "请求æ¢å¤å¯†ç "
@@ -3089,124 +3329,139 @@ msgstr "é‡ç½®"
msgid "Enter a nickname or email address."
msgstr "输入昵称或电å­é‚®ä»¶ã€‚"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr "没有拥有这个用户å或电å­é‚®ä»¶çš„用户。"
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "用户没有注册电å­é‚®ä»¶ã€‚"
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "ä¿å­˜åœ°å€ç¡®è®¤æ—¶å‡ºé”™ã€‚"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr "æ¢å¤å¯†ç çš„指示已被å‘é€åˆ°æ‚¨çš„注册邮箱。"
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr "未预料的密ç é‡ç½®ã€‚"
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr "密ç å¿…须是 6 个字符或更多。"
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr "密ç å’Œç¡®è®¤ä¸åŒ¹é…。"
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "ä¿å­˜ç”¨æˆ·è®¾ç½®æ—¶å‡ºé”™ã€‚"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "新密ç å·²ä¿å­˜ï¼Œæ‚¨çŽ°åœ¨å·²ç™»å½•ã€‚"
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr "对ä¸èµ·ï¼Œè¯·é‚€è¯·é‚£äº›èƒ½æ³¨å†Œçš„人。"
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "验è¯ç å‡ºé”™ã€‚"
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr "注册æˆåŠŸã€‚"
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr "注册"
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr "ä¸å…许注册。"
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr "您必须åŒæ„此授æƒæ–¹å¯æ³¨å†Œã€‚"
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "电å­é‚®ä»¶åœ°å€å·²å­˜åœ¨ã€‚"
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "用户å或密ç ä¸æ­£ç¡®ã€‚"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr "1 到 64 个å°å†™å­—æ¯æˆ–数字,ä¸åŒ…å«æ ‡ç‚¹åŠç©ºç™½ã€‚此项必填。"
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr "6 个或更多字符。此项必填。"
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr "相åŒçš„密ç ã€‚此项必填。"
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "电å­é‚®ä»¶"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr "åªç”¨äºŽæ›´æ–°ã€é€šå‘Šæˆ–密ç æ¢å¤"
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr "é•¿å字,最好是“实åâ€"
-#: actions/register.php:494
-msgid "My text and files are available under "
-msgstr "我的文字和文件采用的授æƒæ–¹å¼ä¸º"
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr "除了éšç§å†…容:密ç ï¼Œç”µå­é‚®ä»¶ï¼Œå³æ—¶é€šè®¯å¸å·ï¼Œç”µè¯å·ç ã€‚"
-#: actions/register.php:538
+#: actions/register.php:583
#, fuzzy, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3237,7 +3492,7 @@ msgstr ""
"\n"
"感谢您的注册,希望您喜欢这个æœåŠ¡ã€‚"
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3280,7 +3535,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr "您在其他兼容的微åšå®¢æœåŠ¡çš„个人信æ¯URL"
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr "订阅"
@@ -3323,7 +3578,7 @@ msgstr "您必须åŒæ„此授æƒæ–¹å¯æ³¨å†Œã€‚"
msgid "You already repeated that notice."
msgstr "您已æˆåŠŸé˜»æ­¢è¯¥ç”¨æˆ·ï¼š"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "创建"
@@ -3363,7 +3618,7 @@ msgstr "%s 的通告èšåˆ"
#, fuzzy, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr "这是 %s 和好å‹çš„时间线,但是没有任何人å‘布内容。"
#: actions/replies.php:204
@@ -3376,8 +3631,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3395,7 +3650,7 @@ msgstr "无法å‘此用户å‘é€æ¶ˆæ¯ã€‚"
msgid "User doesn't have this role."
msgstr "找ä¸åˆ°åŒ¹é…的用户。"
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "头åƒå·²æ›´æ–°ã€‚"
@@ -3412,7 +3667,7 @@ msgstr "用户没有个人信æ¯ã€‚"
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3452,29 +3707,33 @@ msgstr "您必须登录æ‰èƒ½é‚€è¯·å…¶ä»–人使用 %s"
msgid "Application profile"
msgstr "通告没有关è”个人信æ¯"
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "昵称"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "分页"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "æè¿°"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr "统计"
@@ -3559,16 +3818,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3585,71 +3844,71 @@ msgstr "%s 组"
msgid "%1$s group, page %2$d"
msgstr "%s 组æˆå‘˜, 第 %d 页"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "组资料"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr "URL 互è”网地å€"
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
#, fuzzy
msgid "Note"
msgstr "通告"
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr "组动作"
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr "%s 的通告èšåˆ"
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, fuzzy, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr "%s 的通告èšåˆ"
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, fuzzy, php-format
msgid "Notice feed for %s group (Atom)"
msgstr "%s 的通告èšåˆ"
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, php-format
msgid "FOAF for %s group"
msgstr "%s çš„å‘件箱"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "注册于"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr "(没有)"
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr "所有æˆå‘˜"
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "创建"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3659,7 +3918,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, fuzzy, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3670,7 +3929,7 @@ msgstr ""
"**%s** 是一个 %%%%site.name%%%% 的用户组,一个微åšå®¢æœåŠ¡ [micro-blogging]"
"(http://en.wikipedia.org/wiki/Micro-blogging)"
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
#, fuzzy
msgid "Admins"
msgstr "admin管ç†å‘˜"
@@ -3747,8 +4006,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3804,11 +4063,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3903,7 +4162,7 @@ msgid "Unable to save site notice."
msgstr "无法ä¿å­˜ Twitter 设置ï¼"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3920,69 +4179,110 @@ msgstr ""
msgid "Save site notice"
msgstr "新通告"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "SMS短信设置"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr "您å¯ä»¥é€šè¿‡ %%site.name%% 的电å­é‚®ä»¶æŽ¥æ”¶SMS短信。"
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "IM å¸å·"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr "已确认的å¯ä»¥å‘é€SMS短消æ¯çš„电è¯å·ç ã€‚"
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr "等待确认此电è¯å·ç ã€‚"
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr "确认ç "
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr "输入手机收到的验è¯ç ã€‚"
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "确认"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
#, fuzzy
msgid "SMS phone number"
msgstr "SMS短信电è¯å·ç "
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr "电è¯å·ç ï¼Œä¸å¸¦æ ‡ç‚¹æˆ–空格,包å«åœ°åŒºä»£ç "
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+#, fuzzy
+msgid "SMS preferences"
+msgstr "首选项"
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr "通过SMS短信将通告å‘给我;我了解这样也许会给我带æ¥ä¸è²çš„开支。"
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+#, fuzzy
+msgid "SMS preferences saved."
+msgstr "首选项已ä¿å­˜ã€‚"
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr "没有电è¯å·ç ã€‚"
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr "未选择è¿è¥å•†ã€‚"
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr "您已登记此电è¯å·ç ã€‚"
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr "这个电è¯å·ç å±žäºŽå¦ä¸€ä¸ªç”¨æˆ·ã€‚"
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
@@ -3991,24 +4291,43 @@ msgstr ""
"验è¯ç å·²è¢«å‘é€åˆ°æ‚¨æ–°å¢žçš„电è¯å·ç ã€‚请检查收件箱(和垃圾箱),找到验è¯ç å¹¶æŒ‰è¦æ±‚"
"使用它。"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr "确认ç é”™è¯¯ã€‚"
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "å·²å–消确认。"
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr "这是他人的电è¯å·ç ã€‚"
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+#, fuzzy
+msgid "The SMS phone number was removed."
+msgstr "SMS短信电è¯å·ç "
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
#, fuzzy
msgid "Mobile carrier"
msgstr "选择è¿è¥å•†"
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr "选择è¿è¥å•†"
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
@@ -4017,13 +4336,14 @@ msgstr ""
"电è¯çš„æœåŠ¡å•†ã€‚如果您的æœåŠ¡å•†æ”¯æŒé€šè¿‡ç”µå­é‚®ä»¶å‘é€SMS短信,而这里尚未列出,请è”"
"系 %s 以告知。"
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr "没有输入验è¯ç "
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -4045,7 +4365,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -4086,8 +4406,8 @@ msgstr "头åƒè®¾ç½®"
msgid "You are not subscribed to that profile."
msgstr "您未告知此个人信æ¯"
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "无法删除订阅。"
@@ -4182,12 +4502,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "%1$s 开始关注您的 %2$s ä¿¡æ¯ã€‚"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "没有 Jabber ID。"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr "SMS短信"
@@ -4221,13 +4541,13 @@ msgstr "没有这份文档。"
msgid "Tag %s"
msgstr "标签"
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "用户没有个人信æ¯ã€‚"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr "相片"
@@ -4262,10 +4582,6 @@ msgstr "使用这个表格给你的关注者或你的订阅加注标签。"
msgid "No such tag."
msgstr "未找到此消æ¯ã€‚"
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr "API 方法尚未实现。"
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4283,7 +4599,7 @@ msgstr "用户没有个人信æ¯ã€‚"
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "æœåŠ¡å™¨æ²¡æœ‰è¿”回个人信æ¯URL。"
#: actions/unsubscribe.php:98
@@ -4321,7 +4637,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr "个人信æ¯"
@@ -4385,7 +4702,7 @@ msgstr ""
"请检查详细信æ¯ï¼Œç¡®è®¤å¸Œæœ›è®¢é˜…此用户的通告。如果您刚æ‰æ²¡æœ‰è¦æ±‚订阅任何人的通"
"告,请点击\"å–消\"。"
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
#, fuzzy
msgid "License"
msgstr "注册è¯"
@@ -4488,49 +4805,55 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "%s 组æˆå‘˜, 第 %d 页"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
#, fuzzy
msgid "Search for more groups"
msgstr "检索人或文字"
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, fuzzy, php-format
msgid "%s is not a member of any group."
msgstr "您未告知此个人信æ¯"
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr "%2$s 上 %1$s çš„æ›´æ–°ï¼"
-#: actions/version.php:73
+#: actions/version.php:75
#, fuzzy, php-format
msgid "StatusNet %s"
msgstr "统计"
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4538,7 +4861,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4546,342 +4869,459 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "个人"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "大å°ä¸æ­£ç¡®ã€‚"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "组资料"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "无法更新组"
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "组资料"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "无法更新组"
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "无法创建收è—。"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
#, fuzzy
msgid "You are banned from sending direct messages."
msgstr "å‘é€æ¶ˆæ¯å‡ºé”™ã€‚"
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr "无法添加信æ¯ã€‚"
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr "无法添加新URIçš„ä¿¡æ¯ã€‚"
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
+msgstr ""
+
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
msgstr "添加标签时数æ®åº“出错:%s"
-#: classes/Notice.php:241
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr "你在短时间里å‘布了过多的消æ¯ï¼Œè¯·æ·±å‘¼å¸ï¼Œè¿‡å‡ åˆ†é’Ÿå†å‘消æ¯ã€‚"
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
#, fuzzy
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr "你在短时间里å‘布了过多的消æ¯ï¼Œè¯·æ·±å‘¼å¸ï¼Œè¿‡å‡ åˆ†é’Ÿå†å‘消æ¯ã€‚"
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr "在这个网站你被ç¦æ­¢å‘布消æ¯ã€‚"
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, fuzzy, php-format
msgid "RT @%1$s %2$s"
msgstr "%1$s (%2$s)"
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "用户没有个人信æ¯ã€‚"
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "无法ä¿å­˜ Twitter 设置ï¼"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
#, fuzzy
msgid "You have been banned from subscribing."
msgstr "那个用户阻止了你的订阅。"
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
#, fuzzy
msgid "User has blocked you."
msgstr "用户没有个人信æ¯ã€‚"
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "未订阅ï¼"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "无法删除订阅。"
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "无法删除订阅。"
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "无法删除订阅。"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, fuzzy, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr "å‘é€ç»™ %1$s çš„ %2$s 消æ¯"
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
msgid "Could not create group."
msgstr "无法创建组。"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "无法删除订阅。"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "无法删除订阅。"
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "无法删除订阅。"
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr "修改您的个人信æ¯"
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
msgid "Upload an avatar"
msgstr "上载一个头åƒã€‚"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr "修改密ç "
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr "修改电å­é‚®ä»¶"
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "用户没有个人信æ¯ã€‚"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
-msgstr "其他"
-
-#: lib/accountsettingsaction.php:128
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
msgid "Other options"
msgstr "其他选项"
-#: lib/action.php:144
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
+msgstr "其他"
+
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s (%2$s)"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr "无标题页"
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr "主站导航"
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
#, fuzzy
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr "个人资料åŠæœ‹å‹å¹´è¡¨"
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "个人"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "修改资料"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "无法é‡å®šå‘到æœåŠ¡å™¨ï¼š%s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "连接"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "主站导航"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
#, fuzzy
msgctxt "MENU"
msgid "Admin"
msgstr "admin管ç†å‘˜"
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, fuzzy, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr "使用这个表å•æ¥é‚€è¯·å¥½å‹å’ŒåŒäº‹åŠ å…¥ã€‚"
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "邀请"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
#, fuzzy
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr "登出本站"
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "登出"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "创建新å¸å·"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "注册"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
#, fuzzy
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr "登入本站"
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "登录"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "帮助"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "帮助"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
#, fuzzy
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr "检索人或文字"
-#: lib/action.php:491
+#: lib/action.php:503
#, fuzzy
msgctxt "MENU"
msgid "Search"
@@ -4889,77 +5329,91 @@ msgstr "æœç´¢"
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "新通告"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr "本地显示"
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "新通告"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
#, fuzzy
msgid "Secondary site navigation"
msgstr "次项站导航"
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "帮助"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "关于"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "常è§é—®é¢˜FAQ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr "éšç§"
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr "æ¥æº"
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "è”系人"
-#: lib/action.php:771
+#: lib/action.php:794
#, fuzzy
msgid "Badge"
msgstr "呼å«"
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr "StatusNet软件注册è¯"
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%** 是一个微åšå®¢æœåŠ¡ï¼Œæ供者为 [%%site.broughtby%%](%%site."
"broughtbyurl%%)。"
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%** 是一个微åšå®¢æœåŠ¡ã€‚"
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4970,72 +5424,86 @@ msgstr ""
"General Public License](http://www.fsf.org/licensing/licenses/agpl-3.0.html)"
"授æƒã€‚"
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "StatusNet软件注册è¯"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr "全部"
-
-#: lib/action.php:853
-msgid "license."
-msgstr "注册è¯"
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
+msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr "分页"
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
#, fuzzy
msgid "After"
msgstr "« 之åŽ"
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "ä¹‹å‰ Â»"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
#, fuzzy
msgid "You cannot make changes to this site."
msgstr "无法å‘此用户å‘é€æ¶ˆæ¯ã€‚"
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
#, fuzzy
msgid "Changes to that panel are not allowed."
msgstr "ä¸å…许注册。"
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
#, fuzzy
msgid "showForm() not implemented."
@@ -5047,167 +5515,205 @@ msgstr "命令尚未实现。"
msgid "saveSettings() not implemented."
msgstr "命令尚未实现。"
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
#, fuzzy
msgid "Unable to delete design setting."
msgstr "无法ä¿å­˜ Twitter 设置ï¼"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "电å­é‚®ä»¶åœ°å€ç¡®è®¤"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "邀请"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "SMS短信确认"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "个人"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "SMS短信确认"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr "用户"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "SMS短信确认"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "SMS短信确认"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "SMS短信确认"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "新通告"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "SMS短信确认"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "用ä¸è¶…过140个字符æ述您自己和您的爱好"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "用ä¸è¶…过140个字符æ述您自己和您的爱好"
-#: lib/applicationeditform.php:216
-#, fuzzy
-msgid "Source URL"
-msgstr "æ¥æº"
-
-#: lib/applicationeditform.php:218
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
#, fuzzy
msgid "URL of the homepage of this application"
msgstr "您的主页ã€åšå®¢æˆ–在其他站点的URL"
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+#, fuzzy
+msgid "Source URL"
+msgstr "æ¥æº"
+
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
#, fuzzy
msgid "URL for the homepage of the organization"
msgstr "您的主页ã€åšå®¢æˆ–在其他站点的URL"
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "å–消"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
#, fuzzy
+msgctxt "BUTTON"
msgid "Revoke"
msgstr "移除"
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
#, fuzzy
msgid "Provider"
msgstr "个人信æ¯"
@@ -5220,47 +5726,67 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
#, fuzzy
msgid "Password changing failed"
msgstr "密ç å·²ä¿å­˜ã€‚"
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
#, fuzzy
msgid "Password changing is not allowed"
msgstr "密ç å·²ä¿å­˜ã€‚"
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr "执行结果"
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr "执行完毕"
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr "执行失败"
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
-msgstr "对ä¸èµ·ï¼Œè¿™ä¸ªå‘½ä»¤è¿˜æ²¡æœ‰å®žçŽ°ã€‚"
+#: lib/command.php:83 lib/command.php:105
+#, fuzzy
+msgid "Notice with that id does not exist"
+msgstr "没有找到此IDçš„ä¿¡æ¯ã€‚"
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+msgid "User has no last notice"
+msgstr "用户没有通告。"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, fuzzy, php-format
msgid "Could not find a user with nickname %s"
msgstr "无法更新已确认的电å­é‚®ä»¶ã€‚"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "无法更新已确认的电å­é‚®ä»¶ã€‚"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr "对ä¸èµ·ï¼Œè¿™ä¸ªå‘½ä»¤è¿˜æ²¡æœ‰å®žçŽ°ã€‚"
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, fuzzy, php-format
msgid "Nudge sent to %s"
msgstr "振铃呼å«å‘出。"
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5268,200 +5794,204 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-#, fuzzy
-msgid "Notice with that id does not exist"
-msgstr "没有找到此IDçš„ä¿¡æ¯ã€‚"
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-msgid "User has no last notice"
-msgstr "用户没有通告。"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr "通告被标记为收è—。"
-#: lib/command.php:217
+#: lib/command.php:323
msgid "You are already a member of that group"
msgstr "您已ç»æ˜¯è¯¥ç»„æˆå‘˜"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "无法把 %s 用户添加到 %s 组"
-#: lib/command.php:236
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%s 加入 %s 组"
-
-#: lib/command.php:275
-#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "无法订阅用户:未找到。"
-#: lib/command.php:280
-#, php-format
-msgid "%s left group %s"
-msgstr "%s 离开群 %s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, php-format
msgid "Fullname: %s"
msgstr "å…¨å:%s"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr "ä½ç½®ï¼š%s"
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr "主页:%s"
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr "关于:%s"
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, fuzzy, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr "您的消æ¯åŒ…å« %d 个字符,超出长度é™åˆ¶ - ä¸èƒ½è¶…过 140 个字符。"
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr "å·²å‘ %s å‘é€æ¶ˆæ¯"
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr "å‘é€æ¶ˆæ¯å‡ºé”™ã€‚"
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "无法开å¯é€šå‘Šã€‚"
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "删除通告"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "消æ¯å·²å‘布。"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: lib/command.php:482
+#: lib/command.php:562
#, fuzzy, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr "您的消æ¯åŒ…å« %d 个字符,超出长度é™åˆ¶ - ä¸èƒ½è¶…过 140 个字符。"
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "无法删除通告。"
-#: lib/command.php:493
+#: lib/command.php:573
#, fuzzy
msgid "Error saving notice."
msgstr "ä¿å­˜é€šå‘Šæ—¶å‡ºé”™ã€‚"
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr "指定è¦è®¢é˜…的用户å"
-#: lib/command.php:554 lib/command.php:589
-msgid "No such user"
-msgstr "没有这个用户。"
+#: lib/command.php:628
+#, fuzzy
+msgid "Can't subscribe to OMB profiles by command."
+msgstr "您未告知此个人信æ¯"
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr "订阅 %s"
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr "指定è¦å–消订阅的用户å"
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr "å–消订阅 %s"
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr "命令尚未实现。"
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr "通告关闭。"
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr "无法关闭通告。"
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr "通告开å¯ã€‚"
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr "无法开å¯é€šå‘Šã€‚"
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "å–消订阅 %s"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "您未告知此个人信æ¯"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "您已订阅这些用户:"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "无法订阅他人更新。"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "无法订阅他人更新。"
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "您未告知此个人信æ¯"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "您未告知此个人信æ¯"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5503,20 +6033,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "没有验è¯ç "
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
#, fuzzy
msgid "Go to the installer."
msgstr "登入本站"
@@ -5700,54 +6230,55 @@ msgstr "消æ¯æœ€å¤šçš„群"
msgid "Tags in %s group's notices"
msgstr "这个组所å‘布的消æ¯çš„标签"
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr "这个页é¢ä¸æ供您想è¦çš„媒体类型"
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr "ä¸æ”¯æŒè¿™ç§å›¾åƒæ ¼å¼ã€‚"
+
+#: lib/imagefile.php:88
#, fuzzy, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr "ä½ å¯ä»¥ç»™ä½ çš„组上载一个logo图。"
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr "部分上传。"
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr "上传文件时出错。"
-#: lib/imagefile.php:96
+#: lib/imagefile.php:109
msgid "Not an image or corrupt file."
msgstr "ä¸æ˜¯å›¾ç‰‡æ–‡ä»¶æˆ–文件已æŸå。"
-#: lib/imagefile.php:109
-msgid "Unsupported image file format."
-msgstr "ä¸æ”¯æŒè¿™ç§å›¾åƒæ ¼å¼ã€‚"
-
#: lib/imagefile.php:122
#, fuzzy
msgid "Lost our file."
msgstr "没有这份通告。"
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr "未知文件类型"
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5772,11 +6303,13 @@ msgstr "输入用户å和密ç ä»¥ç™»å½•ã€‚"
msgid "Sign up for a new account"
msgstr "创建新å¸å·"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "电å­é‚®ä»¶åœ°å€ç¡®è®¤"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5793,12 +6326,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "%1$s 开始关注您的 %2$s ä¿¡æ¯ã€‚"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5818,19 +6360,22 @@ msgstr ""
"\n"
"为您效力的 %4$s\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr ""
"自传Bio: %s\n"
"\n"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr "新的电å­é‚®ä»¶åœ°å€ï¼Œç”¨äºŽå‘布 %s ä¿¡æ¯"
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5850,21 +6395,31 @@ msgstr ""
"\n"
"为您效力的 %4$s"
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr "%s 状æ€"
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr "SMS短信确认"
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, fuzzy, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr "等待确认此电è¯å·ç ã€‚"
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr "%s 振铃呼å«ä½ "
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5880,12 +6435,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr "%s å‘é€äº†æ–°çš„ç§äººä¿¡æ¯"
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5904,12 +6461,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "%s 收è—了您的通告"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5930,12 +6489,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5948,6 +6517,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5960,7 +6541,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
#, fuzzy
msgid "from"
msgstr " 从 "
@@ -6016,25 +6597,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "无法获å–收è—的通告。"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -6093,53 +6674,57 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
#, fuzzy
msgid "N"
msgstr "å¦"
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "没有内容ï¼"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "创建"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
#, fuzzy
msgid "Reply to this notice"
msgstr "无法删除通告。"
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
#, fuzzy
msgid "Reply"
msgstr "回å¤"
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "消æ¯å·²å‘布。"
@@ -6165,6 +6750,10 @@ msgstr "添加个人信æ¯å‡ºé”™"
msgid "Error inserting avatar"
msgstr "添加头åƒå‡ºé”™"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "更新远程的个人信æ¯æ—¶å‡ºé”™"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "添加远程的个人信æ¯å‡ºé”™"
@@ -6211,12 +6800,12 @@ msgstr "您å‘é€çš„消æ¯"
msgid "Tags in %s's notices"
msgstr "%s's 的消æ¯çš„标签"
-#: lib/plugin.php:114
+#: lib/plugin.php:115
#, fuzzy
msgid "Unknown"
msgstr "未知动作"
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr "订阅"
@@ -6224,34 +6813,34 @@ msgstr "订阅"
msgid "All subscriptions"
msgstr "所有订阅"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr "订阅者"
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "订阅者"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
#, fuzzy
msgid "User ID"
msgstr "用户"
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "用户始于"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr "所有组"
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "没有这份文档。"
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6277,12 +6866,21 @@ msgstr "特å¾"
msgid "Popular"
msgstr "用户"
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "没有这份文档。"
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "无法删除通告。"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr "是"
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "无法删除通告。"
@@ -6292,7 +6890,7 @@ msgstr "无法删除通告。"
msgid "Revoke the \"%s\" role from this user"
msgstr "该组æˆå‘˜åˆ—表。"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6347,7 +6945,7 @@ msgstr "无标题章节"
#: lib/section.php:106
msgid "More..."
-msgstr ""
+msgstr "更多..."
#: lib/silenceform.php:67
#, fuzzy
@@ -6398,6 +6996,50 @@ msgstr ""
msgid "None"
msgstr "å¦"
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "更新头åƒå¤±è´¥ã€‚"
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "更新远程的个人信æ¯æ—¶å‡ºé”™"
+
#: lib/topposterssection.php:74
#, fuzzy
msgid "Top posters"
@@ -6430,96 +7072,115 @@ msgstr "å–消订阅 %s"
msgid "Unsubscribe"
msgstr "退订"
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, fuzzy, php-format
+msgid "User %s (%d) has no profile record."
+msgstr "用户没有个人信æ¯ã€‚"
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "头åƒ"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
#, fuzzy
msgid "User actions"
msgstr "未知动作"
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "个人设置"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
-msgstr ""
+msgstr "编辑"
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
#, fuzzy
msgid "Send a direct message to this user"
msgstr "无法å‘此用户å‘é€æ¶ˆæ¯ã€‚"
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
#, fuzzy
msgid "Message"
msgstr "新消æ¯"
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "用户没有个人信æ¯ã€‚"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
#, fuzzy
msgctxt "role"
msgid "Administrator"
msgstr "admin管ç†å‘˜"
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr "几秒å‰"
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr "一分钟å‰"
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr "%d 分钟å‰"
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr "一å°æ—¶å‰"
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr "%d å°æ—¶å‰"
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr "一天å‰"
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr "%d 天å‰"
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr "一个月å‰"
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr "%d 个月å‰"
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr "一年å‰"
@@ -6533,7 +7194,7 @@ msgstr "主页的URLä¸æ­£ç¡®ã€‚"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, fuzzy, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr "您的消æ¯åŒ…å« %d 个字符,超出长度é™åˆ¶ - ä¸èƒ½è¶…过 140 个字符。"
diff --git a/locale/zh_TW/LC_MESSAGES/statusnet.po b/locale/zh_TW/LC_MESSAGES/statusnet.po
index 3ea887beb..be09ed6d7 100644
--- a/locale/zh_TW/LC_MESSAGES/statusnet.po
+++ b/locale/zh_TW/LC_MESSAGES/statusnet.po
@@ -7,12 +7,12 @@ msgid ""
msgstr ""
"Project-Id-Version: StatusNet\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-06 23:49+0000\n"
-"PO-Revision-Date: 2010-03-06 23:51:15+0000\n"
+"POT-Creation-Date: 2010-08-07 16:23+0000\n"
+"PO-Revision-Date: 2010-08-07 16:25:10+0000\n"
"Language-Team: Traditional Chinese\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Generator: MediaWiki 1.17alpha (r63350); Translate extension (2010-01-16)\n"
+"X-Generator: MediaWiki 1.17alpha (r70633); Translate extension (2010-07-21)\n"
"X-Translation-Project: translatewiki.net at http://translatewiki.net\n"
"X-Language-Code: zh-hant\n"
"X-Message-Group: out-statusnet\n"
@@ -20,7 +20,7 @@ msgstr ""
#. TRANS: Page title
#. TRANS: Menu item for site administration
-#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:374
+#: actions/accessadminpanel.php:55 lib/adminpanelaction.php:376
#, fuzzy
msgid "Access"
msgstr "接å—"
@@ -75,85 +75,90 @@ msgstr "無此使用者"
msgid "Save access settings"
msgstr "線上å³æ™‚通設定"
-#: actions/accessadminpanel.php:203
+#. TRANS: Button label to save e-mail preferences.
+#. TRANS: Button label to save IM preferences.
+#. TRANS: Button label to save SMS preferences.
+#. TRANS: Button label
+#: actions/accessadminpanel.php:203 actions/emailsettings.php:224
+#: actions/imsettings.php:184 actions/smssettings.php:209
+#: lib/applicationeditform.php:361
msgctxt "BUTTON"
msgid "Save"
msgstr ""
#. TRANS: Server error when page not found (404)
-#: actions/all.php:64 actions/public.php:98 actions/replies.php:93
+#: actions/all.php:68 actions/public.php:98 actions/replies.php:93
#: actions/showfavorites.php:138 actions/tag.php:52
#, fuzzy
-msgid "No such page"
+msgid "No such page."
msgstr "無此通知"
-#: actions/all.php:75 actions/allrss.php:68
-#: actions/apiaccountupdatedeliverydevice.php:113
+#: actions/all.php:79 actions/allrss.php:68
+#: actions/apiaccountupdatedeliverydevice.php:114
#: actions/apiaccountupdateprofile.php:105
#: actions/apiaccountupdateprofilebackgroundimage.php:116
#: actions/apiaccountupdateprofileimage.php:105 actions/apiblockcreate.php:97
#: actions/apiblockdestroy.php:96 actions/apidirectmessage.php:77
-#: actions/apidirectmessagenew.php:75 actions/apigroupcreate.php:112
-#: actions/apigroupismember.php:90 actions/apigroupjoin.php:99
-#: actions/apigroupleave.php:99 actions/apigrouplist.php:90
-#: actions/apistatusesupdate.php:148 actions/apisubscriptions.php:87
-#: actions/apitimelinefavorites.php:70 actions/apitimelinefriends.php:78
-#: actions/apitimelinehome.php:79 actions/apitimelinementions.php:79
-#: actions/apitimelineuser.php:81 actions/avatarbynickname.php:75
+#: actions/apidirectmessagenew.php:74 actions/apigroupcreate.php:113
+#: actions/apigroupismember.php:91 actions/apigroupjoin.php:100
+#: actions/apigroupleave.php:100 actions/apigrouplist.php:73
+#: actions/apistatusesupdate.php:229 actions/apisubscriptions.php:87
+#: actions/apitimelinefavorites.php:72 actions/apitimelinefriends.php:174
+#: actions/apitimelinehome.php:80 actions/apitimelinementions.php:80
+#: actions/apitimelineuser.php:82 actions/avatarbynickname.php:75
#: actions/favoritesrss.php:74 actions/foaf.php:40 actions/foaf.php:58
#: actions/hcard.php:67 actions/microsummary.php:62 actions/newmessage.php:116
#: actions/otp.php:76 actions/remotesubscribe.php:145
#: actions/remotesubscribe.php:154 actions/replies.php:73
#: actions/repliesrss.php:38 actions/rsd.php:116 actions/showfavorites.php:105
-#: actions/userbyid.php:74 actions/usergroups.php:91 actions/userrss.php:40
-#: actions/xrds.php:71 lib/command.php:163 lib/command.php:302
-#: lib/command.php:355 lib/command.php:401 lib/command.php:462
-#: lib/command.php:518 lib/galleryaction.php:59 lib/mailbox.php:82
-#: lib/profileaction.php:77
+#: actions/userbyid.php:74 actions/usergroups.php:93 actions/userrss.php:40
+#: actions/xrds.php:71 lib/command.php:478 lib/galleryaction.php:59
+#: lib/mailbox.php:82 lib/profileaction.php:77
msgid "No such user."
msgstr "無此使用者"
#. TRANS: Page title. %1$s is user nickname, %2$d is page number
-#: actions/all.php:86
+#: actions/all.php:90
#, fuzzy, php-format
msgid "%1$s and friends, page %2$d"
msgstr "%s與好å‹"
#. TRANS: Page title. %1$s is user nickname
#. TRANS: H1 text. %1$s is user nickname
-#: actions/all.php:89 actions/all.php:181 actions/allrss.php:115
-#: actions/apitimelinefriends.php:114 actions/apitimelinehome.php:115
+#. TRANS: Message is used as link title. %s is a user nickname.
+#: actions/all.php:93 actions/all.php:185 actions/allrss.php:116
+#: actions/apitimelinefriends.php:210 actions/apitimelinehome.php:116
#: lib/personalgroupnav.php:100
#, php-format
msgid "%s and friends"
msgstr "%s與好å‹"
#. TRANS: %1$s is user nickname
-#: actions/all.php:103
+#: actions/all.php:107
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 1.0)"
msgstr "發é€çµ¦%s好å‹çš„訂閱"
#. TRANS: %1$s is user nickname
-#: actions/all.php:112
+#: actions/all.php:116
#, fuzzy, php-format
msgid "Feed for friends of %s (RSS 2.0)"
msgstr "發é€çµ¦%s好å‹çš„訂閱"
#. TRANS: %1$s is user nickname
-#: actions/all.php:121
+#: actions/all.php:125
#, fuzzy, php-format
msgid "Feed for friends of %s (Atom)"
msgstr "發é€çµ¦%s好å‹çš„訂閱"
#. TRANS: %1$s is user nickname
-#: actions/all.php:134
+#: actions/all.php:138
#, php-format
msgid ""
"This is the timeline for %s and friends but no one has posted anything yet."
msgstr ""
-#: actions/all.php:139
+#: actions/all.php:143
#, php-format
msgid ""
"Try subscribing to more people, [join a group](%%action.groups%%) or post "
@@ -161,79 +166,81 @@ msgid ""
msgstr ""
#. TRANS: %1$s is user nickname, %2$s is user nickname, %2$s is user nickname prefixed with "@"
-#: actions/all.php:142
+#: actions/all.php:146
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) from his profile or [post something to "
-"his or her attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) from their profile or [post something "
+"to them](%%%%action.newnotice%%%%?status_textarea=%3$s)."
msgstr ""
-#: actions/all.php:145 actions/replies.php:210 actions/showstream.php:211
+#: actions/all.php:149 actions/replies.php:210 actions/showstream.php:211
#, php-format
msgid ""
"Why not [register an account](%%%%action.register%%%%) and then nudge %s or "
-"post a notice to his or her attention."
+"post a notice to them."
msgstr ""
#. TRANS: H1 text
-#: actions/all.php:178
+#: actions/all.php:182
#, fuzzy
msgid "You and friends"
msgstr "%s與好å‹"
-#: actions/allrss.php:119 actions/apitimelinefriends.php:119
-#: actions/apitimelinehome.php:120
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle. %1$s is a user nickname, %2$s is a site name.
+#: actions/allrss.php:121 actions/apitimelinefriends.php:216
+#: actions/apitimelinehome.php:122
#, php-format
msgid "Updates from %1$s and friends on %2$s!"
msgstr ""
-#: actions/apiaccountratelimitstatus.php:70
-#: actions/apiaccountupdatedeliverydevice.php:93
+#: actions/apiaccountratelimitstatus.php:72
+#: actions/apiaccountupdatedeliverydevice.php:94
#: actions/apiaccountupdateprofile.php:97
#: actions/apiaccountupdateprofilebackgroundimage.php:94
#: actions/apiaccountupdateprofilecolors.php:118
#: actions/apiaccountverifycredentials.php:70 actions/apidirectmessage.php:156
-#: actions/apifavoritecreate.php:99 actions/apifavoritedestroy.php:100
+#: actions/apifavoritecreate.php:100 actions/apifavoritedestroy.php:101
#: actions/apifriendshipscreate.php:100 actions/apifriendshipsdestroy.php:100
-#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:138
-#: actions/apigroupismember.php:114 actions/apigroupjoin.php:155
-#: actions/apigroupleave.php:141 actions/apigrouplist.php:132
-#: actions/apigrouplistall.php:120 actions/apigroupmembership.php:106
-#: actions/apigroupshow.php:115 actions/apihelptest.php:88
-#: actions/apistatusesdestroy.php:102 actions/apistatusesretweets.php:112
-#: actions/apistatusesshow.php:108 actions/apistatusnetconfig.php:135
+#: actions/apifriendshipsshow.php:128 actions/apigroupcreate.php:139
+#: actions/apigroupismember.php:115 actions/apigroupjoin.php:156
+#: actions/apigroupleave.php:142 actions/apigrouplist.php:137
+#: actions/apigrouplistall.php:122 actions/apigroupmembership.php:107
+#: actions/apigroupshow.php:116 actions/apihelptest.php:88
+#: actions/apistatusesdestroy.php:104 actions/apistatusesretweets.php:112
+#: actions/apistatusesshow.php:109 actions/apistatusnetconfig.php:141
#: actions/apistatusnetversion.php:93 actions/apisubscriptions.php:111
-#: actions/apitimelinefavorites.php:183 actions/apitimelinefriends.php:187
-#: actions/apitimelinegroup.php:160 actions/apitimelinehome.php:184
-#: actions/apitimelinementions.php:175 actions/apitimelinepublic.php:148
+#: actions/apitimelinefavorites.php:174 actions/apitimelinefriends.php:271
+#: actions/apitimelinegroup.php:154 actions/apitimelinehome.php:175
+#: actions/apitimelinementions.php:174 actions/apitimelinepublic.php:241
#: actions/apitimelineretweetedtome.php:121
-#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:166
-#: actions/apitimelineuser.php:165 actions/apiusershow.php:101
+#: actions/apitimelineretweetsofme.php:152 actions/apitimelinetag.php:161
+#: actions/apitimelineuser.php:163 actions/apiusershow.php:101
#, fuzzy
msgid "API method not found."
msgstr "確èªç¢¼éºå¤±"
-#: actions/apiaccountupdatedeliverydevice.php:85
+#: actions/apiaccountupdatedeliverydevice.php:86
#: actions/apiaccountupdateprofile.php:89
#: actions/apiaccountupdateprofilebackgroundimage.php:86
#: actions/apiaccountupdateprofilecolors.php:110
#: actions/apiaccountupdateprofileimage.php:84 actions/apiblockcreate.php:89
-#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:117
-#: actions/apifavoritecreate.php:90 actions/apifavoritedestroy.php:91
+#: actions/apiblockdestroy.php:88 actions/apidirectmessagenew.php:109
+#: actions/apifavoritecreate.php:91 actions/apifavoritedestroy.php:92
#: actions/apifriendshipscreate.php:91 actions/apifriendshipsdestroy.php:91
-#: actions/apigroupcreate.php:104 actions/apigroupjoin.php:91
-#: actions/apigroupleave.php:91 actions/apistatusesretweet.php:65
-#: actions/apistatusesupdate.php:118
+#: actions/apigroupcreate.php:105 actions/apigroupjoin.php:92
+#: actions/apigroupleave.php:92 actions/apimediaupload.php:67
+#: actions/apistatusesretweet.php:65 actions/apistatusesupdate.php:198
msgid "This method requires a POST."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:105
+#: actions/apiaccountupdatedeliverydevice.php:106
msgid ""
"You must specify a parameter named 'device' with a value of one of: sms, im, "
-"none"
+"none."
msgstr ""
-#: actions/apiaccountupdatedeliverydevice.php:132
+#: actions/apiaccountupdatedeliverydevice.php:133
#, fuzzy
msgid "Could not update user."
msgstr "無法更新使用者"
@@ -243,7 +250,7 @@ msgstr "無法更新使用者"
#: actions/apiaccountupdateprofilecolors.php:185
#: actions/apiaccountupdateprofileimage.php:130 actions/apiusershow.php:108
#: actions/avatarbynickname.php:80 actions/foaf.php:65 actions/hcard.php:74
-#: actions/replies.php:80 actions/usergroups.php:98 lib/galleryaction.php:66
+#: actions/replies.php:80 actions/usergroups.php:100 lib/galleryaction.php:66
#: lib/profileaction.php:84
msgid "User has no profile."
msgstr ""
@@ -254,9 +261,9 @@ msgid "Could not save profile."
msgstr "無法儲存個人資料"
#: actions/apiaccountupdateprofilebackgroundimage.php:108
-#: actions/apiaccountupdateprofileimage.php:97
-#: actions/apistatusesupdate.php:131 actions/avatarsettings.php:257
-#: actions/designadminpanel.php:122 actions/editapplication.php:118
+#: actions/apiaccountupdateprofileimage.php:97 actions/apimediaupload.php:80
+#: actions/apistatusesupdate.php:212 actions/avatarsettings.php:257
+#: actions/designadminpanel.php:123 actions/editapplication.php:118
#: actions/newapplication.php:101 actions/newnotice.php:94
#: lib/designsettings.php:283
#, php-format
@@ -314,47 +321,48 @@ msgstr ""
msgid "All the direct messages sent to %s"
msgstr ""
-#: actions/apidirectmessagenew.php:126
+#: actions/apidirectmessagenew.php:118
msgid "No message text!"
msgstr ""
-#: actions/apidirectmessagenew.php:135 actions/newmessage.php:150
+#: actions/apidirectmessagenew.php:127 actions/newmessage.php:150
#, php-format
msgid "That's too long. Max message size is %d chars."
msgstr ""
-#: actions/apidirectmessagenew.php:146
+#: actions/apidirectmessagenew.php:138
msgid "Recipient user not found."
msgstr ""
-#: actions/apidirectmessagenew.php:150
+#: actions/apidirectmessagenew.php:142
msgid "Can't send direct messages to users who aren't your friend."
msgstr ""
-#: actions/apifavoritecreate.php:108 actions/apifavoritedestroy.php:109
-#: actions/apistatusesdestroy.php:113
+#: actions/apifavoritecreate.php:109 actions/apifavoritedestroy.php:110
+#: actions/apistatusesdestroy.php:121
msgid "No status found with that ID."
msgstr ""
-#: actions/apifavoritecreate.php:119
+#: actions/apifavoritecreate.php:120
msgid "This status is already a favorite."
msgstr ""
-#: actions/apifavoritecreate.php:130 actions/favor.php:84 lib/command.php:176
+#: actions/apifavoritecreate.php:131 actions/favor.php:84 lib/command.php:285
msgid "Could not create favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:122
+#: actions/apifavoritedestroy.php:123
msgid "That status is not a favorite."
msgstr ""
-#: actions/apifavoritedestroy.php:134 actions/disfavor.php:87
+#: actions/apifavoritedestroy.php:135 actions/disfavor.php:87
msgid "Could not delete favorite."
msgstr ""
#: actions/apifriendshipscreate.php:109
-msgid "Could not follow user: User not found."
-msgstr ""
+#, fuzzy
+msgid "Could not follow user: profile not found."
+msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
#: actions/apifriendshipscreate.php:118
#, php-format
@@ -371,8 +379,8 @@ msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
msgid "You cannot unfollow yourself."
msgstr "無法更新使用者"
-#: actions/apifriendshipsexists.php:94
-msgid "Two user ids or screen_names must be supplied."
+#: actions/apifriendshipsexists.php:91
+msgid "Two valid IDs or screen_names must be supplied."
msgstr ""
#: actions/apifriendshipsshow.php:134
@@ -385,117 +393,130 @@ msgstr "無法更新使用者"
msgid "Could not find target user."
msgstr "無法更新使用者"
-#: actions/apigroupcreate.php:166 actions/editgroup.php:186
+#: actions/apigroupcreate.php:167 actions/editgroup.php:186
#: actions/newgroup.php:126 actions/profilesettings.php:215
-#: actions/register.php:205
+#: actions/register.php:212
msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr "暱稱請用å°å¯«å­—æ¯æˆ–數字,勿加空格。"
-#: actions/apigroupcreate.php:175 actions/editgroup.php:190
+#: actions/apigroupcreate.php:176 actions/editgroup.php:190
#: actions/newgroup.php:130 actions/profilesettings.php:238
-#: actions/register.php:208
+#: actions/register.php:215
msgid "Nickname already in use. Try another one."
msgstr "此暱稱已有人使用。å†è©¦è©¦çœ‹åˆ¥çš„å§ã€‚"
-#: actions/apigroupcreate.php:182 actions/editgroup.php:193
+#: actions/apigroupcreate.php:183 actions/editgroup.php:193
#: actions/newgroup.php:133 actions/profilesettings.php:218
-#: actions/register.php:210
+#: actions/register.php:217
msgid "Not a valid nickname."
msgstr ""
-#: actions/apigroupcreate.php:198 actions/editapplication.php:215
+#: actions/apigroupcreate.php:199 actions/editapplication.php:215
#: actions/editgroup.php:199 actions/newapplication.php:203
#: actions/newgroup.php:139 actions/profilesettings.php:222
-#: actions/register.php:217
+#: actions/register.php:224
msgid "Homepage is not a valid URL."
msgstr "個人首é ä½å€éŒ¯èª¤"
-#: actions/apigroupcreate.php:207 actions/editgroup.php:202
+#: actions/apigroupcreate.php:208 actions/editgroup.php:202
#: actions/newgroup.php:142 actions/profilesettings.php:225
-#: actions/register.php:220
+#: actions/register.php:227
msgid "Full name is too long (max 255 chars)."
msgstr "å…¨åéŽé•·ï¼ˆæœ€å¤š255字元)"
-#: actions/apigroupcreate.php:215 actions/editapplication.php:190
+#: actions/apigroupcreate.php:216 actions/editapplication.php:190
#: actions/newapplication.php:172
#, fuzzy, php-format
msgid "Description is too long (max %d chars)."
msgstr "自我介紹éŽé•·(å…±140個字元)"
-#: actions/apigroupcreate.php:226 actions/editgroup.php:208
+#: actions/apigroupcreate.php:227 actions/editgroup.php:208
#: actions/newgroup.php:148 actions/profilesettings.php:232
-#: actions/register.php:227
+#: actions/register.php:234
msgid "Location is too long (max 255 chars)."
msgstr "地點éŽé•·ï¼ˆå…±255個字)"
-#: actions/apigroupcreate.php:245 actions/editgroup.php:219
+#: actions/apigroupcreate.php:246 actions/editgroup.php:219
#: actions/newgroup.php:159
#, php-format
msgid "Too many aliases! Maximum %d."
msgstr ""
-#: actions/apigroupcreate.php:266 actions/editgroup.php:228
-#: actions/newgroup.php:168
+#: actions/apigroupcreate.php:267
#, fuzzy, php-format
-msgid "Invalid alias: \"%s\""
+msgid "Invalid alias: \"%s\"."
msgstr "個人首é é€£çµ%s無效"
-#: actions/apigroupcreate.php:275 actions/editgroup.php:232
+#: actions/apigroupcreate.php:276 actions/editgroup.php:232
#: actions/newgroup.php:172
#, fuzzy, php-format
msgid "Alias \"%s\" already in use. Try another one."
msgstr "此暱稱已有人使用。å†è©¦è©¦çœ‹åˆ¥çš„å§ã€‚"
-#: actions/apigroupcreate.php:288 actions/editgroup.php:238
+#: actions/apigroupcreate.php:289 actions/editgroup.php:238
#: actions/newgroup.php:178
msgid "Alias can't be the same as nickname."
msgstr ""
-#: actions/apigroupismember.php:95 actions/apigroupjoin.php:104
-#: actions/apigroupleave.php:104 actions/apigroupmembership.php:91
-#: actions/apigroupshow.php:82 actions/apitimelinegroup.php:91
+#: actions/apigroupismember.php:96 actions/apigroupjoin.php:105
+#: actions/apigroupleave.php:105 actions/apigroupmembership.php:92
+#: actions/apigroupshow.php:83 actions/apitimelinegroup.php:92
#, fuzzy
-msgid "Group not found!"
+msgid "Group not found."
msgstr "ç›®å‰ç„¡è«‹æ±‚"
-#: actions/apigroupjoin.php:110 actions/joingroup.php:100
+#: actions/apigroupjoin.php:111 actions/joingroup.php:100
msgid "You are already a member of that group."
msgstr ""
-#: actions/apigroupjoin.php:119 actions/joingroup.php:105 lib/command.php:221
+#: actions/apigroupjoin.php:120 actions/joingroup.php:105 lib/command.php:327
msgid "You have been blocked from that group by the admin."
msgstr ""
-#: actions/apigroupjoin.php:138 actions/joingroup.php:134
+#: actions/apigroupjoin.php:139 actions/joingroup.php:134
#, fuzzy, php-format
msgid "Could not join user %1$s to group %2$s."
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: actions/apigroupleave.php:114
+#: actions/apigroupleave.php:115
#, fuzzy
msgid "You are not a member of this group."
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: actions/apigroupleave.php:124 actions/leavegroup.php:129
+#: actions/apigroupleave.php:125 actions/leavegroup.php:129
#, fuzzy, php-format
msgid "Could not remove user %1$s from group %2$s."
msgstr "無法從 %s 建立OpenID"
-#: actions/apigrouplist.php:95
+#. TRANS: %s is a user name
+#: actions/apigrouplist.php:98
#, fuzzy, php-format
msgid "%s's groups"
msgstr "無此通知"
-#: actions/apigrouplistall.php:90 actions/usergroups.php:62
+#. TRANS: Meant to convey the user %2$s is a member of each of the groups listed on site %1$s
+#: actions/apigrouplist.php:108
+#, fuzzy, php-format
+msgid "%1$s groups %2$s is a member of."
+msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
+
+#. TRANS: Message is used as a title. %s is a site name.
+#. TRANS: Message is used as a page title. %s is a nick name.
+#: actions/apigrouplistall.php:92 actions/usergroups.php:63
#, php-format
msgid "%s groups"
msgstr ""
-#: actions/apigrouplistall.php:94
+#: actions/apigrouplistall.php:96
#, php-format
msgid "groups on %s"
msgstr ""
+#: actions/apimediaupload.php:99
+#, fuzzy
+msgid "Upload failed."
+msgstr "無此通知"
+
#: actions/apioauthauthorize.php:101
msgid "No oauth_token parameter provided."
msgstr ""
@@ -506,17 +527,17 @@ msgid "Invalid token."
msgstr "尺寸錯誤"
#: actions/apioauthauthorize.php:123 actions/avatarsettings.php:268
-#: actions/deletenotice.php:157 actions/disfavor.php:74
-#: actions/emailsettings.php:238 actions/favor.php:75 actions/geocode.php:54
+#: actions/deletenotice.php:169 actions/disfavor.php:74
+#: actions/emailsettings.php:267 actions/favor.php:75 actions/geocode.php:55
#: actions/groupblock.php:66 actions/grouplogo.php:312
-#: actions/groupunblock.php:66 actions/imsettings.php:206
-#: actions/invite.php:56 actions/login.php:115 actions/makeadmin.php:66
+#: actions/groupunblock.php:66 actions/imsettings.php:227
+#: actions/invite.php:56 actions/login.php:137 actions/makeadmin.php:66
#: actions/newmessage.php:135 actions/newnotice.php:103 actions/nudge.php:80
#: actions/oauthappssettings.php:159 actions/oauthconnectionssettings.php:135
#: actions/othersettings.php:145 actions/passwordsettings.php:138
-#: actions/profilesettings.php:194 actions/recoverpassword.php:337
-#: actions/register.php:165 actions/remotesubscribe.php:77
-#: actions/repeat.php:83 actions/smssettings.php:228 actions/subedit.php:38
+#: actions/profilesettings.php:194 actions/recoverpassword.php:350
+#: actions/register.php:172 actions/remotesubscribe.php:77
+#: actions/repeat.php:83 actions/smssettings.php:256 actions/subedit.php:38
#: actions/subscribe.php:86 actions/tagother.php:166
#: actions/unsubscribe.php:69 actions/userauthorization.php:52
#: lib/designsettings.php:294
@@ -550,12 +571,15 @@ msgstr ""
msgid "The request token %s has been denied and revoked."
msgstr ""
+#. TRANS: Message given submitting a form with an unknown action in e-mail settings.
+#. TRANS: Message given submitting a form with an unknown action in IM settings.
+#. TRANS: Message given submitting a form with an unknown action in SMS settings.
#: actions/apioauthauthorize.php:232 actions/avatarsettings.php:281
-#: actions/designadminpanel.php:103 actions/editapplication.php:139
-#: actions/emailsettings.php:256 actions/grouplogo.php:322
-#: actions/imsettings.php:220 actions/newapplication.php:121
+#: actions/designadminpanel.php:104 actions/editapplication.php:139
+#: actions/emailsettings.php:286 actions/grouplogo.php:322
+#: actions/imsettings.php:242 actions/newapplication.php:121
#: actions/oauthconnectionssettings.php:147 actions/recoverpassword.php:44
-#: actions/smssettings.php:248 lib/designsettings.php:304
+#: actions/smssettings.php:277 lib/designsettings.php:304
msgid "Unexpected form submission."
msgstr ""
@@ -575,21 +599,23 @@ msgid ""
"give access to your %4$s account to third parties you trust."
msgstr ""
-#: actions/apioauthauthorize.php:310 lib/action.php:438
+#. TRANS: Main menu option when logged in for access to user settings
+#: actions/apioauthauthorize.php:310 lib/action.php:450
#, fuzzy
msgid "Account"
msgstr "關於"
-#: actions/apioauthauthorize.php:313 actions/login.php:230
-#: actions/profilesettings.php:106 actions/register.php:424
-#: actions/showgroup.php:244 actions/tagother.php:94
+#: actions/apioauthauthorize.php:313 actions/login.php:252
+#: actions/profilesettings.php:106 actions/register.php:431
+#: actions/showgroup.php:245 actions/tagother.php:94
#: actions/userauthorization.php:145 lib/groupeditform.php:152
-#: lib/userprofile.php:131
+#: lib/userprofile.php:132
msgid "Nickname"
msgstr "暱稱"
-#: actions/apioauthauthorize.php:316 actions/login.php:233
-#: actions/register.php:429 lib/accountsettingsaction.php:116
+#. TRANS: Link description in user account settings menu.
+#: actions/apioauthauthorize.php:316 actions/login.php:255
+#: actions/register.php:436 lib/accountsettingsaction.php:125
msgid "Password"
msgstr ""
@@ -605,11 +631,11 @@ msgstr ""
msgid "Allow or deny access to your account information."
msgstr ""
-#: actions/apistatusesdestroy.php:107
+#: actions/apistatusesdestroy.php:112
msgid "This method requires a POST or DELETE."
msgstr ""
-#: actions/apistatusesdestroy.php:130
+#: actions/apistatusesdestroy.php:135
msgid "You may not delete another user's status."
msgstr ""
@@ -628,60 +654,65 @@ msgstr "儲存使用者發生錯誤"
msgid "Already repeated that notice."
msgstr "無此使用者"
-#: actions/apistatusesshow.php:138
+#: actions/apistatusesshow.php:139
#, fuzzy
msgid "Status deleted."
msgstr "更新個人圖åƒ"
-#: actions/apistatusesshow.php:144
+#: actions/apistatusesshow.php:145
msgid "No status with that ID found."
msgstr ""
-#: actions/apistatusesupdate.php:161 actions/newnotice.php:155
+#: actions/apistatusesupdate.php:221
+msgid "Client must provide a 'status' parameter with a value."
+msgstr ""
+
+#: actions/apistatusesupdate.php:242 actions/newnotice.php:155
#: lib/mailhandler.php:60
#, php-format
msgid "That's too long. Max notice size is %d chars."
msgstr ""
-#: actions/apistatusesupdate.php:202
-msgid "Not found"
-msgstr ""
+#: actions/apistatusesupdate.php:283 actions/apiusershow.php:96
+#, fuzzy
+msgid "Not found."
+msgstr "ç›®å‰ç„¡è«‹æ±‚"
-#: actions/apistatusesupdate.php:225 actions/newnotice.php:178
+#: actions/apistatusesupdate.php:306 actions/newnotice.php:178
#, php-format
msgid "Max notice size is %d chars, including attachment URL."
msgstr ""
-#: actions/apisubscriptions.php:231 actions/apisubscriptions.php:261
+#: actions/apisubscriptions.php:232 actions/apisubscriptions.php:262
msgid "Unsupported format."
msgstr ""
-#: actions/apitimelinefavorites.php:108
+#: actions/apitimelinefavorites.php:110
#, fuzzy, php-format
msgid "%1$s / Favorites from %2$s"
msgstr "%1$s的狀態是%2$s"
-#: actions/apitimelinefavorites.php:117
+#: actions/apitimelinefavorites.php:119
#, fuzzy, php-format
msgid "%1$s updates favorited by %2$s / %2$s."
msgstr "&s的微型部è½æ ¼"
-#: actions/apitimelinementions.php:117
+#: actions/apitimelinementions.php:118
#, fuzzy, php-format
msgid "%1$s / Updates mentioning %2$s"
msgstr "%1$s的狀態是%2$s"
-#: actions/apitimelinementions.php:127
+#: actions/apitimelinementions.php:131
#, php-format
msgid "%1$s updates that reply to updates from %2$s / %3$s."
msgstr ""
-#: actions/apitimelinepublic.php:107 actions/publicrss.php:103
+#: actions/apitimelinepublic.php:197 actions/publicrss.php:103
#, php-format
msgid "%s public timeline"
msgstr ""
-#: actions/apitimelinepublic.php:111 actions/publicrss.php:105
+#: actions/apitimelinepublic.php:202 actions/publicrss.php:105
#, php-format
msgid "%s updates from everyone!"
msgstr ""
@@ -696,20 +727,19 @@ msgstr ""
msgid "Repeats of %s"
msgstr ""
-#: actions/apitimelinetag.php:102 actions/tag.php:67
+#: actions/apitimelinetag.php:105 actions/tag.php:67
#, php-format
msgid "Notices tagged with %s"
msgstr ""
-#: actions/apitimelinetag.php:104 actions/tagrss.php:65
+#: actions/apitimelinetag.php:107 actions/tagrss.php:65
#, fuzzy, php-format
msgid "Updates tagged with %1$s on %2$s!"
msgstr "&s的微型部è½æ ¼"
-#: actions/apiusershow.php:96
-#, fuzzy
-msgid "Not found."
-msgstr "ç›®å‰ç„¡è«‹æ±‚"
+#: actions/apitrends.php:87
+msgid "API method under construction."
+msgstr ""
#: actions/attachment.php:73
#, fuzzy
@@ -731,8 +761,9 @@ msgstr "無尺寸"
msgid "Invalid size."
msgstr "尺寸錯誤"
-#: actions/avatarsettings.php:67 actions/showgroup.php:229
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link description in user account settings menu.
+#: actions/avatarsettings.php:67 actions/showgroup.php:230
+#: lib/accountsettingsaction.php:118
msgid "Avatar"
msgstr "個人圖åƒ"
@@ -742,9 +773,9 @@ msgid "You can upload your personal avatar. The maximum file size is %s."
msgstr ""
#: actions/avatarsettings.php:106 actions/avatarsettings.php:185
-#: actions/remotesubscribe.php:191 actions/userauthorization.php:72
-#: actions/userrss.php:106
-msgid "User without matching profile"
+#: actions/grouplogo.php:181 actions/remotesubscribe.php:191
+#: actions/userauthorization.php:72 actions/userrss.php:108
+msgid "User without matching profile."
msgstr ""
#: actions/avatarsettings.php:119 actions/avatarsettings.php:197
@@ -764,7 +795,7 @@ msgid "Preview"
msgstr ""
#: actions/avatarsettings.php:149 actions/showapplication.php:252
-#: lib/deleteuserform.php:66 lib/noticelist.php:655
+#: lib/deleteuserform.php:66 lib/noticelist.php:656
msgid "Delete"
msgstr ""
@@ -776,23 +807,27 @@ msgstr ""
msgid "Crop"
msgstr ""
-#: actions/avatarsettings.php:328
+#: actions/avatarsettings.php:305
+msgid "No file uploaded."
+msgstr ""
+
+#: actions/avatarsettings.php:332
msgid "Pick a square area of the image to be your avatar"
msgstr ""
-#: actions/avatarsettings.php:343 actions/grouplogo.php:380
+#: actions/avatarsettings.php:347 actions/grouplogo.php:380
msgid "Lost our file data."
msgstr ""
-#: actions/avatarsettings.php:366
+#: actions/avatarsettings.php:370
msgid "Avatar updated."
msgstr "更新個人圖åƒ"
-#: actions/avatarsettings.php:369
+#: actions/avatarsettings.php:373
msgid "Failed updating avatar."
msgstr "無法上傳個人圖åƒ"
-#: actions/avatarsettings.php:393
+#: actions/avatarsettings.php:397
#, fuzzy
msgid "Avatar deleted."
msgstr "更新個人圖åƒ"
@@ -802,41 +837,56 @@ msgstr "更新個人圖åƒ"
msgid "You already blocked that user."
msgstr "無此使用者"
-#: actions/block.php:105 actions/block.php:128 actions/groupblock.php:160
+#: actions/block.php:107 actions/block.php:136 actions/groupblock.php:158
#, fuzzy
msgid "Block user"
msgstr "無此使用者"
-#: actions/block.php:130
+#: actions/block.php:138
msgid ""
"Are you sure you want to block this user? Afterwards, they will be "
"unsubscribed from you, unable to subscribe to you in the future, and you "
"will not be notified of any @-replies from them."
msgstr ""
-#: actions/block.php:143 actions/deleteapplication.php:153
-#: actions/deletenotice.php:145 actions/deleteuser.php:150
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:153 actions/deleteapplication.php:154
+#: actions/deletenotice.php:147 actions/deleteuser.php:152
#: actions/groupblock.php:178
+msgctxt "BUTTON"
msgid "No"
msgstr ""
-#: actions/block.php:143 actions/deleteuser.php:150
+#. TRANS: Submit button title for 'No' when blocking a user.
+#. TRANS: Submit button title for 'No' when deleting a user.
+#: actions/block.php:157 actions/deleteuser.php:156
#, fuzzy
msgid "Do not block this user"
msgstr "無此使用者"
-#: actions/block.php:144 actions/deleteapplication.php:158
-#: actions/deletenotice.php:146 actions/deleteuser.php:151
-#: actions/groupblock.php:179 lib/repeatform.php:132
+#. TRANS: Button label on the user block form.
+#. TRANS: Button label on the delete application form.
+#. TRANS: Button label on the delete notice form.
+#. TRANS: Button label on the delete user form.
+#. TRANS: Button label on the form to block a user from a group.
+#: actions/block.php:160 actions/deleteapplication.php:161
+#: actions/deletenotice.php:154 actions/deleteuser.php:159
+#: actions/groupblock.php:185
+msgctxt "BUTTON"
msgid "Yes"
msgstr ""
-#: actions/block.php:144 actions/groupmembers.php:355 lib/blockform.php:80
+#. TRANS: Submit button title for 'Yes' when blocking a user.
+#: actions/block.php:164 actions/groupmembers.php:392 lib/blockform.php:80
#, fuzzy
msgid "Block this user"
msgstr "無此使用者"
-#: actions/block.php:167
+#: actions/block.php:187
msgid "Failed to save block information."
msgstr ""
@@ -849,8 +899,8 @@ msgstr ""
#: actions/groupunblock.php:86 actions/joingroup.php:82
#: actions/joingroup.php:93 actions/leavegroup.php:82
#: actions/leavegroup.php:93 actions/makeadmin.php:86
-#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:212
-#: lib/command.php:260
+#: actions/showgroup.php:138 actions/showgroup.php:146 lib/command.php:166
+#: lib/command.php:368
#, fuzzy
msgid "No such group."
msgstr "無此通知"
@@ -883,8 +933,10 @@ msgstr ""
msgid "Unblock this user"
msgstr "無此使用者"
-#: actions/bookmarklet.php:50
-msgid "Post to "
+#. TRANS: Title for mini-posting window loaded from bookmarklet.
+#: actions/bookmarklet.php:51
+#, php-format
+msgid "Post to %s"
msgstr ""
#: actions/confirmaddress.php:75
@@ -899,34 +951,44 @@ msgstr "確èªç¢¼éºå¤±"
msgid "That confirmation code is not for you!"
msgstr ""
-#: actions/confirmaddress.php:90
+#. TRANS: Server error for an unknow address type, which can be 'email', 'jabber', or 'sms'.
+#: actions/confirmaddress.php:91
#, php-format
-msgid "Unrecognized address type %s"
+msgid "Unrecognized address type %s."
msgstr ""
-#: actions/confirmaddress.php:94
+#. TRANS: Client error for an already confirmed email/jabbel/sms address.
+#: actions/confirmaddress.php:96
msgid "That address has already been confirmed."
msgstr ""
-#: actions/confirmaddress.php:114 actions/emailsettings.php:296
-#: actions/emailsettings.php:427 actions/imsettings.php:258
-#: actions/imsettings.php:401 actions/othersettings.php:174
-#: actions/profilesettings.php:283 actions/smssettings.php:278
-#: actions/smssettings.php:420
+#. TRANS: Server error thrown on database error updating e-mail preferences.
+#. TRANS: Server error thrown on database error removing a registered e-mail address.
+#. TRANS: Server error thrown on database error updating IM preferences.
+#. TRANS: Server error thrown on database error removing a registered IM address.
+#. TRANS: Server error thrown on database error updating SMS preferences.
+#. TRANS: Server error thrown on database error removing a registered SMS phone number.
+#: actions/confirmaddress.php:116 actions/emailsettings.php:327
+#: actions/emailsettings.php:473 actions/imsettings.php:280
+#: actions/imsettings.php:439 actions/othersettings.php:174
+#: actions/profilesettings.php:283 actions/smssettings.php:308
+#: actions/smssettings.php:464
msgid "Couldn't update user."
msgstr "無法更新使用者"
-#: actions/confirmaddress.php:126 actions/emailsettings.php:391
-#: actions/imsettings.php:363 actions/smssettings.php:382
+#. TRANS: Server error thrown on database error canceling e-mail address confirmation.
+#. TRANS: Server error thrown on database error canceling SMS phone number confirmation.
+#: actions/confirmaddress.php:128 actions/emailsettings.php:433
+#: actions/smssettings.php:422
msgid "Couldn't delete email confirmation."
msgstr "無法å–消信箱確èª"
-#: actions/confirmaddress.php:144
+#: actions/confirmaddress.php:146
#, fuzzy
msgid "Confirm address"
msgstr "確èªä¿¡ç®±"
-#: actions/confirmaddress.php:159
+#: actions/confirmaddress.php:161
#, php-format
msgid "The address \"%s\" has been confirmed for your account."
msgstr ""
@@ -937,7 +999,7 @@ msgid "Conversation"
msgstr "地點"
#: actions/conversation.php:154 lib/mailbox.php:116 lib/noticelist.php:87
-#: lib/profileaction.php:218 lib/searchgroupnav.php:82
+#: lib/profileaction.php:229 lib/searchgroupnav.php:82
msgid "Notices"
msgstr ""
@@ -959,7 +1021,7 @@ msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
#: actions/deleteapplication.php:102 actions/editapplication.php:127
#: actions/newapplication.php:110 actions/showapplication.php:118
-#: lib/action.php:1217
+#: lib/action.php:1263
msgid "There was a problem with your session token."
msgstr ""
@@ -975,23 +1037,25 @@ msgid ""
"connections."
msgstr ""
-#: actions/deleteapplication.php:156
+#. TRANS: Submit button title for 'No' when deleting an application.
+#: actions/deleteapplication.php:158
#, fuzzy
msgid "Do not delete this application"
msgstr "無此通知"
-#: actions/deleteapplication.php:160
+#. TRANS: Submit button title for 'Yes' when deleting an application.
+#: actions/deleteapplication.php:164
#, fuzzy
msgid "Delete this application"
msgstr "請在140個字以內æ述你自己與你的興趣"
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when trying to access the admin panel while not logged in.
#: 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/makeadmin.php:61 actions/newmessage.php:87 actions/newnotice.php:89
#: actions/nudge.php:63 actions/subedit.php:31 actions/subscribe.php:96
#: actions/tagother.php:33 actions/unsubscribe.php:52
-#: lib/adminpanelaction.php:73 lib/profileformaction.php:63
+#: lib/adminpanelaction.php:73 lib/profileformaction.php:64
#: lib/settingsaction.php:72
msgid "Not logged in."
msgstr ""
@@ -1014,12 +1078,14 @@ msgstr ""
msgid "Are you sure you want to delete this notice?"
msgstr ""
-#: actions/deletenotice.php:145
+#. TRANS: Submit button title for 'No' when deleting a notice.
+#: actions/deletenotice.php:151
#, fuzzy
msgid "Do not delete this notice"
msgstr "無此通知"
-#: actions/deletenotice.php:146 lib/noticelist.php:655
+#. TRANS: Submit button title for 'Yes' when deleting a notice.
+#: actions/deletenotice.php:158 lib/noticelist.php:656
msgid "Delete this notice"
msgstr ""
@@ -1043,134 +1109,155 @@ msgid ""
"the user from the database, without a backup."
msgstr ""
-#: actions/deleteuser.php:151 lib/deleteuserform.php:77
+#. TRANS: Submit button title for 'Yes' when deleting a user.
+#: actions/deleteuser.php:163 lib/deleteuserform.php:77
#, fuzzy
msgid "Delete this user"
msgstr "無此使用者"
-#: actions/designadminpanel.php:62 lib/accountsettingsaction.php:124
+#. TRANS: Message used as title for design settings for the site.
+#. TRANS: Link description in user account settings menu.
+#: actions/designadminpanel.php:63 lib/accountsettingsaction.php:139
#: lib/groupnav.php:119
msgid "Design"
msgstr ""
-#: actions/designadminpanel.php:73
+#: actions/designadminpanel.php:74
msgid "Design settings for this StatusNet site."
msgstr ""
-#: actions/designadminpanel.php:275
+#: actions/designadminpanel.php:318
#, fuzzy
msgid "Invalid logo URL."
msgstr "尺寸錯誤"
-#: actions/designadminpanel.php:279
+#: actions/designadminpanel.php:322
#, fuzzy, php-format
-msgid "Theme not available: %s"
+msgid "Theme not available: %s."
msgstr "個人首é ä½å€éŒ¯èª¤"
-#: actions/designadminpanel.php:375
+#: actions/designadminpanel.php:426
#, fuzzy
msgid "Change logo"
msgstr "更改密碼"
-#: actions/designadminpanel.php:380
+#: actions/designadminpanel.php:431
#, fuzzy
msgid "Site logo"
msgstr "新訊æ¯"
-#: actions/designadminpanel.php:387
+#: actions/designadminpanel.php:443
#, fuzzy
msgid "Change theme"
msgstr "更改"
-#: actions/designadminpanel.php:404
+#: actions/designadminpanel.php:460
#, fuzzy
msgid "Site theme"
msgstr "新訊æ¯"
-#: actions/designadminpanel.php:405
+#: actions/designadminpanel.php:461
msgid "Theme for the site."
msgstr ""
-#: actions/designadminpanel.php:417 lib/designsettings.php:101
+#: actions/designadminpanel.php:467
+#, fuzzy
+msgid "Custom theme"
+msgstr "新訊æ¯"
+
+#: actions/designadminpanel.php:471
+msgid "You can upload a custom StatusNet theme as a .ZIP archive."
+msgstr ""
+
+#: actions/designadminpanel.php:486 lib/designsettings.php:101
msgid "Change background image"
msgstr ""
-#: actions/designadminpanel.php:422 actions/designadminpanel.php:497
+#: actions/designadminpanel.php:491 actions/designadminpanel.php:574
#: lib/designsettings.php:178
msgid "Background"
msgstr ""
-#: actions/designadminpanel.php:427
+#: actions/designadminpanel.php:496
#, php-format
msgid ""
"You can upload a background image for the site. The maximum file size is %1"
"$s."
msgstr ""
-#: actions/designadminpanel.php:457 lib/designsettings.php:139
+#. TRANS: Used as radio button label to add a background image.
+#: actions/designadminpanel.php:527 lib/designsettings.php:139
msgid "On"
msgstr ""
-#: actions/designadminpanel.php:473 lib/designsettings.php:155
+#. TRANS: Used as radio button label to not add a background image.
+#: actions/designadminpanel.php:544 lib/designsettings.php:155
msgid "Off"
msgstr ""
-#: actions/designadminpanel.php:474 lib/designsettings.php:156
+#: actions/designadminpanel.php:545 lib/designsettings.php:156
msgid "Turn background image on or off."
msgstr ""
-#: actions/designadminpanel.php:479 lib/designsettings.php:161
+#: actions/designadminpanel.php:550 lib/designsettings.php:161
msgid "Tile background image"
msgstr ""
-#: actions/designadminpanel.php:488 lib/designsettings.php:170
+#: actions/designadminpanel.php:564 lib/designsettings.php:170
#, fuzzy
msgid "Change colours"
msgstr "更改密碼"
-#: actions/designadminpanel.php:510 lib/designsettings.php:191
+#: actions/designadminpanel.php:587 lib/designsettings.php:191
#, fuzzy
msgid "Content"
msgstr "連çµ"
-#: actions/designadminpanel.php:523 lib/designsettings.php:204
+#: actions/designadminpanel.php:600 lib/designsettings.php:204
msgid "Sidebar"
msgstr ""
-#: actions/designadminpanel.php:536 lib/designsettings.php:217
+#: actions/designadminpanel.php:613 lib/designsettings.php:217
msgid "Text"
msgstr ""
-#: actions/designadminpanel.php:549 lib/designsettings.php:230
+#: actions/designadminpanel.php:626 lib/designsettings.php:230
#, fuzzy
msgid "Links"
msgstr "登入"
-#: actions/designadminpanel.php:577 lib/designsettings.php:247
+#: actions/designadminpanel.php:651
+msgid "Advanced"
+msgstr ""
+
+#: actions/designadminpanel.php:655
+msgid "Custom CSS"
+msgstr ""
+
+#: actions/designadminpanel.php:676 lib/designsettings.php:247
msgid "Use defaults"
msgstr ""
-#: actions/designadminpanel.php:578 lib/designsettings.php:248
+#: actions/designadminpanel.php:677 lib/designsettings.php:248
msgid "Restore default designs"
msgstr ""
-#: actions/designadminpanel.php:584 lib/designsettings.php:254
+#: actions/designadminpanel.php:683 lib/designsettings.php:254
msgid "Reset back to default"
msgstr ""
-#: actions/designadminpanel.php:586 actions/emailsettings.php:195
-#: actions/imsettings.php:163 actions/othersettings.php:126
+#. TRANS: Submit button title
+#: actions/designadminpanel.php:685 actions/othersettings.php:126
#: actions/pathsadminpanel.php:351 actions/profilesettings.php:174
#: actions/sessionsadminpanel.php:199 actions/siteadminpanel.php:292
-#: actions/sitenoticeadminpanel.php:195 actions/smssettings.php:181
-#: actions/snapshotadminpanel.php:245 actions/subscriptions.php:208
-#: actions/tagother.php:154 actions/useradminpanel.php:294
-#: lib/applicationeditform.php:333 lib/applicationeditform.php:334
+#: actions/sitenoticeadminpanel.php:195 actions/snapshotadminpanel.php:245
+#: actions/subscriptions.php:226 actions/tagother.php:154
+#: actions/useradminpanel.php:294 lib/applicationeditform.php:363
#: lib/designsettings.php:256 lib/groupeditform.php:202
msgid "Save"
msgstr ""
-#: actions/designadminpanel.php:587 lib/designsettings.php:257
+#: actions/designadminpanel.php:686 lib/designsettings.php:257
msgid "Save design"
msgstr ""
@@ -1283,12 +1370,18 @@ msgstr ""
msgid "description is too long (max %d chars)."
msgstr "自我介紹éŽé•·(å…±140個字元)"
+#: actions/editgroup.php:228 actions/newgroup.php:168
+#, fuzzy, php-format
+msgid "Invalid alias: \"%s\""
+msgstr "個人首é é€£çµ%s無效"
+
#: actions/editgroup.php:258
#, fuzzy
msgid "Could not update group."
msgstr "無法更新使用者"
-#: actions/editgroup.php:264 classes/User_group.php:493
+#. TRANS: Server exception thrown when creating group aliases failed.
+#: actions/editgroup.php:264 classes/User_group.php:514
#, fuzzy
msgid "Could not create aliases."
msgstr "無法存å–個人圖åƒè³‡æ–™"
@@ -1297,180 +1390,237 @@ msgstr "無法存å–個人圖åƒè³‡æ–™"
msgid "Options saved."
msgstr ""
-#: actions/emailsettings.php:60
+#. TRANS: Title for e-mail settings.
+#: actions/emailsettings.php:61
#, fuzzy
msgid "Email settings"
msgstr "線上å³æ™‚通設定"
-#: actions/emailsettings.php:71
+#. TRANS: E-mail settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/emailsettings.php:76
#, php-format
msgid "Manage how you get email from %%site.name%%."
msgstr ""
-#: actions/emailsettings.php:100 actions/imsettings.php:100
-#: actions/smssettings.php:104
-msgid "Address"
-msgstr "ä¿¡ç®±"
+#. TRANS: Form legend for e-mail settings form.
+#. TRANS: Field label for e-mail address input in e-mail settings form.
+#: actions/emailsettings.php:106 actions/emailsettings.php:132
+#, fuzzy
+msgid "Email address"
+msgstr "確èªä¿¡ç®±"
-#: actions/emailsettings.php:105
+#. TRANS: Form note in e-mail settings form.
+#: actions/emailsettings.php:112
msgid "Current confirmed email address."
msgstr ""
-#: actions/emailsettings.php:107 actions/emailsettings.php:140
-#: actions/imsettings.php:108 actions/smssettings.php:115
-#: actions/smssettings.php:158
+#. TRANS: Button label to remove a confirmed e-mail address.
+#. TRANS: Button label for removing a set sender e-mail address to post notices from.
+#. TRANS: Button label to remove a confirmed IM address.
+#. TRANS: Button label to remove a confirmed SMS address.
+#. TRANS: Button label for removing a set sender SMS e-mail address to post notices from.
+#: actions/emailsettings.php:115 actions/emailsettings.php:158
+#: actions/imsettings.php:116 actions/smssettings.php:124
+#: actions/smssettings.php:180
+msgctxt "BUTTON"
msgid "Remove"
msgstr ""
-#: actions/emailsettings.php:113
+#: actions/emailsettings.php:122
msgid ""
"Awaiting confirmation on this address. Check your inbox (and spam box!) for "
"a message with further instructions."
msgstr ""
-#: actions/emailsettings.php:117 actions/imsettings.php:120
-#: actions/smssettings.php:126 lib/applicationeditform.php:331
-#: lib/applicationeditform.php:332
+#. TRANS: Button label to cancel an e-mail address confirmation procedure.
+#. TRANS: Button label to cancel an IM address confirmation procedure.
+#. TRANS: Button label to cancel a SMS address confirmation procedure.
+#. TRANS: Button label
+#: actions/emailsettings.php:127 actions/imsettings.php:131
+#: actions/smssettings.php:137 lib/applicationeditform.php:357
+#, fuzzy
+msgctxt "BUTTON"
msgid "Cancel"
msgstr "å–消"
-#: actions/emailsettings.php:121
-#, fuzzy
-msgid "Email address"
-msgstr "確èªä¿¡ç®±"
-
-#: actions/emailsettings.php:123
+#. TRANS: Instructions for e-mail address input form.
+#: actions/emailsettings.php:135
msgid "Email address, like \"UserName@example.org\""
msgstr ""
-#: actions/emailsettings.php:126 actions/imsettings.php:133
-#: actions/smssettings.php:145
+#. TRANS: Button label for adding an e-mail address in e-mail settings form.
+#. TRANS: Button label for adding an IM address in IM settings form.
+#. TRANS: Button label for adding a SMS phone number in SMS settings form.
+#: actions/emailsettings.php:139 actions/imsettings.php:148
+#: actions/smssettings.php:162
+#, fuzzy
+msgctxt "BUTTON"
msgid "Add"
msgstr "新增"
-#: actions/emailsettings.php:133 actions/smssettings.php:152
+#. TRANS: Form legend for incoming e-mail settings form.
+#. TRANS: Form legend for incoming SMS settings form.
+#: actions/emailsettings.php:147 actions/smssettings.php:171
msgid "Incoming email"
msgstr ""
-#: actions/emailsettings.php:138 actions/smssettings.php:157
+#. TRANS: Form instructions for incoming e-mail form in e-mail settings.
+#. TRANS: Form instructions for incoming SMS e-mail address form in SMS settings.
+#: actions/emailsettings.php:155 actions/smssettings.php:178
msgid "Send email to this address to post new notices."
msgstr ""
-#: actions/emailsettings.php:145 actions/smssettings.php:162
+#. TRANS: Instructions for incoming e-mail address input form.
+#. TRANS: Instructions for incoming SMS e-mail address input form.
+#: actions/emailsettings.php:164 actions/smssettings.php:186
msgid "Make a new email address for posting to; cancels the old one."
msgstr ""
-#: actions/emailsettings.php:148 actions/smssettings.php:164
+#. TRANS: Button label for adding an e-mail address to send notices from.
+#. TRANS: Button label for adding an SMS e-mail address to send notices from.
+#: actions/emailsettings.php:168 actions/smssettings.php:189
+msgctxt "BUTTON"
msgid "New"
msgstr ""
-#: actions/emailsettings.php:153 actions/imsettings.php:139
-#: actions/smssettings.php:169
-msgid "Preferences"
-msgstr ""
+#. TRANS: Form legend for e-mail preferences form.
+#: actions/emailsettings.php:174
+#, fuzzy
+msgid "Email preferences"
+msgstr "確èªä¿¡ç®±"
-#: actions/emailsettings.php:158
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:180
msgid "Send me notices of new subscriptions through email."
msgstr ""
-#: actions/emailsettings.php:163
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:186
msgid "Send me email when someone adds my notice as a favorite."
msgstr ""
-#: actions/emailsettings.php:169
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:193
msgid "Send me email when someone sends me a private message."
msgstr ""
-#: actions/emailsettings.php:174
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:199
msgid "Send me email when someone sends me an \"@-reply\"."
msgstr ""
-#: actions/emailsettings.php:179
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:205
msgid "Allow friends to nudge me and send me an email."
msgstr ""
-#: actions/emailsettings.php:185
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:212
msgid "I want to post notices by email."
msgstr ""
-#: actions/emailsettings.php:191
+#. TRANS: Checkbox label in e-mail preferences form.
+#: actions/emailsettings.php:219
msgid "Publish a MicroID for my email address."
msgstr ""
-#: actions/emailsettings.php:302 actions/imsettings.php:264
-#: actions/othersettings.php:180 actions/smssettings.php:284
-msgid "Preferences saved."
+#. TRANS: Confirmation message for successful e-mail preferences save.
+#: actions/emailsettings.php:334
+msgid "Email preferences saved."
msgstr ""
-#: actions/emailsettings.php:320
+#. TRANS: Message given saving e-mail address without having provided one.
+#: actions/emailsettings.php:353
msgid "No email address."
msgstr ""
-#: actions/emailsettings.php:327
+#. TRANS: Message given saving e-mail address that cannot be normalised.
+#: actions/emailsettings.php:361
msgid "Cannot normalize that email address"
msgstr ""
-#: actions/emailsettings.php:331 actions/register.php:201
+#. TRANS: Message given saving e-mail address that not valid.
+#: actions/emailsettings.php:366 actions/register.php:208
#: actions/siteadminpanel.php:144
msgid "Not a valid email address."
msgstr "此信箱無效"
-#: actions/emailsettings.php:334
+#. TRANS: Message given saving e-mail address that is already set.
+#: actions/emailsettings.php:370
msgid "That is already your email address."
msgstr ""
-#: actions/emailsettings.php:337
+#. TRANS: Message given saving e-mail address that is already set for another user.
+#: actions/emailsettings.php:374
msgid "That email address already belongs to another user."
msgstr ""
-#: actions/emailsettings.php:353 actions/imsettings.php:319
-#: actions/smssettings.php:337
+#. TRANS: Server error thrown on database error adding e-mail confirmation code.
+#. TRANS: Server error thrown on database error adding IM confirmation code.
+#. TRANS: Server error thrown on database error adding SMS confirmation code.
+#: actions/emailsettings.php:391 actions/imsettings.php:348
+#: actions/smssettings.php:373
msgid "Couldn't insert confirmation code."
msgstr "無法輸入確èªç¢¼"
-#: actions/emailsettings.php:359
+#. TRANS: Message given saving valid e-mail address that is to be confirmed.
+#: actions/emailsettings.php:398
msgid ""
"A confirmation code was sent to the email address you added. Check your "
"inbox (and spam box!) for the code and instructions on how to use it."
msgstr ""
-#: actions/emailsettings.php:379 actions/imsettings.php:351
-#: actions/smssettings.php:370
+#. TRANS: Message given canceling e-mail address confirmation that is not pending.
+#. TRANS: Message given canceling IM address confirmation that is not pending.
+#. TRANS: Message given canceling SMS phone number confirmation that is not pending.
+#: actions/emailsettings.php:419 actions/imsettings.php:383
+#: actions/smssettings.php:408
msgid "No pending confirmation to cancel."
msgstr ""
-#: actions/emailsettings.php:383 actions/imsettings.php:355
-msgid "That is the wrong IM address."
-msgstr ""
+#. TRANS: Message given canceling e-mail address confirmation for the wrong e-mail address.
+#: actions/emailsettings.php:424
+#, fuzzy
+msgid "That is the wrong email address."
+msgstr "請輸入暱稱或電å­ä¿¡ç®±"
-#: actions/emailsettings.php:395 actions/imsettings.php:367
-#: actions/smssettings.php:386
-msgid "Confirmation cancelled."
+#. TRANS: Message given after successfully canceling e-mail address confirmation.
+#: actions/emailsettings.php:438
+#, fuzzy
+msgid "Email confirmation cancelled."
msgstr "確èªå–消"
-#: actions/emailsettings.php:413
+#. TRANS: Message given trying to remove an e-mail address that is not
+#. TRANS: registered for the active user.
+#: actions/emailsettings.php:458
msgid "That is not your email address."
msgstr ""
-#: actions/emailsettings.php:432 actions/imsettings.php:408
-#: actions/smssettings.php:425
-msgid "The address was removed."
-msgstr ""
+#. TRANS: Message given after successfully removing a registered e-mail address.
+#: actions/emailsettings.php:479
+#, fuzzy
+msgid "The email address was removed."
+msgstr "此電å­ä¿¡ç®±å·²è¨»å†ŠéŽäº†"
-#: actions/emailsettings.php:446 actions/smssettings.php:518
+#: actions/emailsettings.php:493 actions/smssettings.php:568
msgid "No incoming email address."
msgstr ""
-#: actions/emailsettings.php:456 actions/emailsettings.php:478
-#: actions/smssettings.php:528 actions/smssettings.php:552
+#. TRANS: Server error thrown on database error removing incoming e-mail address.
+#. TRANS: Server error thrown on database error adding incoming e-mail address.
+#: actions/emailsettings.php:504 actions/emailsettings.php:528
+#: actions/smssettings.php:578 actions/smssettings.php:602
msgid "Couldn't update user record."
msgstr ""
-#: actions/emailsettings.php:459 actions/smssettings.php:531
+#. TRANS: Message given after successfully removing an incoming e-mail address.
+#: actions/emailsettings.php:508 actions/smssettings.php:581
msgid "Incoming email address removed."
msgstr ""
-#: actions/emailsettings.php:481 actions/smssettings.php:555
+#. TRANS: Message given after successfully adding an incoming e-mail address.
+#: actions/emailsettings.php:532 actions/smssettings.php:605
msgid "New incoming email address added."
msgstr ""
@@ -1589,8 +1739,9 @@ msgstr "無法轉æ›è«‹æ±‚標記以致無法存å–標記"
msgid "Remote service uses unknown version of OMB protocol."
msgstr ""
-#: actions/finishremotesubscribe.php:138 lib/oauthstore.php:306
-msgid "Error updating remote profile"
+#: actions/finishremotesubscribe.php:138
+#, fuzzy
+msgid "Error updating remote profile."
msgstr "æ›´æ–°é ç«¯å€‹äººè³‡æ–™ç™¼ç”ŸéŒ¯èª¤"
#: actions/getfile.php:79
@@ -1623,13 +1774,13 @@ msgstr ""
#: actions/groupblock.php:71 actions/groupunblock.php:71
#: actions/makeadmin.php:71 actions/subedit.php:46
-#: lib/profileformaction.php:70
+#: lib/profileformaction.php:79
msgid "No profile specified."
msgstr ""
#: actions/groupblock.php:76 actions/groupunblock.php:76
#: actions/makeadmin.php:76 actions/subedit.php:53 actions/tagother.php:46
-#: actions/unsubscribe.php:84 lib/profileformaction.php:77
+#: actions/unsubscribe.php:84 lib/profileformaction.php:86
msgid "No profile with that ID."
msgstr ""
@@ -1650,12 +1801,12 @@ msgstr ""
msgid "User is not a member of group."
msgstr ""
-#: actions/groupblock.php:136 actions/groupmembers.php:323
+#: actions/groupblock.php:134 actions/groupmembers.php:360
#, fuzzy
msgid "Block user from group"
msgstr "無此使用者"
-#: actions/groupblock.php:162
+#: actions/groupblock.php:160
#, php-format
msgid ""
"Are you sure you want to block user \"%1$s\" from the group \"%2$s\"? They "
@@ -1663,17 +1814,19 @@ msgid ""
"the group in the future."
msgstr ""
-#: actions/groupblock.php:178
+#. TRANS: Submit button title for 'No' when blocking a user from a group.
+#: actions/groupblock.php:182
#, fuzzy
msgid "Do not block this user from this group"
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: actions/groupblock.php:179
+#. TRANS: Submit button title for 'Yes' when blocking a user from a group.
+#: actions/groupblock.php:189
#, fuzzy
msgid "Block this user from this group"
msgstr "無此使用者"
-#: actions/groupblock.php:196
+#: actions/groupblock.php:206
msgid "Database error blocking user from group."
msgstr ""
@@ -1716,10 +1869,6 @@ msgid ""
"You can upload a logo image for your group. The maximum file size is %s."
msgstr ""
-#: actions/grouplogo.php:181
-msgid "User without matching profile."
-msgstr ""
-
#: actions/grouplogo.php:365
msgid "Pick a square area of the image to be the logo."
msgstr ""
@@ -1752,34 +1901,38 @@ msgstr ""
msgid "Admin"
msgstr ""
-#: actions/groupmembers.php:355 lib/blockform.php:69
+#: actions/groupmembers.php:392 lib/blockform.php:69
msgid "Block"
msgstr ""
-#: actions/groupmembers.php:450
+#: actions/groupmembers.php:487
msgid "Make user an admin of the group"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make Admin"
msgstr ""
-#: actions/groupmembers.php:482
+#: actions/groupmembers.php:519
msgid "Make this user an admin"
msgstr ""
-#: actions/grouprss.php:138 actions/userrss.php:93
-#: lib/atomgroupnoticefeed.php:61 lib/atomusernoticefeed.php:67
+#. TRANS: Message is used as link title. %s is a user nickname.
+#. TRANS: Title in atom group notice feed. %s is a group name.
+#. TRANS: Title in atom user notice feed. %s is a user name.
+#: actions/grouprss.php:139 actions/userrss.php:94
+#: lib/atomgroupnoticefeed.php:63 lib/atomusernoticefeed.php:69
#, php-format
msgid "%s timeline"
msgstr ""
-#: actions/grouprss.php:140
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#: actions/grouprss.php:142
#, fuzzy, php-format
msgid "Updates from members of %1$s on %2$s!"
msgstr "&s的微型部è½æ ¼"
-#: actions/groups.php:62 lib/profileaction.php:212 lib/profileaction.php:232
+#: actions/groups.php:62 lib/profileaction.php:223 lib/profileaction.php:249
#: lib/publicgroupnav.php:81 lib/searchgroupnav.php:84 lib/subgroupnav.php:98
msgid "Groups"
msgstr ""
@@ -1799,7 +1952,7 @@ msgid ""
"%%%%)"
msgstr ""
-#: actions/groups.php:107 actions/usergroups.php:124 lib/groupeditform.php:122
+#: actions/groups.php:107 actions/usergroups.php:126 lib/groupeditform.php:122
#, fuzzy
msgid "Create a new group"
msgstr "新增帳號"
@@ -1848,28 +2001,42 @@ msgstr ""
msgid "Error removing the block."
msgstr "儲存使用者發生錯誤"
-#: actions/imsettings.php:59
+#. TRANS: Title for instance messaging settings.
+#: actions/imsettings.php:60
#, fuzzy
msgid "IM settings"
msgstr "線上å³æ™‚通設定"
-#: actions/imsettings.php:70
+#. TRANS: Instant messaging settings page instructions.
+#. TRANS: [instant messages] is link text, "(%%doc.im%%)" is the link.
+#. TRANS: the order and formatting of link text and link should remain unchanged.
+#: actions/imsettings.php:74
#, php-format
msgid ""
"You can send and receive notices through Jabber/GTalk [instant messages](%%"
"doc.im%%). Configure your address and settings below."
msgstr ""
-#: actions/imsettings.php:89
+#. TRANS: Message given in the IM settings if XMPP is not enabled on the site.
+#: actions/imsettings.php:94
#, fuzzy
msgid "IM is not available."
msgstr "個人首é ä½å€éŒ¯èª¤"
-#: actions/imsettings.php:106
+#. TRANS: Form legend for IM settings form.
+#. TRANS: Field label for IM address input in IM settings form.
+#: actions/imsettings.php:106 actions/imsettings.php:136
+#, fuzzy
+msgid "IM address"
+msgstr "線上å³æ™‚通信箱"
+
+#: actions/imsettings.php:113
msgid "Current confirmed Jabber/GTalk address."
msgstr "ç›®å‰å·²ç¢ºèªçš„Jabber/Gtalk地å€"
-#: actions/imsettings.php:114
+#. TRANS: Form note in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:124
#, php-format
msgid ""
"Awaiting confirmation on this address. Check your Jabber/GTalk account for a "
@@ -1878,65 +2045,107 @@ msgstr ""
"等待確èªæ­¤ä¿¡ç®±ã€‚看看你的Jabber/GTalk是å¦æœ‰è¨Šæ¯æŒ‡ç¤ºä¸‹ä¸€æ­¥å‹•ä½œã€‚(你加入%s到你的"
"好å‹æ¸…單了嗎?)"
-#: actions/imsettings.php:124
-#, fuzzy
-msgid "IM address"
-msgstr "線上å³æ™‚通信箱"
-
-#: actions/imsettings.php:126
+#. TRANS: IM address input field instructions in IM settings form.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:140
#, php-format
msgid ""
"Jabber or GTalk address, like \"UserName@example.org\". First, make sure to "
"add %s to your buddy list in your IM client or on GTalk."
msgstr ""
-#: actions/imsettings.php:143
+#. TRANS: Form legend for IM preferences form.
+#: actions/imsettings.php:155
+msgid "IM preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:160
msgid "Send me notices through Jabber/GTalk."
msgstr ""
-#: actions/imsettings.php:148
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:166
msgid "Post a notice when my Jabber/GTalk status changes."
msgstr ""
-#: actions/imsettings.php:153
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:172
msgid "Send me replies through Jabber/GTalk from people I'm not subscribed to."
msgstr ""
-#: actions/imsettings.php:159
+#. TRANS: Checkbox label in IM preferences form.
+#: actions/imsettings.php:179
msgid "Publish a MicroID for my Jabber/GTalk address."
msgstr ""
-#: actions/imsettings.php:285
+#. TRANS: Confirmation message for successful IM preferences save.
+#: actions/imsettings.php:287 actions/othersettings.php:180
+msgid "Preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving IM address without having provided one.
+#: actions/imsettings.php:309
msgid "No Jabber ID."
msgstr "查無此Jabber ID"
-#: actions/imsettings.php:292
+#. TRANS: Message given saving IM address that cannot be normalised.
+#: actions/imsettings.php:317
msgid "Cannot normalize that Jabber ID"
msgstr "此JabberID錯誤"
-#: actions/imsettings.php:296
+#. TRANS: Message given saving IM address that not valid.
+#: actions/imsettings.php:322
msgid "Not a valid Jabber ID"
msgstr "此JabberID無效"
-#: actions/imsettings.php:299
+#. TRANS: Message given saving IM address that is already set.
+#: actions/imsettings.php:326
msgid "That is already your Jabber ID."
msgstr ""
-#: actions/imsettings.php:302
+#. TRANS: Message given saving IM address that is already set for another user.
+#: actions/imsettings.php:330
msgid "Jabber ID already belongs to another user."
msgstr "此Jabber ID已有人使用"
-#: actions/imsettings.php:327
+#. TRANS: Message given saving valid IM address that is to be confirmed.
+#. TRANS: %s is the IM address set for the site.
+#: actions/imsettings.php:358
#, php-format
msgid ""
"A confirmation code was sent to the IM address you added. You must approve %"
"s for sending messages to you."
msgstr "確èªä¿¡å·²å¯„到你的線上å³æ™‚通信箱。%sé€çµ¦ä½ å¾—訊æ¯è¦å…ˆç¶“éŽä½ çš„èªå¯ã€‚"
-#: actions/imsettings.php:387
+#. TRANS: Message given canceling IM address confirmation for the wrong IM address.
+#: actions/imsettings.php:388
+msgid "That is the wrong IM address."
+msgstr ""
+
+#. TRANS: Server error thrown on database error canceling IM address confirmation.
+#: actions/imsettings.php:397
+#, fuzzy
+msgid "Couldn't delete IM confirmation."
+msgstr "無法å–消信箱確èª"
+
+#. TRANS: Message given after successfully canceling IM address confirmation.
+#: actions/imsettings.php:402
+#, fuzzy
+msgid "IM confirmation cancelled."
+msgstr "確èªå–消"
+
+#. TRANS: Message given trying to remove an IM address that is not
+#. TRANS: registered for the active user.
+#: actions/imsettings.php:424
msgid "That is not your Jabber ID."
msgstr ""
+#. TRANS: Message given after successfully removing a registered IM address.
+#: actions/imsettings.php:447
+msgid "The IM address was removed."
+msgstr ""
+
#: actions/inbox.php:59
#, php-format
msgid "Inbox for %1$s - page %2$d"
@@ -1956,9 +2165,9 @@ msgid "Invites have been disabled."
msgstr ""
#: actions/invite.php:41
-#, php-format
-msgid "You must be logged in to invite other users to use %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "You must be logged in to invite other users to use %s."
+msgstr "無法更新使用者"
#: actions/invite.php:72
#, php-format
@@ -1977,7 +2186,9 @@ msgstr ""
msgid "You are already subscribed to these users:"
msgstr ""
-#: actions/invite.php:131 actions/invite.php:139 lib/command.php:306
+#. TRANS: Whois output.
+#. TRANS: %1$s nickname of the queried user, %2$s is their profile URL.
+#: actions/invite.php:131 actions/invite.php:139 lib/command.php:414
#, php-format
msgid "%1$s (%2$s)"
msgstr ""
@@ -2024,12 +2235,14 @@ msgctxt "BUTTON"
msgid "Send"
msgstr ""
-#: actions/invite.php:227
+#. TRANS: Subject for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:228
#, php-format
msgid "%1$s has invited you to join them on %2$s"
msgstr ""
-#: actions/invite.php:229
+#. TRANS: Body text for invitation email. Note that 'them' is correct as a gender-neutral singular 3rd-person pronoun in English.
+#: actions/invite.php:231
#, php-format
msgid ""
"%1$s has invited you to join them on %2$s (%3$s).\n"
@@ -2069,7 +2282,9 @@ msgstr ""
msgid "No nickname or ID."
msgstr "無暱稱"
-#: actions/joingroup.php:141
+#. TRANS: Message given having added a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/joingroup.php:141 lib/command.php:346
#, php-format
msgid "%1$s joined group %2$s"
msgstr ""
@@ -2078,58 +2293,64 @@ msgstr ""
msgid "You must be logged in to leave a group."
msgstr ""
-#: actions/leavegroup.php:100 lib/command.php:265
+#: actions/leavegroup.php:100 lib/command.php:373
msgid "You are not a member of that group."
msgstr ""
-#: actions/leavegroup.php:137
+#. TRANS: Message given having removed a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: actions/leavegroup.php:137 lib/command.php:392
#, fuzzy, php-format
msgid "%1$s left group %2$s"
msgstr "%1$s的狀態是%2$s"
-#: actions/login.php:80 actions/otp.php:62 actions/register.php:137
+#: actions/login.php:102 actions/otp.php:62 actions/register.php:144
msgid "Already logged in."
msgstr "已登入"
-#: actions/login.php:126
+#: actions/login.php:148
msgid "Incorrect username or password."
msgstr "使用者å稱或密碼錯誤"
-#: actions/login.php:132 actions/otp.php:120
+#: actions/login.php:154 actions/otp.php:120
msgid "Error setting user. You are probably not authorized."
msgstr ""
-#: actions/login.php:188 actions/login.php:241 lib/logingroupnav.php:79
+#: actions/login.php:210 actions/login.php:263 lib/logingroupnav.php:79
msgid "Login"
msgstr "登入"
-#: actions/login.php:227
+#: actions/login.php:249
msgid "Login to site"
msgstr ""
-#: actions/login.php:236 actions/register.php:478
+#: actions/login.php:258 actions/register.php:485
msgid "Remember me"
msgstr ""
-#: actions/login.php:237 actions/register.php:480
+#: actions/login.php:259 actions/register.php:487
msgid "Automatically login in the future; not for shared computers!"
msgstr "未來在åŒä¸€éƒ¨é›»è…¦è‡ªå‹•ç™»å…¥"
-#: actions/login.php:247
+#: actions/login.php:269
msgid "Lost or forgotten password?"
msgstr "éºå¤±æˆ–忘記密碼了嗎?"
-#: actions/login.php:266
+#: actions/login.php:288
msgid ""
"For security reasons, please re-enter your user name and password before "
"changing your settings."
msgstr "為安全起見,請先é‡æ–°è¼¸å…¥ä½ çš„使用者å稱與密碼å†æ›´æ”¹è¨­å®šã€‚"
-#: actions/login.php:270
+#: actions/login.php:292
+#, fuzzy
+msgid "Login with your username and password."
+msgstr "使用者å稱或密碼無效"
+
+#: actions/login.php:295
#, php-format
msgid ""
-"Login with your username and password. Don't have a username yet? [Register]"
-"(%%action.register%%) a new account."
+"Don't have a username yet? [Register](%%action.register%%) a new account."
msgstr ""
#: actions/makeadmin.php:92
@@ -2152,8 +2373,9 @@ msgid "Can't make %1$s an admin for group %2$s."
msgstr "無法從 %s 建立OpenID"
#: actions/microsummary.php:69
-msgid "No current status"
-msgstr ""
+#, fuzzy
+msgid "No current status."
+msgstr "ç„¡çµæžœ"
#: actions/newapplication.php:52
#, fuzzy
@@ -2189,12 +2411,12 @@ msgstr ""
msgid "New message"
msgstr ""
-#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:358
+#: actions/newmessage.php:121 actions/newmessage.php:161 lib/command.php:481
msgid "You can't send a message to this user."
msgstr ""
-#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:342
-#: lib/command.php:475
+#: actions/newmessage.php:144 actions/newnotice.php:136 lib/command.php:463
+#: lib/command.php:555
msgid "No content!"
msgstr "無內容"
@@ -2202,7 +2424,7 @@ msgstr "無內容"
msgid "No recipient specified."
msgstr ""
-#: actions/newmessage.php:164 lib/command.php:361
+#: actions/newmessage.php:164 lib/command.php:484
msgid ""
"Don't send a message to yourself; just say it to yourself quietly instead."
msgstr ""
@@ -2216,7 +2438,7 @@ msgstr ""
msgid "Direct message to %s sent."
msgstr ""
-#: actions/newmessage.php:210 actions/newnotice.php:245 lib/channel.php:170
+#: actions/newmessage.php:210 actions/newnotice.php:251 lib/channel.php:189
msgid "Ajax Error"
msgstr ""
@@ -2224,7 +2446,7 @@ msgstr ""
msgid "New notice"
msgstr "新訊æ¯"
-#: actions/newnotice.php:211
+#: actions/newnotice.php:217
msgid "Notice posted"
msgstr ""
@@ -2270,7 +2492,7 @@ msgstr "æ‰€æœ‰ç¬¦åˆ \"%s\"çš„æ›´æ–°"
#: actions/nudge.php:85
msgid ""
-"This user doesn't allow nudges or hasn't confirmed or set his email yet."
+"This user doesn't allow nudges or hasn't confirmed or set their email yet."
msgstr ""
#: actions/nudge.php:94
@@ -2312,11 +2534,11 @@ msgid "You are not a user of that application."
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
#: actions/oauthconnectionssettings.php:186
-msgid "Unable to revoke access for app: "
+#, php-format
+msgid "Unable to revoke access for app: %s."
msgstr ""
#: actions/oauthconnectionssettings.php:198
-#, php-format
msgid "You have not authorized any applications to use your account."
msgstr ""
@@ -2324,26 +2546,31 @@ msgstr ""
msgid "Developers can edit the registration settings for their applications "
msgstr ""
-#: actions/oembed.php:79 actions/shownotice.php:100
-msgid "Notice has no profile"
-msgstr ""
+#: actions/oembed.php:80 actions/shownotice.php:100
+#, fuzzy
+msgid "Notice has no profile."
+msgstr "無此通知"
-#: actions/oembed.php:86 actions/shownotice.php:180
+#: actions/oembed.php:87 actions/shownotice.php:175
#, php-format
msgid "%1$s's status on %2$s"
msgstr "%1$s的狀態是%2$s"
-#: actions/oembed.php:157
-#, fuzzy
-msgid "content type "
+#. TRANS: Error message displaying attachments. %s is a raw MIME type (eg 'image/png')
+#: actions/oembed.php:159
+#, fuzzy, php-format
+msgid "Content type %s not supported."
msgstr "連çµ"
-#: actions/oembed.php:160
-msgid "Only "
+#. TRANS: Error message displaying attachments. %s is the site's base URL.
+#: actions/oembed.php:163
+#, php-format
+msgid "Only %s URLs over plain HTTP please."
msgstr ""
-#: actions/oembed.php:181 actions/oembed.php:200 lib/apiaction.php:1042
-#: lib/apiaction.php:1070 lib/apiaction.php:1179
+#. TRANS: Client error on an API request with an unsupported data format.
+#: actions/oembed.php:184 actions/oembed.php:203 lib/apiaction.php:1204
+#: lib/apiaction.php:1232 lib/apiaction.php:1355
msgid "Not a supported data format."
msgstr ""
@@ -2453,7 +2680,7 @@ msgid "6 or more characters"
msgstr "6個以上字元"
#: actions/passwordsettings.php:112 actions/recoverpassword.php:239
-#: actions/register.php:433 actions/smssettings.php:134
+#: actions/register.php:440
msgid "Confirm"
msgstr "確èª"
@@ -2465,11 +2692,11 @@ msgstr ""
msgid "Change"
msgstr "更改"
-#: actions/passwordsettings.php:154 actions/register.php:230
+#: actions/passwordsettings.php:154 actions/register.php:237
msgid "Password must be 6 or more characters."
msgstr ""
-#: actions/passwordsettings.php:157 actions/register.php:233
+#: actions/passwordsettings.php:157 actions/register.php:240
msgid "Passwords don't match."
msgstr ""
@@ -2481,7 +2708,7 @@ msgstr "舊密碼錯誤"
msgid "Error saving user; invalid."
msgstr "儲存使用者發生錯誤;使用者å稱無效"
-#: actions/passwordsettings.php:186 actions/recoverpassword.php:368
+#: actions/passwordsettings.php:186 actions/recoverpassword.php:381
msgid "Can't save new password."
msgstr "無法存å–新密碼"
@@ -2490,7 +2717,7 @@ msgid "Password saved."
msgstr ""
#. TRANS: Menu item for site administration
-#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:382
+#: actions/pathsadminpanel.php:59 lib/adminpanelaction.php:384
msgid "Paths"
msgstr ""
@@ -2500,23 +2727,23 @@ msgstr ""
#: actions/pathsadminpanel.php:157
#, fuzzy, php-format
-msgid "Theme directory not readable: %s"
+msgid "Theme directory not readable: %s."
msgstr "個人首é ä½å€éŒ¯èª¤"
#: actions/pathsadminpanel.php:163
-#, php-format
-msgid "Avatar directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Avatar directory not writable: %s."
+msgstr "個人首é ä½å€éŒ¯èª¤"
#: actions/pathsadminpanel.php:169
-#, php-format
-msgid "Background directory not writable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Background directory not writable: %s."
+msgstr "個人首é ä½å€éŒ¯èª¤"
#: actions/pathsadminpanel.php:177
-#, php-format
-msgid "Locales directory not readable: %s"
-msgstr ""
+#, fuzzy, php-format
+msgid "Locales directory not readable: %s."
+msgstr "個人首é ä½å€éŒ¯èª¤"
#: actions/pathsadminpanel.php:183
msgid "Invalid SSL server. The maximum length is 255 characters."
@@ -2660,19 +2887,20 @@ msgstr ""
msgid "People search"
msgstr ""
-#: actions/peopletag.php:70
+#: actions/peopletag.php:68
#, fuzzy, php-format
-msgid "Not a valid people tag: %s"
+msgid "Not a valid people tag: %s."
msgstr "此信箱無效"
-#: actions/peopletag.php:144
+#: actions/peopletag.php:142
#, fuzzy, php-format
msgid "Users self-tagged with %1$s - page %2$d"
msgstr "&s的微型部è½æ ¼"
#: actions/postnotice.php:95
-msgid "Invalid notice content"
-msgstr ""
+#, fuzzy
+msgid "Invalid notice content."
+msgstr "尺寸錯誤"
#: actions/postnotice.php:101
#, php-format
@@ -2696,43 +2924,44 @@ msgstr ""
msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr "1-64個å°å¯«è‹±æ–‡å­—æ¯æˆ–數字,勿加標點符號或空格"
-#: actions/profilesettings.php:111 actions/register.php:448
-#: actions/showgroup.php:255 actions/tagother.php:104
-#: lib/groupeditform.php:157 lib/userprofile.php:149
+#: actions/profilesettings.php:111 actions/register.php:455
+#: actions/showgroup.php:256 actions/tagother.php:104
+#: lib/groupeditform.php:157 lib/userprofile.php:150
msgid "Full name"
msgstr "å…¨å"
-#: actions/profilesettings.php:115 actions/register.php:453
-#: lib/applicationeditform.php:228 lib/groupeditform.php:161
+#. TRANS: Form input field label.
+#: actions/profilesettings.php:115 actions/register.php:460
+#: lib/applicationeditform.php:244 lib/groupeditform.php:161
msgid "Homepage"
msgstr "個人首é "
-#: actions/profilesettings.php:117 actions/register.php:455
+#: actions/profilesettings.php:117 actions/register.php:462
msgid "URL of your homepage, blog, or profile on another site"
msgstr ""
-#: actions/profilesettings.php:122 actions/register.php:461
+#: actions/profilesettings.php:122 actions/register.php:468
#, fuzzy, php-format
msgid "Describe yourself and your interests in %d chars"
msgstr "請在140個字以內æ述你自己與你的興趣"
-#: actions/profilesettings.php:125 actions/register.php:464
+#: actions/profilesettings.php:125 actions/register.php:471
#, fuzzy
msgid "Describe yourself and your interests"
msgstr "請在140個字以內æ述你自己與你的興趣"
-#: actions/profilesettings.php:127 actions/register.php:466
+#: actions/profilesettings.php:127 actions/register.php:473
msgid "Bio"
msgstr "自我介紹"
-#: actions/profilesettings.php:132 actions/register.php:471
-#: actions/showgroup.php:264 actions/tagother.php:112
+#: actions/profilesettings.php:132 actions/register.php:478
+#: actions/showgroup.php:265 actions/tagother.php:112
#: actions/userauthorization.php:166 lib/groupeditform.php:177
-#: lib/userprofile.php:164
+#: lib/userprofile.php:165
msgid "Location"
msgstr "地點"
-#: actions/profilesettings.php:134 actions/register.php:473
+#: actions/profilesettings.php:134 actions/register.php:480
msgid "Where you are, like \"City, State (or Region), Country\""
msgstr ""
@@ -2742,7 +2971,7 @@ msgstr ""
#: actions/profilesettings.php:145 actions/tagother.php:149
#: actions/tagother.php:209 lib/subscriptionlist.php:106
-#: lib/subscriptionlist.php:108 lib/userprofile.php:209
+#: lib/subscriptionlist.php:108 lib/userprofile.php:210
msgid "Tags"
msgstr ""
@@ -2772,7 +3001,7 @@ msgid ""
"Automatically subscribe to whoever subscribes to me (best for non-humans)"
msgstr ""
-#: actions/profilesettings.php:228 actions/register.php:223
+#: actions/profilesettings.php:228 actions/register.php:230
#, fuzzy, php-format
msgid "Bio is too long (max %d chars)."
msgstr "自我介紹éŽé•·(å…±140個字元)"
@@ -2815,7 +3044,7 @@ msgstr ""
#: actions/public.php:83
#, php-format
-msgid "Beyond the page limit (%s)"
+msgid "Beyond the page limit (%s)."
msgstr ""
#: actions/public.php:92
@@ -2969,7 +3198,7 @@ msgstr ""
msgid "Recover password"
msgstr ""
-#: actions/recoverpassword.php:210 actions/recoverpassword.php:322
+#: actions/recoverpassword.php:210 actions/recoverpassword.php:335
msgid "Password recovery requested"
msgstr ""
@@ -2989,124 +3218,139 @@ msgstr ""
msgid "Enter a nickname or email address."
msgstr "請輸入暱稱或電å­ä¿¡ç®±"
-#: actions/recoverpassword.php:272
+#: actions/recoverpassword.php:282
msgid "No user with that email address or username."
msgstr ""
-#: actions/recoverpassword.php:287
+#: actions/recoverpassword.php:299
msgid "No registered email address for that user."
msgstr "查無此使用者所註冊的信箱"
-#: actions/recoverpassword.php:301
+#: actions/recoverpassword.php:313
msgid "Error saving address confirmation."
msgstr "儲存信箱確èªç™¼ç”ŸéŒ¯èª¤"
-#: actions/recoverpassword.php:325
+#: actions/recoverpassword.php:338
msgid ""
"Instructions for recovering your password have been sent to the email "
"address registered to your account."
msgstr "我們已寄出一å°ä¿¡åˆ°ä½ å¸³è™Ÿä¸­çš„信箱,告訴你如何å–回你的密碼。"
-#: actions/recoverpassword.php:344
+#: actions/recoverpassword.php:357
msgid "Unexpected password reset."
msgstr ""
-#: actions/recoverpassword.php:352
+#: actions/recoverpassword.php:365
msgid "Password must be 6 chars or more."
msgstr ""
-#: actions/recoverpassword.php:356
+#: actions/recoverpassword.php:369
msgid "Password and confirmation do not match."
msgstr ""
-#: actions/recoverpassword.php:375 actions/register.php:248
+#: actions/recoverpassword.php:388 actions/register.php:255
msgid "Error setting user."
msgstr "使用者設定發生錯誤"
-#: actions/recoverpassword.php:382
+#: actions/recoverpassword.php:395
msgid "New password successfully saved. You are now logged in."
msgstr "新密碼已儲存æˆåŠŸã€‚你已登入。"
-#: actions/register.php:85 actions/register.php:189 actions/register.php:405
+#: actions/register.php:92 actions/register.php:196 actions/register.php:412
msgid "Sorry, only invited people can register."
msgstr ""
-#: actions/register.php:92
+#: actions/register.php:99
#, fuzzy
msgid "Sorry, invalid invitation code."
msgstr "確èªç¢¼ç™¼ç”ŸéŒ¯èª¤"
-#: actions/register.php:112
+#: actions/register.php:119
msgid "Registration successful"
msgstr ""
-#: actions/register.php:114 actions/register.php:503 lib/logingroupnav.php:85
+#: actions/register.php:121 actions/register.php:506 lib/logingroupnav.php:85
msgid "Register"
msgstr ""
-#: actions/register.php:135
+#: actions/register.php:142
msgid "Registration not allowed."
msgstr ""
-#: actions/register.php:198
+#: actions/register.php:205
msgid "You can't register if you don't agree to the license."
msgstr ""
-#: actions/register.php:212
+#: actions/register.php:219
msgid "Email address already exists."
msgstr "此電å­ä¿¡ç®±å·²è¨»å†ŠéŽäº†"
-#: actions/register.php:243 actions/register.php:265
+#: actions/register.php:250 actions/register.php:272
msgid "Invalid username or password."
msgstr "使用者å稱或密碼無效"
-#: actions/register.php:343
+#: actions/register.php:350
msgid ""
-"With this form you can create a new account. You can then post notices and "
+"With this form you can create a new account. You can then post notices and "
"link up to friends and colleagues. "
msgstr ""
-#: actions/register.php:425
+#: actions/register.php:432
msgid "1-64 lowercase letters or numbers, no punctuation or spaces. Required."
msgstr ""
-#: actions/register.php:430
+#: actions/register.php:437
msgid "6 or more characters. Required."
msgstr ""
-#: actions/register.php:434
+#: actions/register.php:441
msgid "Same as password above. Required."
msgstr ""
-#: actions/register.php:438 actions/register.php:442
-#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:120
+#. TRANS: Link description in user account settings menu.
+#: actions/register.php:445 actions/register.php:449
+#: actions/siteadminpanel.php:238 lib/accountsettingsaction.php:132
msgid "Email"
msgstr "é›»å­ä¿¡ç®±"
-#: actions/register.php:439 actions/register.php:443
+#: actions/register.php:446 actions/register.php:450
msgid "Used only for updates, announcements, and password recovery"
msgstr ""
-#: actions/register.php:450
+#: actions/register.php:457
msgid "Longer name, preferably your \"real\" name"
msgstr ""
-#: actions/register.php:494
-msgid "My text and files are available under "
+#: actions/register.php:518
+#, php-format
+msgid ""
+"I understand that content and data of %1$s are private and confidential."
+msgstr ""
+
+#: actions/register.php:528
+#, php-format
+msgid "My text and files are copyright by %1$s."
msgstr ""
-#: actions/register.php:496
-msgid "Creative Commons Attribution 3.0"
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved with ownership left to contributors.
+#: actions/register.php:532
+msgid "My text and files remain under my own copyright."
msgstr ""
-#: actions/register.php:497
-#, fuzzy
+#. TRANS: Copyright checkbox label in registration dialog, for all rights reserved.
+#: actions/register.php:535
+msgid "All rights reserved."
+msgstr ""
+
+#. TRANS: Copyright checkbox label in registration dialog, for Creative Commons-style licenses.
+#: actions/register.php:540
+#, fuzzy, php-format
msgid ""
-" except this private data: password, email address, IM address, and phone "
-"number."
+"My text and files are available under %s except this private data: password, "
+"email address, IM address, and phone number."
msgstr "ä¸åŒ…å«é€™äº›å€‹äººè³‡æ–™ï¼šå¯†ç¢¼ã€é›»å­ä¿¡ç®±ã€ç·šä¸Šå³æ™‚通信箱ã€é›»è©±è™Ÿç¢¼"
-#: actions/register.php:538
+#: actions/register.php:583
#, php-format
msgid ""
"Congratulations, %1$s! And welcome to %%%%site.name%%%%. From here, you may "
@@ -3125,7 +3369,7 @@ msgid ""
"Thanks for signing up and we hope you enjoy using this service."
msgstr ""
-#: actions/register.php:562
+#: actions/register.php:607
msgid ""
"(You should receive a message by email momentarily, with instructions on how "
"to confirm your email address.)"
@@ -3164,7 +3408,7 @@ msgid "URL of your profile on another compatible microblogging service"
msgstr ""
#: actions/remotesubscribe.php:137 lib/subscribeform.php:139
-#: lib/userprofile.php:394
+#: lib/userprofile.php:406
msgid "Subscribe"
msgstr ""
@@ -3203,7 +3447,7 @@ msgstr ""
msgid "You already repeated that notice."
msgstr "無此使用者"
-#: actions/repeat.php:114 lib/noticelist.php:674
+#: actions/repeat.php:114 lib/noticelist.php:675
#, fuzzy
msgid "Repeated"
msgstr "新增"
@@ -3243,7 +3487,7 @@ msgstr "發é€çµ¦%s好å‹çš„訂閱"
#, php-format
msgid ""
"This is the timeline showing replies to %1$s but %2$s hasn't received a "
-"notice to his attention yet."
+"notice to them yet."
msgstr ""
#: actions/replies.php:204
@@ -3256,8 +3500,8 @@ msgstr ""
#: actions/replies.php:206
#, php-format
msgid ""
-"You can try to [nudge %1$s](../%2$s) or [post something to his or her "
-"attention](%%%%action.newnotice%%%%?status_textarea=%3$s)."
+"You can try to [nudge %1$s](../%2$s) or [post something to them](%%%%action."
+"newnotice%%%%?status_textarea=%3$s)."
msgstr ""
#: actions/repliesrss.php:72
@@ -3274,7 +3518,7 @@ msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
msgid "User doesn't have this role."
msgstr ""
-#: actions/rsd.php:146 actions/version.php:157
+#: actions/rsd.php:146 actions/version.php:159
#, fuzzy
msgid "StatusNet"
msgstr "更新個人圖åƒ"
@@ -3290,7 +3534,7 @@ msgstr ""
#. TRANS: Menu item for site administration
#: actions/sessionsadminpanel.php:54 actions/sessionsadminpanel.php:170
-#: lib/adminpanelaction.php:390
+#: lib/adminpanelaction.php:392
msgid "Sessions"
msgstr ""
@@ -3328,29 +3572,33 @@ msgstr ""
msgid "Application profile"
msgstr ""
-#: actions/showapplication.php:159 lib/applicationeditform.php:180
+#. TRANS: Form input field label for application icon.
+#: actions/showapplication.php:159 lib/applicationeditform.php:182
msgid "Icon"
msgstr ""
-#: actions/showapplication.php:169 actions/version.php:195
-#: lib/applicationeditform.php:195
+#. TRANS: Form input field label for application name.
+#: actions/showapplication.php:169 actions/version.php:197
+#: lib/applicationeditform.php:199
#, fuzzy
msgid "Name"
msgstr "暱稱"
-#: actions/showapplication.php:178 lib/applicationeditform.php:222
+#. TRANS: Form input field label.
+#: actions/showapplication.php:178 lib/applicationeditform.php:235
#, fuzzy
msgid "Organization"
msgstr "地點"
-#: actions/showapplication.php:187 actions/version.php:198
-#: lib/applicationeditform.php:209 lib/groupeditform.php:172
+#. TRANS: Form input field label.
+#: actions/showapplication.php:187 actions/version.php:200
+#: lib/applicationeditform.php:216 lib/groupeditform.php:172
#, fuzzy
msgid "Description"
msgstr "所有訂閱"
-#: actions/showapplication.php:192 actions/showgroup.php:438
-#: lib/profileaction.php:176
+#: actions/showapplication.php:192 actions/showgroup.php:436
+#: lib/profileaction.php:187
msgid "Statistics"
msgstr ""
@@ -3434,16 +3682,16 @@ msgstr ""
#: actions/showfavorites.php:208
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Post something interesting "
-"they would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Post something interesting they "
+"would add to their favorites :)"
msgstr ""
#: actions/showfavorites.php:212
#, php-format
msgid ""
-"%s hasn't added any notices to his favorites yet. Why not [register an "
-"account](%%%%action.register%%%%) and then post something interesting they "
-"would add to their favorites :)"
+"%s hasn't added any favorite notices yet. Why not [register an account](%%%%"
+"action.register%%%%) and then post something interesting they would add to "
+"their favorites :)"
msgstr ""
#: actions/showfavorites.php:243
@@ -3460,70 +3708,70 @@ msgstr ""
msgid "%1$s group, page %2$d"
msgstr "所有訂閱"
-#: actions/showgroup.php:226
+#: actions/showgroup.php:227
#, fuzzy
msgid "Group profile"
msgstr "無此通知"
-#: actions/showgroup.php:271 actions/tagother.php:118
-#: actions/userauthorization.php:175 lib/userprofile.php:177
+#: actions/showgroup.php:272 actions/tagother.php:118
+#: actions/userauthorization.php:175 lib/userprofile.php:178
msgid "URL"
msgstr ""
-#: actions/showgroup.php:282 actions/tagother.php:128
-#: actions/userauthorization.php:187 lib/userprofile.php:194
+#: actions/showgroup.php:283 actions/tagother.php:128
+#: actions/userauthorization.php:187 lib/userprofile.php:195
msgid "Note"
msgstr ""
-#: actions/showgroup.php:292 lib/groupeditform.php:184
+#: actions/showgroup.php:293 lib/groupeditform.php:184
msgid "Aliases"
msgstr ""
-#: actions/showgroup.php:301
+#: actions/showgroup.php:302
msgid "Group actions"
msgstr ""
-#: actions/showgroup.php:337
+#: actions/showgroup.php:338
#, php-format
msgid "Notice feed for %s group (RSS 1.0)"
msgstr ""
-#: actions/showgroup.php:343
+#: actions/showgroup.php:344
#, php-format
msgid "Notice feed for %s group (RSS 2.0)"
msgstr ""
-#: actions/showgroup.php:349
+#: actions/showgroup.php:350
#, php-format
msgid "Notice feed for %s group (Atom)"
msgstr ""
-#: actions/showgroup.php:354
+#: actions/showgroup.php:355
#, fuzzy, php-format
msgid "FOAF for %s group"
msgstr "無此通知"
-#: actions/showgroup.php:390 actions/showgroup.php:447 lib/groupnav.php:91
+#: actions/showgroup.php:393 actions/showgroup.php:445 lib/groupnav.php:91
#, fuzzy
msgid "Members"
msgstr "何時加入會員的呢?"
-#: actions/showgroup.php:395 lib/profileaction.php:117
-#: lib/profileaction.php:150 lib/profileaction.php:238 lib/section.php:95
-#: lib/subscriptionlist.php:126 lib/tagcloudsection.php:71
+#: actions/showgroup.php:398 lib/profileaction.php:117
+#: lib/profileaction.php:152 lib/profileaction.php:255 lib/section.php:95
+#: lib/subscriptionlist.php:127 lib/tagcloudsection.php:71
msgid "(None)"
msgstr ""
-#: actions/showgroup.php:401
+#: actions/showgroup.php:404
msgid "All members"
msgstr ""
-#: actions/showgroup.php:441
+#: actions/showgroup.php:439
#, fuzzy
msgid "Created"
msgstr "新增"
-#: actions/showgroup.php:457
+#: actions/showgroup.php:455
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3533,7 +3781,7 @@ msgid ""
"of this group and many more! ([Read more](%%%%doc.help%%%%))"
msgstr ""
-#: actions/showgroup.php:463
+#: actions/showgroup.php:461
#, php-format
msgid ""
"**%s** is a user group on %%%%site.name%%%%, a [micro-blogging](http://en."
@@ -3542,7 +3790,7 @@ msgid ""
"their life and interests. "
msgstr ""
-#: actions/showgroup.php:491
+#: actions/showgroup.php:489
msgid "Admins"
msgstr ""
@@ -3618,8 +3866,8 @@ msgstr ""
#: actions/showstream.php:207
#, php-format
msgid ""
-"You can try to nudge %1$s or [post something to his or her attention](%%%%"
-"action.newnotice%%%%?status_textarea=%2$s)."
+"You can try to nudge %1$s or [post something to them](%%%%action.newnotice%%%"
+"%?status_textarea=%2$s)."
msgstr ""
#: actions/showstream.php:243
@@ -3671,11 +3919,11 @@ msgid "Unknown language \"%s\"."
msgstr ""
#: actions/siteadminpanel.php:165
-msgid "Minimum text limit is 140 characters."
+msgid "Minimum text limit is 0 (unlimited)."
msgstr ""
#: actions/siteadminpanel.php:171
-msgid "Dupe limit must 1 or more seconds."
+msgid "Dupe limit must be one or more seconds."
msgstr ""
#: actions/siteadminpanel.php:221
@@ -3768,7 +4016,7 @@ msgid "Unable to save site notice."
msgstr "新訊æ¯"
#: actions/sitenoticeadminpanel.php:113
-msgid "Max length for the site-wide notice is 255 chars"
+msgid "Max length for the site-wide notice is 255 chars."
msgstr ""
#: actions/sitenoticeadminpanel.php:176
@@ -3785,104 +4033,162 @@ msgstr ""
msgid "Save site notice"
msgstr "新訊æ¯"
-#: actions/smssettings.php:58
+#. TRANS: Title for SMS settings.
+#: actions/smssettings.php:59
#, fuzzy
msgid "SMS settings"
msgstr "線上å³æ™‚通設定"
-#: actions/smssettings.php:69
+#. TRANS: SMS settings page instructions.
+#. TRANS: %%site.name%% is the name of the site.
+#: actions/smssettings.php:74
#, php-format
msgid "You can receive SMS messages through email from %%site.name%%."
msgstr ""
-#: actions/smssettings.php:91
+#. TRANS: Message given in the SMS settings if SMS is not enabled on the site.
+#: actions/smssettings.php:97
#, fuzzy
msgid "SMS is not available."
msgstr "個人首é ä½å€éŒ¯èª¤"
-#: actions/smssettings.php:112
+#. TRANS: Form legend for SMS settings form.
+#: actions/smssettings.php:111
+#, fuzzy
+msgid "SMS address"
+msgstr "線上å³æ™‚通信箱"
+
+#. TRANS: Form guide in SMS settings form.
+#: actions/smssettings.php:120
msgid "Current confirmed SMS-enabled phone number."
msgstr ""
-#: actions/smssettings.php:123
+#. TRANS: Form guide in IM settings form.
+#: actions/smssettings.php:133
msgid "Awaiting confirmation on this phone number."
msgstr ""
-#: actions/smssettings.php:130
+#. TRANS: Field label for SMS address input in SMS settings form.
+#: actions/smssettings.php:142
msgid "Confirmation code"
msgstr ""
-#: actions/smssettings.php:131
+#. TRANS: Form field instructions in SMS settings form.
+#: actions/smssettings.php:144
msgid "Enter the code you received on your phone."
msgstr ""
-#: actions/smssettings.php:138
+#. TRANS: Button label to confirm SMS confirmation code in SMS settings.
+#: actions/smssettings.php:148
+#, fuzzy
+msgctxt "BUTTON"
+msgid "Confirm"
+msgstr "確èª"
+
+#. TRANS: Field label for SMS phone number input in SMS settings form.
+#: actions/smssettings.php:153
msgid "SMS phone number"
msgstr ""
-#: actions/smssettings.php:140
+#. TRANS: SMS phone number input field instructions in SMS settings form.
+#: actions/smssettings.php:156
msgid "Phone number, no punctuation or spaces, with area code"
msgstr ""
-#: actions/smssettings.php:174
+#. TRANS: Form legend for SMS preferences form.
+#: actions/smssettings.php:195
+msgid "SMS preferences"
+msgstr ""
+
+#. TRANS: Checkbox label in SMS preferences form.
+#: actions/smssettings.php:201
msgid ""
"Send me notices through SMS; I understand I may incur exorbitant charges "
"from my carrier."
msgstr ""
-#: actions/smssettings.php:306
+#. TRANS: Confirmation message for successful SMS preferences save.
+#: actions/smssettings.php:315
+msgid "SMS preferences saved."
+msgstr ""
+
+#. TRANS: Message given saving SMS phone number without having provided one.
+#: actions/smssettings.php:338
msgid "No phone number."
msgstr ""
-#: actions/smssettings.php:311
+#. TRANS: Message given saving SMS phone number without having selected a carrier.
+#: actions/smssettings.php:344
msgid "No carrier selected."
msgstr ""
-#: actions/smssettings.php:318
+#. TRANS: Message given saving SMS phone number that is already set.
+#: actions/smssettings.php:352
msgid "That is already your phone number."
msgstr ""
-#: actions/smssettings.php:321
+#. TRANS: Message given saving SMS phone number that is already set for another user.
+#: actions/smssettings.php:356
msgid "That phone number already belongs to another user."
msgstr ""
-#: actions/smssettings.php:347
+#. TRANS: Message given saving valid SMS phone number that is to be confirmed.
+#: actions/smssettings.php:384
#, fuzzy
msgid ""
"A confirmation code was sent to the phone number you added. Check your phone "
"for the code and instructions on how to use it."
msgstr "確èªä¿¡å·²å¯„到你的線上å³æ™‚通信箱。%sé€çµ¦ä½ å¾—訊æ¯è¦å…ˆç¶“éŽä½ çš„èªå¯ã€‚"
-#: actions/smssettings.php:374
+#. TRANS: Message given canceling SMS phone number confirmation for the wrong phone number.
+#: actions/smssettings.php:413
msgid "That is the wrong confirmation number."
msgstr ""
-#: actions/smssettings.php:405
+#. TRANS: Message given after successfully canceling SMS phone number confirmation.
+#: actions/smssettings.php:427
+#, fuzzy
+msgid "SMS confirmation cancelled."
+msgstr "確èªå–消"
+
+#. TRANS: Message given trying to remove an SMS phone number that is not
+#. TRANS: registered for the active user.
+#: actions/smssettings.php:448
msgid "That is not your phone number."
msgstr ""
-#: actions/smssettings.php:465
+#. TRANS: Message given after successfully removing a registered SMS phone number.
+#: actions/smssettings.php:470
+msgid "The SMS phone number was removed."
+msgstr ""
+
+#. TRANS: Label for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:511
msgid "Mobile carrier"
msgstr ""
-#: actions/smssettings.php:469
+#. TRANS: Default option for mobile carrier dropdown menu in SMS settings.
+#: actions/smssettings.php:516
msgid "Select a carrier"
msgstr ""
-#: actions/smssettings.php:476
+#. TRANS: Form instructions for mobile carrier dropdown menu in SMS settings.
+#. TRANS: %s is an administrative contact's e-mail address.
+#: actions/smssettings.php:525
#, php-format
msgid ""
"Mobile carrier for your phone. If you know a carrier that accepts SMS over "
"email but isn't listed here, send email to let us know at %s."
msgstr ""
-#: actions/smssettings.php:498
+#. TRANS: Message given saving SMS phone number confirmation code without having provided one.
+#: actions/smssettings.php:548
msgid "No code entered"
msgstr ""
#. TRANS: Menu item for site administration
#: actions/snapshotadminpanel.php:54 actions/snapshotadminpanel.php:196
-#: lib/adminpanelaction.php:406
+#: lib/adminpanelaction.php:408
msgid "Snapshots"
msgstr ""
@@ -3904,7 +4210,7 @@ msgid "Invalid snapshot report URL."
msgstr ""
#: actions/snapshotadminpanel.php:200
-msgid "Randomly during Web hit"
+msgid "Randomly during web hit"
msgstr ""
#: actions/snapshotadminpanel.php:201
@@ -3944,8 +4250,8 @@ msgstr "線上å³æ™‚通設定"
msgid "You are not subscribed to that profile."
msgstr ""
-#: actions/subedit.php:83 classes/Subscription.php:89
-#: classes/Subscription.php:116
+#. TRANS: Exception thrown when a subscription could not be stored on the server.
+#: actions/subedit.php:83 classes/Subscription.php:136
#, fuzzy
msgid "Could not save subscription."
msgstr "註冊失敗"
@@ -4039,12 +4345,12 @@ msgstr ""
msgid "%s is not listening to anyone."
msgstr "ç¾åœ¨%1$s在%2$sæˆç‚ºä½ çš„粉絲囉"
-#: actions/subscriptions.php:199
+#: actions/subscriptions.php:208
#, fuzzy
msgid "Jabber"
msgstr "查無此Jabber ID"
-#: actions/subscriptions.php:204 lib/connectsettingsaction.php:115
+#: actions/subscriptions.php:222 lib/connectsettingsaction.php:115
msgid "SMS"
msgstr ""
@@ -4078,13 +4384,13 @@ msgstr "無此文件"
msgid "Tag %s"
msgstr ""
-#: actions/tagother.php:77 lib/userprofile.php:75
+#: actions/tagother.php:77 lib/userprofile.php:76
#, fuzzy
msgid "User profile"
msgstr "無此通知"
#: actions/tagother.php:81 actions/userauthorization.php:132
-#: lib/userprofile.php:102
+#: lib/userprofile.php:103
msgid "Photo"
msgstr ""
@@ -4117,10 +4423,6 @@ msgstr ""
msgid "No such tag."
msgstr "無此通知"
-#: actions/twitapitrends.php:85
-msgid "API method under construction."
-msgstr ""
-
#: actions/unblock.php:59
#, fuzzy
msgid "You haven't blocked that user."
@@ -4136,7 +4438,7 @@ msgstr ""
#: actions/unsubscribe.php:77
#, fuzzy
-msgid "No profile id in request."
+msgid "No profile ID in request."
msgstr "無確èªè«‹æ±‚"
#: actions/unsubscribe.php:98
@@ -4173,7 +4475,8 @@ msgstr ""
msgid "Invalid default subscripton: '%1$s' is not user."
msgstr ""
-#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:108
+#. TRANS: Link description in user account settings menu.
+#: actions/useradminpanel.php:218 lib/accountsettingsaction.php:111
#: lib/personalgroupnav.php:109
msgid "Profile"
msgstr ""
@@ -4231,7 +4534,7 @@ msgid ""
"click “Rejectâ€."
msgstr ""
-#: actions/userauthorization.php:196 actions/version.php:165
+#: actions/userauthorization.php:196 actions/version.php:167
msgid "License"
msgstr ""
@@ -4328,48 +4631,54 @@ msgstr ""
msgid "Enjoy your hotdog!"
msgstr ""
-#: actions/usergroups.php:64
+#. TRANS: Message is used as a page title. %1$s is a nick name, %2$d is a page number.
+#: actions/usergroups.php:66
#, fuzzy, php-format
msgid "%1$s groups, page %2$d"
msgstr "所有訂閱"
-#: actions/usergroups.php:130
+#: actions/usergroups.php:132
msgid "Search for more groups"
msgstr ""
-#: actions/usergroups.php:157
+#: actions/usergroups.php:159
#, php-format
msgid "%s is not a member of any group."
msgstr ""
-#: actions/usergroups.php:162
+#: actions/usergroups.php:164
#, php-format
msgid "Try [searching for groups](%%action.groupsearch%%) and joining them."
msgstr ""
-#: actions/userrss.php:95 lib/atomgroupnoticefeed.php:66
-#: lib/atomusernoticefeed.php:72
+#. TRANS: Message is used as link description. %1$s is a username, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom group notice feed.
+#. TRANS: %1$s is a group name, %2$s is a site name.
+#. TRANS: Message is used as a subtitle in atom user notice feed.
+#. TRANS: %1$s is a user name, %2$s is a site name.
+#: actions/userrss.php:97 lib/atomgroupnoticefeed.php:70
+#: lib/atomusernoticefeed.php:76
#, php-format
msgid "Updates from %1$s on %2$s!"
msgstr ""
-#: actions/version.php:73
+#: actions/version.php:75
#, php-format
msgid "StatusNet %s"
msgstr ""
-#: actions/version.php:153
+#: actions/version.php:155
#, php-format
msgid ""
"This site is powered by %1$s version %2$s, Copyright 2008-2010 StatusNet, "
"Inc. and contributors."
msgstr ""
-#: actions/version.php:161
+#: actions/version.php:163
msgid "Contributors"
msgstr ""
-#: actions/version.php:168
+#: actions/version.php:170
msgid ""
"StatusNet is free software: you can redistribute it and/or modify it under "
"the terms of the GNU Affero General Public License as published by the Free "
@@ -4377,7 +4686,7 @@ msgid ""
"any later version. "
msgstr ""
-#: actions/version.php:174
+#: actions/version.php:176
msgid ""
"This program is distributed in the hope that it will be useful, but WITHOUT "
"ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or "
@@ -4385,410 +4694,541 @@ msgid ""
"for more details. "
msgstr ""
-#: actions/version.php:180
+#: actions/version.php:182
#, php-format
msgid ""
"You should have received a copy of the GNU Affero General Public License "
"along with this program. If not, see %s."
msgstr ""
-#: actions/version.php:189
+#: actions/version.php:191
msgid "Plugins"
msgstr ""
-#: actions/version.php:196 lib/action.php:767
+#. TRANS: Secondary navigation menu option leading to version information on the StatusNet site.
+#: actions/version.php:198 lib/action.php:789
#, fuzzy
msgid "Version"
msgstr "地點"
-#: actions/version.php:197
+#: actions/version.php:199
msgid "Author(s)"
msgstr ""
-#: classes/File.php:144
+#. TRANS: Server exception thrown when a URL cannot be processed.
+#: classes/File.php:143
+#, php-format
+msgid "Cannot process URL '%s'"
+msgstr ""
+
+#. TRANS: Server exception thrown when... Robin thinks something is impossible!
+#: classes/File.php:175
+msgid "Robin thinks something is impossible."
+msgstr ""
+
+#. TRANS: Message given if an upload is larger than the configured maximum.
+#. TRANS: %1$d is the byte limit for uploads, %2$d is the byte count for the uploaded file.
+#: classes/File.php:190
#, php-format
msgid ""
-"No file may be larger than %d bytes and the file you sent was %d bytes. Try "
-"to upload a smaller version."
+"No file may be larger than %1$d bytes and the file you sent was %2$d bytes. "
+"Try to upload a smaller version."
msgstr ""
-#: classes/File.php:154
+#. TRANS: Message given if an upload would exceed user quota.
+#. TRANS: %d (number) is the user quota in bytes.
+#: classes/File.php:202
#, php-format
msgid "A file this large would exceed your user quota of %d bytes."
msgstr ""
-#: classes/File.php:161
+#. TRANS: Message given id an upload would exceed a user's monthly quota.
+#. TRANS: $d (number) is the monthly user quota in bytes.
+#: classes/File.php:211
#, php-format
msgid "A file this large would exceed your monthly quota of %d bytes."
msgstr ""
-#: classes/Group_member.php:41
+#. TRANS: Client exception thrown if a file upload does not have a valid name.
+#: classes/File.php:248 classes/File.php:263
+#, fuzzy
+msgid "Invalid filename."
+msgstr "尺寸錯誤"
+
+#. TRANS: Exception thrown when joining a group fails.
+#: classes/Group_member.php:42
#, fuzzy
msgid "Group join failed."
msgstr "無此通知"
-#: classes/Group_member.php:53
+#. TRANS: Exception thrown when trying to leave a group the user is not a member of.
+#: classes/Group_member.php:55
#, fuzzy
msgid "Not part of group."
msgstr "無法更新使用者"
-#: classes/Group_member.php:60
+#. TRANS: Exception thrown when trying to leave a group fails.
+#: classes/Group_member.php:63
#, fuzzy
msgid "Group leave failed."
msgstr "無此通知"
-#: classes/Local_group.php:41
+#. TRANS: Server exception thrown when updating a local group fails.
+#: classes/Local_group.php:42
#, fuzzy
msgid "Could not update local group."
msgstr "無法更新使用者"
-#: classes/Login_token.php:76
+#. TRANS: Exception thrown when trying creating a login token failed.
+#. TRANS: %s is the user nickname for which token creation failed.
+#: classes/Login_token.php:78
#, fuzzy, php-format
msgid "Could not create login token for %s"
msgstr "無法存å–個人圖åƒè³‡æ–™"
-#: classes/Message.php:45
+#. TRANS: Exception thrown when database name or Data Source Name could not be found.
+#: classes/Memcached_DataObject.php:533
+msgid "No database name or DSN found anywhere."
+msgstr ""
+
+#. TRANS: Client exception thrown when a user tries to send a direct message while being banned from sending them.
+#: classes/Message.php:46
msgid "You are banned from sending direct messages."
msgstr ""
-#: classes/Message.php:61
+#. TRANS: Message given when a message could not be stored on the server.
+#: classes/Message.php:63
msgid "Could not insert message."
msgstr ""
-#: classes/Message.php:71
+#. TRANS: Message given when a message could not be updated on the server.
+#: classes/Message.php:74
msgid "Could not update message with new URI."
msgstr ""
-#: classes/Notice.php:172
+#. TRANS: Server exception thrown when a user profile for a notice cannot be found.
+#. TRANS: %1$d is a profile ID (number), %2$d is a notice ID (number).
+#: classes/Notice.php:98
#, php-format
-msgid "DB error inserting hashtag: %s"
+msgid "No such profile (%1$d) for notice (%2$d)."
msgstr ""
-#: classes/Notice.php:241
+#. TRANS: Server exception. %s are the error details.
+#: classes/Notice.php:190
+#, fuzzy, php-format
+msgid "Database error inserting hashtag: %s"
+msgstr "增加回覆時,資料庫發生錯誤: %s"
+
+#. TRANS: Client exception thrown if a notice contains too many characters.
+#: classes/Notice.php:260
#, fuzzy
msgid "Problem saving notice. Too long."
msgstr "儲存使用者發生錯誤"
-#: classes/Notice.php:245
+#. TRANS: Client exception thrown when trying to save a notice for an unknown user.
+#: classes/Notice.php:265
#, fuzzy
msgid "Problem saving notice. Unknown user."
msgstr "儲存使用者發生錯誤"
-#: classes/Notice.php:250
+#. TRANS: Client exception thrown when a user tries to post too many notices in a given time frame.
+#: classes/Notice.php:271
msgid ""
"Too many notices too fast; take a breather and post again in a few minutes."
msgstr ""
-#: classes/Notice.php:256
+#. TRANS: Client exception thrown when a user tries to post too many duplicate notices in a given time frame.
+#: classes/Notice.php:278
msgid ""
"Too many duplicate messages too quickly; take a breather and post again in a "
"few minutes."
msgstr ""
-#: classes/Notice.php:262
+#. TRANS: Client exception thrown when a user tries to post while being banned.
+#: classes/Notice.php:286
msgid "You are banned from posting notices on this site."
msgstr ""
-#: classes/Notice.php:328 classes/Notice.php:354
+#. TRANS: Server exception thrown when a notice cannot be saved.
+#. TRANS: Server exception thrown when a notice cannot be updated.
+#: classes/Notice.php:353 classes/Notice.php:380
msgid "Problem saving notice."
msgstr ""
-#: classes/Notice.php:927
+#. TRANS: Server exception thrown when no array is provided to the method saveKnownGroups().
+#: classes/Notice.php:892
+msgid "Bad type provided to saveKnownGroups"
+msgstr ""
+
+#. TRANS: Server exception thrown when an update for a group inbox fails.
+#: classes/Notice.php:991
#, fuzzy
msgid "Problem saving group inbox."
msgstr "儲存使用者發生錯誤"
-#: classes/Notice.php:1459
+#. TRANS: Message used to repeat a notice. RT is the abbreviation of 'retweet'.
+#. TRANS: %1$s is the repeated user's name, %2$s is the repeated notice.
+#: classes/Notice.php:1745
#, php-format
msgid "RT @%1$s %2$s"
msgstr ""
-#: classes/Subscription.php:66 lib/oauthstore.php:465
+#. TRANS: Exception thrown when trying to revoke an existing role for a user that does not exist.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:737
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; does not exist."
+msgstr ""
+
+#. TRANS: Exception thrown when trying to revoke a role for a user with a failing database query.
+#. TRANS: %1$s is the role name, %2$s is the user ID (number).
+#: classes/Profile.php:746
+#, php-format
+msgid "Cannot revoke role \"%1$s\" for user #%2$d; database error."
+msgstr ""
+
+#. TRANS: Exception thrown when a right for a non-existing user profile is checked.
+#: classes/Remote_profile.php:54
+#, fuzzy
+msgid "Missing profile."
+msgstr "無此通知"
+
+#. TRANS: Exception thrown when a tag cannot be saved.
+#: classes/Status_network.php:346
+#, fuzzy
+msgid "Unable to save tag."
+msgstr "新訊æ¯"
+
+#. TRANS: Exception thrown when trying to subscribe while being banned from subscribing.
+#: classes/Subscription.php:75 lib/oauthstore.php:465
msgid "You have been banned from subscribing."
msgstr ""
-#: classes/Subscription.php:70
+#. TRANS: Exception thrown when trying to subscribe while already subscribed.
+#: classes/Subscription.php:80
msgid "Already subscribed!"
msgstr ""
-#: classes/Subscription.php:74
+#. TRANS: Exception thrown when trying to subscribe to a user who has blocked the subscribing user.
+#: classes/Subscription.php:85
msgid "User has blocked you."
msgstr ""
-#: classes/Subscription.php:157
+#. TRANS: Exception thrown when trying to unsibscribe without a subscription.
+#: classes/Subscription.php:171
#, fuzzy
msgid "Not subscribed!"
msgstr "此帳號已註冊"
-#: classes/Subscription.php:163
+#. TRANS: Exception thrown when trying to unsubscribe a user from themselves.
+#: classes/Subscription.php:178
#, fuzzy
-msgid "Couldn't delete self-subscription."
+msgid "Could not delete self-subscription."
msgstr "無法刪除帳號"
-#: classes/Subscription.php:190
+#. TRANS: Exception thrown when the OMB token for a subscription could not deleted on the server.
+#: classes/Subscription.php:206
#, fuzzy
-msgid "Couldn't delete subscription OMB token."
+msgid "Could not delete subscription OMB token."
msgstr "無法刪除帳號"
-#: classes/Subscription.php:201 lib/subs.php:69
-msgid "Couldn't delete subscription."
+#. TRANS: Exception thrown when a subscription could not be deleted on the server.
+#: classes/Subscription.php:218
+#, fuzzy
+msgid "Could not delete subscription."
msgstr "無法刪除帳號"
-#: classes/User.php:373
+#. TRANS: Notice given on user registration.
+#. TRANS: %1$s is the sitename, $2$s is the registering user's nickname.
+#: classes/User.php:365
#, php-format
msgid "Welcome to %1$s, @%2$s!"
msgstr ""
-#: classes/User_group.php:477
+#. TRANS: Server exception thrown when creating a group failed.
+#: classes/User_group.php:496
#, fuzzy
msgid "Could not create group."
msgstr "無法存å–個人圖åƒè³‡æ–™"
-#: classes/User_group.php:486
+#. TRANS: Server exception thrown when updating a group URI failed.
+#: classes/User_group.php:506
#, fuzzy
msgid "Could not set group URI."
msgstr "註冊失敗"
-#: classes/User_group.php:507
+#. TRANS: Server exception thrown when setting group membership failed.
+#: classes/User_group.php:529
#, fuzzy
msgid "Could not set group membership."
msgstr "註冊失敗"
-#: classes/User_group.php:521
+#. TRANS: Server exception thrown when saving local group information failed.
+#: classes/User_group.php:544
#, fuzzy
msgid "Could not save local group info."
msgstr "註冊失敗"
-#: lib/accountsettingsaction.php:108
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:109
msgid "Change your profile settings"
msgstr ""
-#: lib/accountsettingsaction.php:112
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:116
#, fuzzy
msgid "Upload an avatar"
msgstr "無法上傳個人圖åƒ"
-#: lib/accountsettingsaction.php:116
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:123
msgid "Change your password"
msgstr ""
-#: lib/accountsettingsaction.php:120
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:130
msgid "Change email handling"
msgstr ""
-#: lib/accountsettingsaction.php:124
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:137
#, fuzzy
msgid "Design your profile"
msgstr "無此通知"
-#: lib/accountsettingsaction.php:128
-msgid "Other"
+#. TRANS: Link title attribute in user account settings menu.
+#: lib/accountsettingsaction.php:144
+msgid "Other options"
msgstr ""
-#: lib/accountsettingsaction.php:128
-msgid "Other options"
+#. TRANS: Link description in user account settings menu.
+#: lib/accountsettingsaction.php:146
+msgid "Other"
msgstr ""
-#: lib/action.php:144
+#. TRANS: Page title. %1$s is the title, %2$s is the site name.
+#: lib/action.php:145
#, fuzzy, php-format
msgid "%1$s - %2$s"
msgstr "%1$s的狀態是%2$s"
-#: lib/action.php:159
+#. TRANS: Page title for a page without a title set.
+#: lib/action.php:161
msgid "Untitled page"
msgstr ""
-#: lib/action.php:424
+#. TRANS: DT element for primary navigation menu. String is hidden in default CSS.
+#: lib/action.php:436
msgid "Primary site navigation"
msgstr ""
#. TRANS: Tooltip for main menu option "Personal"
-#: lib/action.php:430
+#: lib/action.php:442
msgctxt "TOOLTIP"
msgid "Personal profile and friends timeline"
msgstr ""
-#: lib/action.php:433
+#. TRANS: Main menu option when logged in for access to personal profile and friends timeline
+#: lib/action.php:445
#, fuzzy
msgctxt "MENU"
msgid "Personal"
msgstr "地點"
#. TRANS: Tooltip for main menu option "Account"
-#: lib/action.php:435
+#: lib/action.php:447
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change your email, avatar, password, profile"
msgstr "更改密碼"
#. TRANS: Tooltip for main menu option "Services"
-#: lib/action.php:440
+#: lib/action.php:452
#, fuzzy
msgctxt "TOOLTIP"
msgid "Connect to services"
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: lib/action.php:443
+#. TRANS: Main menu option when logged in and connection are possible for access to options to connect to other services
+#: lib/action.php:455
msgid "Connect"
msgstr "連çµ"
#. TRANS: Tooltip for menu option "Admin"
-#: lib/action.php:446
+#: lib/action.php:458
#, fuzzy
msgctxt "TOOLTIP"
msgid "Change site configuration"
msgstr "確èªä¿¡ç®±"
-#: lib/action.php:449
+#. TRANS: Main menu option when logged in and site admin for access to site configuration
+#: lib/action.php:461
msgctxt "MENU"
msgid "Admin"
msgstr ""
#. TRANS: Tooltip for main menu option "Invite"
-#: lib/action.php:453
+#: lib/action.php:465
#, php-format
msgctxt "TOOLTIP"
msgid "Invite friends and colleagues to join you on %s"
msgstr ""
-#: lib/action.php:456
+#. TRANS: Main menu option when logged in and invitations are allowed for inviting new users
+#: lib/action.php:468
#, fuzzy
msgctxt "MENU"
msgid "Invite"
msgstr "尺寸錯誤"
#. TRANS: Tooltip for main menu option "Logout"
-#: lib/action.php:462
+#: lib/action.php:474
msgctxt "TOOLTIP"
msgid "Logout from the site"
msgstr ""
-#: lib/action.php:465
+#. TRANS: Main menu option when logged in to log out the current user
+#: lib/action.php:477
#, fuzzy
msgctxt "MENU"
msgid "Logout"
msgstr "登出"
#. TRANS: Tooltip for main menu option "Register"
-#: lib/action.php:470
+#: lib/action.php:482
#, fuzzy
msgctxt "TOOLTIP"
msgid "Create an account"
msgstr "新增帳號"
-#: lib/action.php:473
+#. TRANS: Main menu option when not logged in to register a new account
+#: lib/action.php:485
#, fuzzy
msgctxt "MENU"
msgid "Register"
msgstr "所有訂閱"
#. TRANS: Tooltip for main menu option "Login"
-#: lib/action.php:476
+#: lib/action.php:488
msgctxt "TOOLTIP"
msgid "Login to the site"
msgstr ""
-#: lib/action.php:479
+#: lib/action.php:491
#, fuzzy
msgctxt "MENU"
msgid "Login"
msgstr "登入"
#. TRANS: Tooltip for main menu option "Help"
-#: lib/action.php:482
+#: lib/action.php:494
#, fuzzy
msgctxt "TOOLTIP"
msgid "Help me!"
msgstr "求救"
-#: lib/action.php:485
+#: lib/action.php:497
#, fuzzy
msgctxt "MENU"
msgid "Help"
msgstr "求救"
#. TRANS: Tooltip for main menu option "Search"
-#: lib/action.php:488
+#: lib/action.php:500
msgctxt "TOOLTIP"
msgid "Search for people or text"
msgstr ""
-#: lib/action.php:491
+#: lib/action.php:503
msgctxt "MENU"
msgid "Search"
msgstr ""
#. TRANS: DT element for site notice. String is hidden in default CSS.
#. TRANS: Menu item for site administration
-#: lib/action.php:513 lib/adminpanelaction.php:398
+#: lib/action.php:525 lib/adminpanelaction.php:400
#, fuzzy
msgid "Site notice"
msgstr "新訊æ¯"
-#: lib/action.php:579
+#. TRANS: DT element for local views block. String is hidden in default CSS.
+#: lib/action.php:592
msgid "Local views"
msgstr ""
-#: lib/action.php:645
+#. TRANS: DT element for page notice. String is hidden in default CSS.
+#: lib/action.php:659
#, fuzzy
msgid "Page notice"
msgstr "新訊æ¯"
-#: lib/action.php:747
+#. TRANS: DT element for secondary navigation menu. String is hidden in default CSS.
+#: lib/action.php:762
msgid "Secondary site navigation"
msgstr ""
-#: lib/action.php:752
+#. TRANS: Secondary navigation menu option leading to help on StatusNet.
+#: lib/action.php:768
msgid "Help"
msgstr "求救"
-#: lib/action.php:754
+#. TRANS: Secondary navigation menu option leading to text about StatusNet site.
+#: lib/action.php:771
msgid "About"
msgstr "關於"
-#: lib/action.php:756
+#. TRANS: Secondary navigation menu option leading to Frequently Asked Questions.
+#: lib/action.php:774
msgid "FAQ"
msgstr "常見å•é¡Œ"
-#: lib/action.php:760
+#. TRANS: Secondary navigation menu option leading to Terms of Service.
+#: lib/action.php:779
msgid "TOS"
msgstr ""
-#: lib/action.php:763
+#. TRANS: Secondary navigation menu option leading to privacy policy.
+#: lib/action.php:783
msgid "Privacy"
msgstr ""
-#: lib/action.php:765
+#. TRANS: Secondary navigation menu option.
+#: lib/action.php:786
msgid "Source"
msgstr ""
-#: lib/action.php:769
+#. TRANS: Secondary navigation menu option leading to contact information on the StatusNet site.
+#: lib/action.php:792
msgid "Contact"
msgstr "好å‹åå–®"
-#: lib/action.php:771
+#: lib/action.php:794
msgid "Badge"
msgstr ""
-#: lib/action.php:799
+#. TRANS: DT element for StatusNet software license.
+#: lib/action.php:823
msgid "StatusNet software license"
msgstr ""
-#: lib/action.php:802
-#, php-format
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is set.
+#: lib/action.php:827
+#, fuzzy, php-format
msgid ""
"**%%site.name%%** is a microblogging service brought to you by [%%site."
-"broughtby%%](%%site.broughtbyurl%%). "
+"broughtby%%](%%site.broughtbyurl%%)."
msgstr ""
"**%%site.name%%**是由[%%site.broughtby%%](%%site.broughtbyurl%%)所æ供的微型"
"部è½æ ¼æœå‹™"
-#: lib/action.php:804
+#. TRANS: First sentence of the StatusNet site license. Used if 'broughtby' is not set.
+#: lib/action.php:830
#, php-format
-msgid "**%%site.name%%** is a microblogging service. "
+msgid "**%%site.name%%** is a microblogging service."
msgstr "**%%site.name%%**是個微型部è½æ ¼"
-#: lib/action.php:806
+#. TRANS: Second sentence of the StatusNet site license. Mentions the StatusNet source code license.
+#: lib/action.php:834
#, php-format
msgid ""
"It runs the [StatusNet](http://status.net/) microblogging software, version %"
@@ -4796,69 +5236,83 @@ msgid ""
"org/licensing/licenses/agpl-3.0.html)."
msgstr ""
-#: lib/action.php:821
+#. TRANS: DT element for StatusNet site content license.
+#: lib/action.php:850
#, fuzzy
msgid "Site content license"
msgstr "新訊æ¯"
-#: lib/action.php:826
+#. TRANS: Content license displayed when license is set to 'private'.
+#. TRANS: %1$s is the site name.
+#: lib/action.php:857
#, php-format
msgid "Content and data of %1$s are private and confidential."
msgstr ""
-#: lib/action.php:831
+#. TRANS: Content license displayed when license is set to 'allrightsreserved'.
+#. TRANS: %1$s is the copyright owner.
+#: lib/action.php:864
#, php-format
msgid "Content and data copyright by %1$s. All rights reserved."
msgstr ""
-#: lib/action.php:834
+#. TRANS: Content license displayed when license is set to 'allrightsreserved' and no owner is set.
+#: lib/action.php:868
msgid "Content and data copyright by contributors. All rights reserved."
msgstr ""
-#: lib/action.php:847
-msgid "All "
-msgstr ""
-
-#: lib/action.php:853
-msgid "license."
+#. TRANS: license message in footer. %1$s is the site name, %2$s is a link to the license URL, with a licence name set in configuration.
+#: lib/action.php:881
+#, php-format
+msgid "All %1$s content and data are available under the %2$s license."
msgstr ""
-#: lib/action.php:1152
+#. TRANS: DT element for pagination (previous/next, etc.).
+#: lib/action.php:1192
msgid "Pagination"
msgstr ""
-#: lib/action.php:1161
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: present than the currently displayed information.
+#: lib/action.php:1203
msgid "After"
msgstr ""
-#: lib/action.php:1169
+#. TRANS: Pagination message to go to a page displaying information more in the
+#. TRANS: past than the currently displayed information.
+#: lib/action.php:1213
#, fuzzy
msgid "Before"
msgstr "之å‰çš„內容»"
-#: lib/activity.php:453
+#. TRANS: Client exception thrown when a feed instance is a DOMDocument.
+#: lib/activity.php:122
+msgid "Expecting a root feed element but got a whole XML document."
+msgstr ""
+
+#: lib/activityutils.php:208
msgid "Can't handle remote content yet."
msgstr ""
-#: lib/activity.php:481
+#: lib/activityutils.php:244
msgid "Can't handle embedded XML content yet."
msgstr ""
-#: lib/activity.php:485
+#: lib/activityutils.php:248
msgid "Can't handle embedded Base64 content yet."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message thrown when a user tries to change admin settings but has no access rights.
#: lib/adminpanelaction.php:98
msgid "You cannot make changes to this site."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message throw when a certain panel's settings cannot be changed.
#: lib/adminpanelaction.php:110
msgid "Changes to that panel are not allowed."
msgstr ""
-#. TRANS: Client error message
+#. TRANS: Client error message.
#: lib/adminpanelaction.php:229
msgid "showForm() not implemented."
msgstr ""
@@ -4868,162 +5322,200 @@ msgstr ""
msgid "saveSettings() not implemented."
msgstr ""
-#. TRANS: Client error message
-#: lib/adminpanelaction.php:283
+#. TRANS: Client error message thrown if design settings could not be deleted in
+#. TRANS: the admin panel Design.
+#: lib/adminpanelaction.php:284
msgid "Unable to delete design setting."
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:348
+#: lib/adminpanelaction.php:350
#, fuzzy
msgid "Basic site configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:350
+#: lib/adminpanelaction.php:352
#, fuzzy
msgctxt "MENU"
msgid "Site"
msgstr "新訊æ¯"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:356
+#: lib/adminpanelaction.php:358
#, fuzzy
msgid "Design configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:358
+#: lib/adminpanelaction.php:360
#, fuzzy
msgctxt "MENU"
msgid "Design"
msgstr "地點"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:364
+#: lib/adminpanelaction.php:366
#, fuzzy
msgid "User configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item for site administration
-#: lib/adminpanelaction.php:366 lib/personalgroupnav.php:115
+#: lib/adminpanelaction.php:368 lib/personalgroupnav.php:115
msgid "User"
msgstr ""
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:372
+#: lib/adminpanelaction.php:374
#, fuzzy
msgid "Access configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:380
+#: lib/adminpanelaction.php:382
#, fuzzy
msgid "Paths configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:388
+#: lib/adminpanelaction.php:390
#, fuzzy
msgid "Sessions configuration"
msgstr "確èªä¿¡ç®±"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:396
+#: lib/adminpanelaction.php:398
#, fuzzy
msgid "Edit site notice"
msgstr "新訊æ¯"
#. TRANS: Menu item title/tooltip
-#: lib/adminpanelaction.php:404
+#: lib/adminpanelaction.php:406
#, fuzzy
msgid "Snapshots configuration"
msgstr "確èªä¿¡ç®±"
-#: lib/apiauth.php:94
+#. TRANS: Client error 401.
+#: lib/apiauth.php:113
msgid "API resource requires read-write access, but you only have read access."
msgstr ""
-#: lib/apiauth.php:272
-#, php-format
-msgid "Failed API auth attempt, nickname = %1$s, proxy = %2$s, ip = %3$s"
-msgstr ""
-
-#: lib/applicationeditform.php:136
+#. TRANS: Form legend.
+#: lib/applicationeditform.php:137
msgid "Edit application"
msgstr ""
-#: lib/applicationeditform.php:184
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:187
msgid "Icon for this application"
msgstr ""
-#: lib/applicationeditform.php:204
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:209
#, fuzzy, php-format
msgid "Describe your application in %d characters"
msgstr "請在140個字以內æ述你自己與你的興趣"
-#: lib/applicationeditform.php:207
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:213
#, fuzzy
msgid "Describe your application"
msgstr "請在140個字以內æ述你自己與你的興趣"
-#: lib/applicationeditform.php:216
-msgid "Source URL"
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:224
+msgid "URL of the homepage of this application"
msgstr ""
-#: lib/applicationeditform.php:218
-msgid "URL of the homepage of this application"
+#. TRANS: Form input field label.
+#: lib/applicationeditform.php:226
+msgid "Source URL"
msgstr ""
-#: lib/applicationeditform.php:224
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:233
msgid "Organization responsible for this application"
msgstr ""
-#: lib/applicationeditform.php:230
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:242
msgid "URL for the homepage of the organization"
msgstr ""
-#: lib/applicationeditform.php:236
+#. TRANS: Form input field instructions.
+#: lib/applicationeditform.php:251
msgid "URL to redirect to after authentication"
msgstr ""
-#: lib/applicationeditform.php:258
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:278
msgid "Browser"
msgstr ""
-#: lib/applicationeditform.php:274
+#. TRANS: Radio button label for application type
+#: lib/applicationeditform.php:295
msgid "Desktop"
msgstr ""
-#: lib/applicationeditform.php:275
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:297
msgid "Type of application, browser or desktop"
msgstr ""
-#: lib/applicationeditform.php:297
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:320
msgid "Read-only"
msgstr ""
-#: lib/applicationeditform.php:315
+#. TRANS: Radio button label for access type.
+#: lib/applicationeditform.php:339
msgid "Read-write"
msgstr ""
-#: lib/applicationeditform.php:316
+#. TRANS: Form guide.
+#: lib/applicationeditform.php:341
msgid "Default access for this application: read-only, or read-write"
msgstr ""
-#: lib/applicationlist.php:154
+#. TRANS: Submit button title
+#: lib/applicationeditform.php:359
+msgid "Cancel"
+msgstr "å–消"
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:136
+msgid "read-write"
+msgstr ""
+
+#. TRANS: Application access type
+#: lib/applicationlist.php:138
+msgid "read-only"
+msgstr ""
+
+#. TRANS: Used in application list. %1$s is a modified date, %2$s is access type (read-write or read-only)
+#: lib/applicationlist.php:144
+#, php-format
+msgid "Approved %1$s - \"%2$s\" access."
+msgstr ""
+
+#. TRANS: Button label
+#: lib/applicationlist.php:159
+msgctxt "BUTTON"
msgid "Revoke"
msgstr ""
-#: lib/attachmentlist.php:87
+#. TRANS: DT element label in attachment list.
+#: lib/attachmentlist.php:88
msgid "Attachments"
msgstr ""
+#. TRANS: DT element label in attachment list item.
#: lib/attachmentlist.php:265
msgid "Author"
msgstr ""
-#: lib/attachmentlist.php:278
+#. TRANS: DT element label in attachment list item.
+#: lib/attachmentlist.php:279
msgid "Provider"
msgstr ""
@@ -5035,45 +5527,65 @@ msgstr ""
msgid "Tags for this attachment"
msgstr ""
-#: lib/authenticationplugin.php:220 lib/authenticationplugin.php:225
+#: lib/authenticationplugin.php:221 lib/authenticationplugin.php:226
msgid "Password changing failed"
msgstr ""
-#: lib/authenticationplugin.php:235
+#: lib/authenticationplugin.php:236
msgid "Password changing is not allowed"
msgstr ""
-#: lib/channel.php:138 lib/channel.php:158
+#: lib/channel.php:157 lib/channel.php:177
msgid "Command results"
msgstr ""
-#: lib/channel.php:210 lib/mailhandler.php:142
+#: lib/channel.php:229 lib/mailhandler.php:142
msgid "Command complete"
msgstr ""
-#: lib/channel.php:221
+#: lib/channel.php:240
msgid "Command failed"
msgstr ""
-#: lib/command.php:44
-msgid "Sorry, this command is not yet implemented."
+#: lib/command.php:83 lib/command.php:105
+msgid "Notice with that id does not exist"
msgstr ""
-#: lib/command.php:88
+#: lib/command.php:99 lib/command.php:596
+#, fuzzy
+msgid "User has no last notice"
+msgstr "新訊æ¯"
+
+#. TRANS: Message given requesting a profile for a non-existing user.
+#. TRANS: %s is the nickname of the user for which the profile could not be found.
+#: lib/command.php:127
#, php-format
msgid "Could not find a user with nickname %s"
msgstr "無法更新使用者"
-#: lib/command.php:92
+#. TRANS: Message given getting a non-existing user.
+#. TRANS: %s is the nickname of the user that could not be found.
+#: lib/command.php:147
+#, fuzzy, php-format
+msgid "Could not find a local user with nickname %s"
+msgstr "無法更新使用者"
+
+#: lib/command.php:180
+msgid "Sorry, this command is not yet implemented."
+msgstr ""
+
+#: lib/command.php:225
msgid "It does not make a lot of sense to nudge yourself!"
msgstr ""
-#: lib/command.php:99
+#. TRANS: Message given having nudged another user.
+#. TRANS: %s is the nickname of the user that was nudged.
+#: lib/command.php:234
#, php-format
msgid "Nudge sent to %s"
msgstr ""
-#: lib/command.php:126
+#: lib/command.php:260
#, php-format
msgid ""
"Subscriptions: %1$s\n"
@@ -5081,201 +5593,203 @@ msgid ""
"Notices: %3$s"
msgstr ""
-#: lib/command.php:152 lib/command.php:390 lib/command.php:451
-msgid "Notice with that id does not exist"
-msgstr ""
-
-#: lib/command.php:168 lib/command.php:406 lib/command.php:467
-#: lib/command.php:523
-#, fuzzy
-msgid "User has no last notice"
-msgstr "新訊æ¯"
-
-#: lib/command.php:190
+#: lib/command.php:302
msgid "Notice marked as fave."
msgstr ""
-#: lib/command.php:217
+#: lib/command.php:323
#, fuzzy
msgid "You are already a member of that group"
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: lib/command.php:231
+#. TRANS: Message given having failed to add a user to a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:339
#, fuzzy, php-format
-msgid "Could not join user %s to group %s"
+msgid "Could not join user %1$s to group %2$s"
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: lib/command.php:236
-#, fuzzy, php-format
-msgid "%s joined group %s"
-msgstr "%1$s的狀態是%2$s"
-
-#: lib/command.php:275
+#. TRANS: Message given having failed to remove a user from a group.
+#. TRANS: %1$s is the nickname of the user, %2$s is the nickname of the group.
+#: lib/command.php:385
#, fuzzy, php-format
-msgid "Could not remove user %s to group %s"
+msgid "Could not remove user %1$s from group %2$s"
msgstr "無法從 %s 建立OpenID"
-#: lib/command.php:280
-#, fuzzy, php-format
-msgid "%s left group %s"
-msgstr "%1$s的狀態是%2$s"
-
-#: lib/command.php:309
+#. TRANS: Whois output. %s is the full name of the queried user.
+#: lib/command.php:418
#, fuzzy, php-format
msgid "Fullname: %s"
msgstr "å…¨å"
-#: lib/command.php:312 lib/mail.php:258
+#. TRANS: Whois output. %s is the location of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:422 lib/mail.php:268
#, php-format
msgid "Location: %s"
msgstr ""
-#: lib/command.php:315 lib/mail.php:260
+#. TRANS: Whois output. %s is the homepage of the queried user.
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/command.php:426 lib/mail.php:271
#, php-format
msgid "Homepage: %s"
msgstr ""
-#: lib/command.php:318
+#. TRANS: Whois output. %s is the bio information of the queried user.
+#: lib/command.php:430
#, php-format
msgid "About: %s"
msgstr ""
-#: lib/command.php:349
+#: lib/command.php:457
+#, php-format
+msgid ""
+"%s is a remote profile; you can only send direct messages to users on the "
+"same server."
+msgstr ""
+
+#. TRANS: Message given if content is too long.
+#. TRANS: %1$d is the maximum number of characters, %2$d is the number of submitted characters.
+#: lib/command.php:472
#, php-format
-msgid "Message too long - maximum is %d characters, you sent %d"
+msgid "Message too long - maximum is %1$d characters, you sent %2$d"
msgstr ""
-#: lib/command.php:367
+#. TRANS: Message given have sent a direct message to another user.
+#. TRANS: %s is the name of the other user.
+#: lib/command.php:492
#, php-format
msgid "Direct message to %s sent"
msgstr ""
-#: lib/command.php:369
+#: lib/command.php:494
msgid "Error sending direct message."
msgstr ""
-#: lib/command.php:413
+#: lib/command.php:514
#, fuzzy
msgid "Cannot repeat your own notice"
msgstr "儲存使用者發生錯誤"
-#: lib/command.php:418
+#: lib/command.php:519
#, fuzzy
msgid "Already repeated that notice"
msgstr "無此使用者"
-#: lib/command.php:426
+#. TRANS: Message given having repeated a notice from another user.
+#. TRANS: %s is the name of the user for which the notice was repeated.
+#: lib/command.php:529
#, fuzzy, php-format
msgid "Notice from %s repeated"
msgstr "更新個人圖åƒ"
-#: lib/command.php:428
+#: lib/command.php:531
#, fuzzy
msgid "Error repeating notice."
msgstr "儲存使用者發生錯誤"
-#: lib/command.php:482
+#: lib/command.php:562
#, php-format
msgid "Notice too long - maximum is %d characters, you sent %d"
msgstr ""
-#: lib/command.php:491
+#: lib/command.php:571
#, fuzzy, php-format
msgid "Reply to %s sent"
msgstr "&s的微型部è½æ ¼"
-#: lib/command.php:493
+#: lib/command.php:573
msgid "Error saving notice."
msgstr "儲存使用者發生錯誤"
-#: lib/command.php:547
+#: lib/command.php:620
msgid "Specify the name of the user to subscribe to"
msgstr ""
-#: lib/command.php:554 lib/command.php:589
-#, fuzzy
-msgid "No such user"
-msgstr "無此使用者"
+#: lib/command.php:628
+msgid "Can't subscribe to OMB profiles by command."
+msgstr ""
-#: lib/command.php:561
+#: lib/command.php:634
#, php-format
msgid "Subscribed to %s"
msgstr ""
-#: lib/command.php:582 lib/command.php:685
+#: lib/command.php:655 lib/command.php:754
msgid "Specify the name of the user to unsubscribe from"
msgstr ""
-#: lib/command.php:595
+#: lib/command.php:664
#, php-format
msgid "Unsubscribed from %s"
msgstr ""
-#: lib/command.php:613 lib/command.php:636
+#: lib/command.php:682 lib/command.php:705
msgid "Command not yet implemented."
msgstr ""
-#: lib/command.php:616
+#: lib/command.php:685
msgid "Notification off."
msgstr ""
-#: lib/command.php:618
+#: lib/command.php:687
msgid "Can't turn off notification."
msgstr ""
-#: lib/command.php:639
+#: lib/command.php:708
msgid "Notification on."
msgstr ""
-#: lib/command.php:641
+#: lib/command.php:710
msgid "Can't turn on notification."
msgstr ""
-#: lib/command.php:654
+#: lib/command.php:723
msgid "Login command is disabled"
msgstr ""
-#: lib/command.php:665
+#: lib/command.php:734
#, php-format
msgid "This link is useable only once, and is good for only 2 minutes: %s"
msgstr ""
-#: lib/command.php:692
+#: lib/command.php:761
#, fuzzy, php-format
msgid "Unsubscribed %s"
msgstr "此帳號已註冊"
-#: lib/command.php:709
+#: lib/command.php:778
#, fuzzy
msgid "You are not subscribed to anyone."
msgstr "此帳號已註冊"
-#: lib/command.php:711
+#: lib/command.php:780
msgid "You are subscribed to this person:"
msgid_plural "You are subscribed to these people:"
msgstr[0] "此帳號已註冊"
-#: lib/command.php:731
+#: lib/command.php:800
#, fuzzy
msgid "No one is subscribed to you."
msgstr "無此訂閱"
-#: lib/command.php:733
+#: lib/command.php:802
msgid "This person is subscribed to you:"
msgid_plural "These people are subscribed to you:"
msgstr[0] "無此訂閱"
-#: lib/command.php:753
+#: lib/command.php:822
#, fuzzy
msgid "You are not a member of any groups."
msgstr "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: lib/command.php:755
+#: lib/command.php:824
msgid "You are a member of this group:"
msgid_plural "You are a member of these groups:"
msgstr[0] "無法連çµåˆ°ä¼ºæœå™¨:%s"
-#: lib/command.php:769
+#: lib/command.php:838
msgid ""
"Commands:\n"
"on - turn on notifications\n"
@@ -5317,20 +5831,20 @@ msgid ""
"tracking - not yet implemented.\n"
msgstr ""
-#: lib/common.php:148
+#: lib/common.php:135
#, fuzzy
msgid "No configuration file found. "
msgstr "無確èªç¢¼"
-#: lib/common.php:149
+#: lib/common.php:136
msgid "I looked for configuration files in the following places: "
msgstr ""
-#: lib/common.php:151
+#: lib/common.php:138
msgid "You may wish to run the installer to fix this."
msgstr ""
-#: lib/common.php:152
+#: lib/common.php:139
msgid "Go to the installer."
msgstr ""
@@ -5506,29 +6020,30 @@ msgstr ""
msgid "Tags in %s group's notices"
msgstr ""
-#: lib/htmloutputter.php:103
+#. TRANS: Client exception 406
+#: lib/htmloutputter.php:104
msgid "This page is not available in a media type you accept"
msgstr ""
-#: lib/imagefile.php:75
+#: lib/imagefile.php:72
+msgid "Unsupported image file format."
+msgstr ""
+
+#: lib/imagefile.php:88
#, php-format
msgid "That file is too big. The maximum file size is %s."
msgstr ""
-#: lib/imagefile.php:80
+#: lib/imagefile.php:93
msgid "Partial upload."
msgstr ""
-#: lib/imagefile.php:88 lib/mediafile.php:170
+#: lib/imagefile.php:101 lib/mediafile.php:170
msgid "System error uploading file."
msgstr ""
-#: lib/imagefile.php:96
-msgid "Not an image or corrupt file."
-msgstr ""
-
#: lib/imagefile.php:109
-msgid "Unsupported image file format."
+msgid "Not an image or corrupt file."
msgstr ""
#: lib/imagefile.php:122
@@ -5536,24 +6051,24 @@ msgstr ""
msgid "Lost our file."
msgstr "無此通知"
-#: lib/imagefile.php:166 lib/imagefile.php:231
+#: lib/imagefile.php:163 lib/imagefile.php:224
msgid "Unknown file type"
msgstr ""
-#: lib/imagefile.php:251
+#: lib/imagefile.php:244
msgid "MB"
msgstr ""
-#: lib/imagefile.php:253
+#: lib/imagefile.php:246
msgid "kB"
msgstr ""
-#: lib/jabber.php:220
+#: lib/jabber.php:387
#, php-format
msgid "[%s]"
msgstr ""
-#: lib/jabber.php:400
+#: lib/jabber.php:567
#, php-format
msgid "Unknown inbox source %d."
msgstr ""
@@ -5577,11 +6092,13 @@ msgstr "使用者å稱或密碼無效"
msgid "Sign up for a new account"
msgstr "新增帳號"
-#: lib/mail.php:173
+#. TRANS: Subject for address confirmation email
+#: lib/mail.php:174
msgid "Email address confirmation"
msgstr "確èªä¿¡ç®±"
-#: lib/mail.php:175
+#. TRANS: Body for address confirmation email.
+#: lib/mail.php:177
#, php-format
msgid ""
"Hey, %s.\n"
@@ -5598,12 +6115,21 @@ msgid ""
"%s\n"
msgstr ""
-#: lib/mail.php:240
+#. TRANS: Subject of new-subscriber notification e-mail
+#: lib/mail.php:243
#, php-format
msgid "%1$s is now listening to your notices on %2$s."
msgstr "ç¾åœ¨%1$s在%2$sæˆç‚ºä½ çš„粉絲囉"
-#: lib/mail.php:245
+#: lib/mail.php:248
+#, php-format
+msgid ""
+"If you believe this account is being used abusively, you can block them from "
+"your subscribers list and report as spam to site administrators at %s"
+msgstr ""
+
+#. TRANS: Main body of new-subscriber notification e-mail
+#: lib/mail.php:254
#, fuzzy, php-format
msgid ""
"%1$s is now listening to your notices on %2$s.\n"
@@ -5625,17 +6151,20 @@ msgstr ""
"%4$s.\n"
"敬上。\n"
-#: lib/mail.php:262
+#. TRANS: Profile info line in new-subscriber notification e-mail
+#: lib/mail.php:274
#, fuzzy, php-format
msgid "Bio: %s"
msgstr "自我介紹"
-#: lib/mail.php:290
+#. TRANS: Subject of notification mail for new posting email address
+#: lib/mail.php:304
#, php-format
msgid "New email address for posting to %s"
msgstr ""
-#: lib/mail.php:293
+#. TRANS: Body of notification mail for new posting email address
+#: lib/mail.php:308
#, php-format
msgid ""
"You have a new posting address on %1$s.\n"
@@ -5648,21 +6177,31 @@ msgid ""
"%4$s"
msgstr ""
-#: lib/mail.php:417
+#. TRANS: Subject line for SMS-by-email notification messages
+#: lib/mail.php:433
#, php-format
msgid "%s status"
msgstr ""
-#: lib/mail.php:443
+#. TRANS: Subject line for SMS-by-email address confirmation message
+#: lib/mail.php:460
msgid "SMS confirmation"
msgstr ""
-#: lib/mail.php:467
+#. TRANS: Main body heading for SMS-by-email address confirmation message
+#: lib/mail.php:463
+#, php-format
+msgid "%s: confirm you own this phone number with this code:"
+msgstr ""
+
+#. TRANS: Subject for 'nudge' notification email
+#: lib/mail.php:484
#, php-format
msgid "You've been nudged by %s"
msgstr ""
-#: lib/mail.php:471
+#. TRANS: Body for 'nudge' notification email
+#: lib/mail.php:489
#, php-format
msgid ""
"%1$s (%2$s) is wondering what you are up to these days and is inviting you "
@@ -5678,12 +6217,14 @@ msgid ""
"%4$s\n"
msgstr ""
-#: lib/mail.php:517
+#. TRANS: Subject for direct-message notification email
+#: lib/mail.php:536
#, php-format
msgid "New private message from %s"
msgstr ""
-#: lib/mail.php:521
+#. TRANS: Body for direct-message notification email
+#: lib/mail.php:541
#, php-format
msgid ""
"%1$s (%2$s) sent you a private message:\n"
@@ -5702,12 +6243,14 @@ msgid ""
"%5$s\n"
msgstr ""
-#: lib/mail.php:568
+#. TRANS: Subject for favorite notification email
+#: lib/mail.php:589
#, fuzzy, php-format
msgid "%s (@%s) added your notice as a favorite"
msgstr "ç¾åœ¨%1$s在%2$sæˆç‚ºä½ çš„粉絲囉"
-#: lib/mail.php:570
+#. TRANS: Body for favorite notification email
+#: lib/mail.php:592
#, php-format
msgid ""
"%1$s (@%7$s) just added your notice from %2$s as one of their favorites.\n"
@@ -5728,12 +6271,22 @@ msgid ""
"%6$s\n"
msgstr ""
-#: lib/mail.php:635
+#. TRANS: Line in @-reply notification e-mail. %s is conversation URL.
+#: lib/mail.php:651
+#, php-format
+msgid ""
+"The full conversation can be read here:\n"
+"\n"
+"\t%s"
+msgstr ""
+
+#: lib/mail.php:657
#, php-format
msgid "%s (@%s) sent a notice to your attention"
msgstr ""
-#: lib/mail.php:637
+#. TRANS: Body of @-reply notification e-mail.
+#: lib/mail.php:660
#, php-format
msgid ""
"%1$s (@%9$s) just sent a notice to your attention (an '@-reply') on %2$s.\n"
@@ -5746,6 +6299,18 @@ msgid ""
"\n"
"\t%4$s\n"
"\n"
+"%5$sYou can reply back here:\n"
+"\n"
+"\t%6$s\n"
+"\n"
+"The list of all @-replies for you here:\n"
+"\n"
+"%7$s\n"
+"\n"
+"Faithfully yours,\n"
+"%2$s\n"
+"\n"
+"P.S. You can turn off these email notifications here: %8$s\n"
msgstr ""
#: lib/mailbox.php:89
@@ -5758,7 +6323,7 @@ msgid ""
"users in conversation. People can send you messages for your eyes only."
msgstr ""
-#: lib/mailbox.php:227 lib/noticelist.php:482
+#: lib/mailbox.php:227 lib/noticelist.php:505
msgid "from"
msgstr ""
@@ -5813,25 +6378,25 @@ msgstr ""
msgid "File upload stopped by extension."
msgstr ""
-#: lib/mediafile.php:179 lib/mediafile.php:216
+#: lib/mediafile.php:179 lib/mediafile.php:217
msgid "File exceeds user's quota."
msgstr ""
-#: lib/mediafile.php:196 lib/mediafile.php:233
+#: lib/mediafile.php:197 lib/mediafile.php:234
msgid "File could not be moved to destination directory."
msgstr ""
-#: lib/mediafile.php:201 lib/mediafile.php:237
+#: lib/mediafile.php:202 lib/mediafile.php:238
#, fuzzy
msgid "Could not determine file's MIME type."
msgstr "無法更新使用者"
-#: lib/mediafile.php:270
+#: lib/mediafile.php:318
#, php-format
msgid " Try using another %s format."
msgstr ""
-#: lib/mediafile.php:275
+#: lib/mediafile.php:323
#, php-format
msgid "%s is not a supported file type on this server."
msgstr ""
@@ -5888,50 +6453,54 @@ msgid ""
"try again later"
msgstr ""
-#: lib/noticelist.php:429
-#, php-format
-msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
-msgstr ""
-
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of north
+#: lib/noticelist.php:436
msgid "N"
msgstr ""
-#: lib/noticelist.php:430
+#. TRANS: Used in coordinates as abbreviation of south
+#: lib/noticelist.php:438
msgid "S"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of east
+#: lib/noticelist.php:440
msgid "E"
msgstr ""
-#: lib/noticelist.php:431
+#. TRANS: Used in coordinates as abbreviation of west
+#: lib/noticelist.php:442
msgid "W"
msgstr ""
-#: lib/noticelist.php:438
+#: lib/noticelist.php:444
+#, php-format
+msgid "%1$u°%2$u'%3$u\"%4$s %5$u°%6$u'%7$u\"%8$s"
+msgstr ""
+
+#: lib/noticelist.php:453
msgid "at"
msgstr ""
-#: lib/noticelist.php:566
+#: lib/noticelist.php:567
#, fuzzy
msgid "in context"
msgstr "無內容"
-#: lib/noticelist.php:601
+#: lib/noticelist.php:602
#, fuzzy
msgid "Repeated by"
msgstr "新增"
-#: lib/noticelist.php:628
+#: lib/noticelist.php:629
msgid "Reply to this notice"
msgstr ""
-#: lib/noticelist.php:629
+#: lib/noticelist.php:630
msgid "Reply"
msgstr ""
-#: lib/noticelist.php:673
+#: lib/noticelist.php:674
#, fuzzy
msgid "Notice repeated"
msgstr "更新個人圖åƒ"
@@ -5956,6 +6525,10 @@ msgstr "新的更人資料輸入錯誤"
msgid "Error inserting avatar"
msgstr "個人圖åƒæ’入錯誤"
+#: lib/oauthstore.php:306
+msgid "Error updating remote profile"
+msgstr "æ›´æ–°é ç«¯å€‹äººè³‡æ–™ç™¼ç”ŸéŒ¯èª¤"
+
#: lib/oauthstore.php:311
msgid "Error inserting remote profile"
msgstr "新增外部個人資料發生錯誤(Error inserting remote profile)"
@@ -6002,11 +6575,11 @@ msgstr ""
msgid "Tags in %s's notices"
msgstr ""
-#: lib/plugin.php:114
+#: lib/plugin.php:115
msgid "Unknown"
msgstr ""
-#: lib/profileaction.php:109 lib/profileaction.php:194 lib/subgroupnav.php:82
+#: lib/profileaction.php:109 lib/profileaction.php:205 lib/subgroupnav.php:82
msgid "Subscriptions"
msgstr ""
@@ -6014,33 +6587,33 @@ msgstr ""
msgid "All subscriptions"
msgstr "所有訂閱"
-#: lib/profileaction.php:142 lib/profileaction.php:203 lib/subgroupnav.php:90
+#: lib/profileaction.php:144 lib/profileaction.php:214 lib/subgroupnav.php:90
msgid "Subscribers"
msgstr ""
-#: lib/profileaction.php:159
+#: lib/profileaction.php:161
#, fuzzy
msgid "All subscribers"
msgstr "所有訂閱"
-#: lib/profileaction.php:180
+#: lib/profileaction.php:191
msgid "User ID"
msgstr ""
-#: lib/profileaction.php:185
+#: lib/profileaction.php:196
msgid "Member since"
msgstr "何時加入會員的呢?"
-#: lib/profileaction.php:247
+#. TRANS: Average count of posts made per day since account registration
+#: lib/profileaction.php:235
+msgid "Daily average"
+msgstr ""
+
+#: lib/profileaction.php:264
msgid "All groups"
msgstr ""
#: lib/profileformaction.php:123
-#, fuzzy
-msgid "No return-to arguments."
-msgstr "無此文件"
-
-#: lib/profileformaction.php:137
msgid "Unimplemented method."
msgstr ""
@@ -6064,12 +6637,21 @@ msgstr ""
msgid "Popular"
msgstr ""
+#: lib/redirectingaction.php:95
+#, fuzzy
+msgid "No return-to arguments."
+msgstr "無此文件"
+
#: lib/repeatform.php:107
#, fuzzy
msgid "Repeat this notice?"
msgstr "無此通知"
#: lib/repeatform.php:132
+msgid "Yes"
+msgstr ""
+
+#: lib/repeatform.php:132
#, fuzzy
msgid "Repeat this notice"
msgstr "無此通知"
@@ -6079,7 +6661,7 @@ msgstr "無此通知"
msgid "Revoke the \"%s\" role from this user"
msgstr "無此使用者"
-#: lib/router.php:671
+#: lib/router.php:709
msgid "No single user defined for single-user mode."
msgstr ""
@@ -6180,6 +6762,50 @@ msgstr ""
msgid "None"
msgstr ""
+#: lib/themeuploader.php:50
+msgid "This server cannot handle theme uploads without ZIP support."
+msgstr ""
+
+#: lib/themeuploader.php:58 lib/themeuploader.php:61
+msgid "The theme file is missing or the upload failed."
+msgstr ""
+
+#: lib/themeuploader.php:91 lib/themeuploader.php:102
+#: lib/themeuploader.php:253 lib/themeuploader.php:257
+#: lib/themeuploader.php:265 lib/themeuploader.php:272
+#, fuzzy
+msgid "Failed saving theme."
+msgstr "無法上傳個人圖åƒ"
+
+#: lib/themeuploader.php:139
+msgid "Invalid theme: bad directory structure."
+msgstr ""
+
+#: lib/themeuploader.php:166
+#, php-format
+msgid "Uploaded theme is too large; must be less than %d bytes uncompressed."
+msgstr ""
+
+#: lib/themeuploader.php:178
+msgid "Invalid theme archive: missing file css/display.css"
+msgstr ""
+
+#: lib/themeuploader.php:205
+msgid ""
+"Theme contains invalid file or folder name. Stick with ASCII letters, "
+"digits, underscore, and minus sign."
+msgstr ""
+
+#: lib/themeuploader.php:216
+#, php-format
+msgid "Theme contains file of type '.%s', which is not allowed."
+msgstr ""
+
+#: lib/themeuploader.php:234
+#, fuzzy
+msgid "Error opening theme archive."
+msgstr "æ›´æ–°é ç«¯å€‹äººè³‡æ–™ç™¼ç”ŸéŒ¯èª¤"
+
#: lib/topposterssection.php:74
msgid "Top posters"
msgstr ""
@@ -6210,92 +6836,111 @@ msgstr ""
msgid "Unsubscribe"
msgstr ""
-#: lib/userprofile.php:116
+#: lib/usernoprofileexception.php:58
+#, php-format
+msgid "User %s (%d) has no profile record."
+msgstr ""
+
+#: lib/userprofile.php:117
#, fuzzy
msgid "Edit Avatar"
msgstr "個人圖åƒ"
-#: lib/userprofile.php:236
+#: lib/userprofile.php:234 lib/userprofile.php:248
msgid "User actions"
msgstr ""
-#: lib/userprofile.php:251
+#: lib/userprofile.php:237
+msgid "User deletion in progress..."
+msgstr ""
+
+#: lib/userprofile.php:263
#, fuzzy
msgid "Edit profile settings"
msgstr "線上å³æ™‚通設定"
-#: lib/userprofile.php:252
+#: lib/userprofile.php:264
msgid "Edit"
msgstr ""
-#: lib/userprofile.php:275
+#: lib/userprofile.php:287
msgid "Send a direct message to this user"
msgstr ""
-#: lib/userprofile.php:276
+#: lib/userprofile.php:288
msgid "Message"
msgstr ""
-#: lib/userprofile.php:314
+#: lib/userprofile.php:326
msgid "Moderate"
msgstr ""
-#: lib/userprofile.php:352
+#: lib/userprofile.php:364
#, fuzzy
msgid "User role"
msgstr "無此通知"
-#: lib/userprofile.php:354
+#: lib/userprofile.php:366
msgctxt "role"
msgid "Administrator"
msgstr ""
-#: lib/userprofile.php:355
+#: lib/userprofile.php:367
msgctxt "role"
msgid "Moderator"
msgstr ""
-#: lib/util.php:1015
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1100
msgid "a few seconds ago"
msgstr ""
-#: lib/util.php:1017
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1103
msgid "about a minute ago"
msgstr ""
-#: lib/util.php:1019
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1107
#, php-format
msgid "about %d minutes ago"
msgstr ""
-#: lib/util.php:1021
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1110
msgid "about an hour ago"
msgstr ""
-#: lib/util.php:1023
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1114
#, php-format
msgid "about %d hours ago"
msgstr ""
-#: lib/util.php:1025
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1117
msgid "about a day ago"
msgstr ""
-#: lib/util.php:1027
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1121
#, php-format
msgid "about %d days ago"
msgstr ""
-#: lib/util.php:1029
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1124
msgid "about a month ago"
msgstr ""
-#: lib/util.php:1031
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1128
#, php-format
msgid "about %d months ago"
msgstr ""
-#: lib/util.php:1033
+#. TRANS: Used in notices to indicate when the notice was made compared to now.
+#: lib/util.php:1131
msgid "about a year ago"
msgstr ""
@@ -6309,7 +6954,7 @@ msgstr "個人首é ä½å€éŒ¯èª¤"
msgid "%s is not a valid color! Use 3 or 6 hex chars."
msgstr ""
-#: lib/xmppmanager.php:402
+#: lib/xmppmanager.php:403
#, php-format
msgid "Message too long - maximum is %1$d characters, you sent %2$d."
msgstr ""
diff --git a/plugins/Adsense/AdsensePlugin.php b/plugins/Adsense/AdsensePlugin.php
index ab2b9a6fb..cd6fc3503 100644
--- a/plugins/Adsense/AdsensePlugin.php
+++ b/plugins/Adsense/AdsensePlugin.php
@@ -83,6 +83,21 @@ class AdsensePlugin extends UAPPlugin
public $adScript = 'http://pagead2.googlesyndication.com/pagead/show_ads.js';
public $client = null;
+ function initialize()
+ {
+ parent::initialize();
+
+ // A little bit of chicanery so we avoid overwriting values that
+ // are passed in with the constructor
+
+ foreach (array('mediumRectangle', 'rectangle', 'leaderboard', 'wideSkyscraper', 'adScript', 'client') as $setting) {
+ $value = common_config('adsense', strtolower($setting));
+ if (!empty($value)) { // not found
+ $this->$setting = $value;
+ }
+ }
+ }
+
/**
* Show a medium rectangle 'ad'
*
@@ -157,4 +172,37 @@ class AdsensePlugin extends UAPPlugin
$action->script($this->adScript);
}
+
+ function onRouterInitialized($m)
+ {
+ $m->connect('admin/adsense',
+ array('action' => 'adsenseadminpanel'));
+
+ return true;
+ }
+
+ function onAutoload($cls)
+ {
+ $dir = dirname(__FILE__);
+
+ switch ($cls)
+ {
+ case 'AdsenseadminpanelAction':
+ require_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php';
+ return false;
+ default:
+ return true;
+ }
+ }
+
+ function onEndAdminPanelNav($menu) {
+ if (AdminPanelAction::canAdmin('adsense')) {
+ // TRANS: Menu item title/tooltip
+ $menu_title = _('Adsense configuration');
+ // TRANS: Menu item for site administration
+ $menu->out->menuItem(common_local_url('adsenseadminpanel'), _('Adsense'),
+ $menu_title, $action_name == 'adsenseadminpanel', 'nav_adsense_admin_panel');
+ }
+ return true;
+ }
} \ No newline at end of file
diff --git a/plugins/Adsense/adsenseadminpanel.php b/plugins/Adsense/adsenseadminpanel.php
new file mode 100644
index 000000000..7b99cf805
--- /dev/null
+++ b/plugins/Adsense/adsenseadminpanel.php
@@ -0,0 +1,223 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Adsense administration panel
+ *
+ * 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 Adsense
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * Administer adsense settings
+ *
+ * @category Adsense
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class AdsenseadminpanelAction extends AdminPanelAction
+{
+ /**
+ * Returns the page title
+ *
+ * @return string page title
+ */
+
+ function title()
+ {
+ return _('Adsense');
+ }
+
+ /**
+ * Instructions for using this form.
+ *
+ * @return string instructions
+ */
+
+ function getInstructions()
+ {
+ return _('Adsense settings for this StatusNet site');
+ }
+
+ /**
+ * Show the site admin panel form
+ *
+ * @return void
+ */
+
+ function showForm()
+ {
+ $form = new AdsenseAdminPanelForm($this);
+ $form->show();
+ return;
+ }
+
+ /**
+ * Save settings from the form
+ *
+ * @return void
+ */
+
+ function saveSettings()
+ {
+ static $settings = array('adsense' => array('adScript', 'client', 'mediumRectangle', 'rectangle', 'leaderboard', 'wideSkyscraper'));
+
+ $values = array();
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ $values[$section][$setting] = $this->trimmed($setting);
+ }
+ }
+
+ // This throws an exception on validation errors
+
+ $this->validate($values);
+
+ // assert(all values are valid);
+
+ $config = new Config();
+
+ $config->query('BEGIN');
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ Config::save($section, $setting, $values[$section][$setting]);
+ }
+ }
+
+ $config->query('COMMIT');
+
+ return;
+ }
+
+ function validate(&$values)
+ {
+ }
+}
+
+/**
+ * Form for the adsense admin panel
+ */
+
+class AdsenseAdminPanelForm extends AdminForm
+{
+ /**
+ * ID of the form
+ *
+ * @return int ID of the form
+ */
+
+ function id()
+ {
+ return 'form_adsense_admin_panel';
+ }
+
+ /**
+ * class of the form
+ *
+ * @return string class of the form
+ */
+
+ function formClass()
+ {
+ return 'form_adsense';
+ }
+
+ /**
+ * Action of the form
+ *
+ * @return string URL of the action
+ */
+
+ function action()
+ {
+ return common_local_url('adsenseadminpanel');
+ }
+
+ /**
+ * Data elements of the form
+ *
+ * @return void
+ */
+
+ function formData()
+ {
+ $this->out->elementStart('fieldset', array('id' => 'adsense_admin'));
+ $this->out->elementStart('ul', 'form_data');
+ $this->li();
+ $this->input('client',
+ _('Client ID'),
+ _('Google client ID'),
+ 'adsense');
+ $this->unli();
+ $this->li();
+ $this->input('adScript',
+ _('Ad Script URL'),
+ _('Script URL (advanced)'),
+ 'adsense');
+ $this->unli();
+ $this->li();
+ $this->input('mediumRectangle',
+ _('Medium rectangle'),
+ _('Medium rectangle slot code'),
+ 'adsense');
+ $this->unli();
+ $this->li();
+ $this->input('rectangle',
+ _('Rectangle'),
+ _('Rectangle slot code'),
+ 'adsense');
+ $this->unli();
+ $this->li();
+ $this->input('leaderboard',
+ _('Leaderboard'),
+ _('Leaderboard slot code'),
+ 'adsense');
+ $this->unli();
+ $this->li();
+ $this->input('wideSkyscraper',
+ _('Skyscraper'),
+ _('Wide skyscraper slot code'),
+ 'adsense');
+ $this->unli();
+ $this->out->elementEnd('ul');
+ }
+
+ /**
+ * Action elements
+ *
+ * @return void
+ */
+
+ function formActions()
+ {
+ $this->out->submit('submit', _('Save'), 'submit', null, _('Save AdSense settings'));
+ }
+}
diff --git a/plugins/AutoSandbox/AutoSandboxPlugin.php b/plugins/AutoSandbox/AutoSandboxPlugin.php
new file mode 100644
index 000000000..ffd8bf455
--- /dev/null
+++ b/plugins/AutoSandbox/AutoSandboxPlugin.php
@@ -0,0 +1,96 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Plugin to automatically sandbox newly registered users in an effort to beat
+ * spammers. If the user proves to be legitimate, moderators can un-sandbox them.
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Sean Carmody<seancarmody@gmail.com>
+ * @copyright 2010
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) {
+ exit(1);
+}
+
+define('AUTOSANDBOX', '0.1');
+
+//require_once(INSTALLDIR.'/plugins/AutoSandbox/autosandbox.php');
+
+class AutoSandboxPlugin extends Plugin
+{
+ var $contact;
+ var $debug;
+
+ function onInitializePlugin()
+ {
+ if(!isset($this->debug))
+ {
+ $this->debug = 0;
+ }
+
+ if(!isset($this->contact)) {
+ $default = common_config('newuser', 'default');
+ if (!empty($default)) {
+ $this->contact = $default;
+ }
+ }
+ }
+
+ function onPluginVersion(&$versions)
+ {
+ $versions[] = array('name' => 'AutoSandbox',
+ 'version' => STATUSNET_VERSION,
+ 'author' => 'Sean Carmody',
+ 'homepage' => 'http://status.net/wiki/Plugin:AutoSandbox',
+ 'rawdescription' =>
+ _m('Automatically sandboxes newly registered members.'));
+ return true;
+ }
+
+ function onStartRegistrationFormData($action)
+ {
+
+ $instr = 'Note you will initially be "sandboxed" so your posts will not appear in the public timeline.';
+
+ if (isset($this->contact)) {
+ $contactuser = User::staticGet('nickname', $this->contact);
+ if (!empty($contactuser)) {
+ $contactlink = "@<a href=\"$contactuser->uri\">$contactuser->nickname</a>";
+ $instr = $instr . " Send a message to $contactlink to speed up the unsandboxing process.";
+ }
+ }
+
+ $output = common_markup_to_html($instr);
+ $action->elementStart('div', 'instructions');
+ $action->raw($output);
+ $action->elementEnd('div');
+ }
+
+ function onEndUserRegister(&$profile,&$user)
+ {
+ $profile->sandbox();
+ if ($this->debug) {
+ common_log(LOG_WARNING, "AutoSandbox: sandboxed of $user->nickname");
+ }
+ }
+}
diff --git a/plugins/AutoSandbox/LICENSE b/plugins/AutoSandbox/LICENSE
new file mode 100644
index 000000000..011faa4e7
--- /dev/null
+++ b/plugins/AutoSandbox/LICENSE
@@ -0,0 +1,21 @@
+Copyright (c) 2010 Stubborn Mule - http://www.stubbornmule.net
+AUTHORS:
+ Sean Carmody
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
diff --git a/plugins/AutoSandbox/README b/plugins/AutoSandbox/README
new file mode 100644
index 000000000..2f5d625f7
--- /dev/null
+++ b/plugins/AutoSandbox/README
@@ -0,0 +1,39 @@
+StatusNet AutoSandbox plugin 0.1 03/16/10
+=========================================
+Automatically sandboxes newly registered users as a spam-management technique.
+Only really suits small sites where all users can be hand-moderated. A moderator
+will then have to unbox legimate users, using the following built-in script:
+
+./scripts/userrole.php -n username -r moderator
+
+(replace 'username' with the nickname of the user you wish to make a moderator).
+
+The following note will be added to the top of the Registration form:
+
+"Note you will initially be "sandboxed" so your posts will not appear in the
+public timeline."
+
+This can be followed by the following extra information if a contact user (denoted
+here by XXX) is specified:
+
+"Send a message to @XXX to speed up the unsandboxing process."
+
+If no contact user is specified, it will default to the "Default subscription" user
+who automatically subscribes to new users (set in Admin -> User).
+
+Use:
+1. Add plugin:
+
+Default usage:
+addPlugin('AutoSandbox');
+
+Specify a contact user (replace 'someuser' with appropriate username):
+addPlugin('AutoSandbox', array('contact' => 'someuser'));
+
+Stop contact user from defaulting to the Defaul subscription:
+addPlugin('AutoSandbox', array('contact' => ''));
+
+Changelog
+=========
+0.1 initial release
+
diff --git a/plugins/AutoSandbox/locale/AutoSandbox.pot b/plugins/AutoSandbox/locale/AutoSandbox.pot
new file mode 100644
index 000000000..b01f9dc89
--- /dev/null
+++ b/plugins/AutoSandbox/locale/AutoSandbox.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: AutoSandboxPlugin.php:66
+msgid "Automatically sandboxes newly registered members."
+msgstr ""
diff --git a/plugins/Autocomplete/AutocompletePlugin.php b/plugins/Autocomplete/AutocompletePlugin.php
index d586631a4..b2be365dd 100644
--- a/plugins/Autocomplete/AutocompletePlugin.php
+++ b/plugins/Autocomplete/AutocompletePlugin.php
@@ -22,7 +22,8 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2010 Free Software Foundation http://fsf.org
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -31,8 +32,6 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
-require_once(INSTALLDIR.'/plugins/Autocomplete/autocomplete.php');
-
class AutocompletePlugin extends Plugin
{
function __construct()
@@ -40,6 +39,16 @@ class AutocompletePlugin extends Plugin
parent::__construct();
}
+ function onAutoload($cls)
+ {
+ switch ($cls)
+ {
+ case 'AutocompleteAction':
+ require_once(INSTALLDIR.'/plugins/Autocomplete/autocomplete.php');
+ return false;
+ }
+ }
+
function onEndShowScripts($action){
if (common_logged_in()) {
$action->script('plugins/Autocomplete/jquery-autocomplete/jquery.autocomplete.pack.js');
diff --git a/plugins/Autocomplete/autocomplete.php b/plugins/Autocomplete/autocomplete.php
index 379390ffd..9a30ba01d 100644
--- a/plugins/Autocomplete/autocomplete.php
+++ b/plugins/Autocomplete/autocomplete.php
@@ -23,6 +23,7 @@
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
* @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Autocomplete/locale/Autocomplete.pot b/plugins/Autocomplete/locale/Autocomplete.pot
new file mode 100644
index 000000000..c0274af85
--- /dev/null
+++ b/plugins/Autocomplete/locale/Autocomplete.pot
@@ -0,0 +1,24 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: AutocompletePlugin.php:79
+msgid ""
+"The autocomplete plugin allows users to autocomplete screen names in @ "
+"replies. When an \"@\" is typed into the notice text area, an autocomplete "
+"box is displayed populated with the user's friend' screen names."
+msgstr ""
diff --git a/plugins/BitlyUrl/BitlyUrlPlugin.php b/plugins/BitlyUrl/BitlyUrlPlugin.php
index f7f28b4d6..11e3c0b84 100644
--- a/plugins/BitlyUrl/BitlyUrlPlugin.php
+++ b/plugins/BitlyUrl/BitlyUrlPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/BitlyUrl/locale/BitlyUrl.pot b/plugins/BitlyUrl/locale/BitlyUrl.pot
new file mode 100644
index 000000000..28023759a
--- /dev/null
+++ b/plugins/BitlyUrl/locale/BitlyUrl.pot
@@ -0,0 +1,22 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: BitlyUrlPlugin.php:60
+#, php-format
+msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."
+msgstr ""
diff --git a/plugins/Blacklist/BlacklistPlugin.php b/plugins/Blacklist/BlacklistPlugin.php
index fb8f7306f..63bffe2c6 100644
--- a/plugins/Blacklist/BlacklistPlugin.php
+++ b/plugins/Blacklist/BlacklistPlugin.php
@@ -49,26 +49,63 @@ class BlacklistPlugin extends Plugin
public $urls = array();
public $canAdmin = true;
- private $_nicknamePatterns = array();
- private $_urlPatterns = array();
+ function _getNicknamePatterns()
+ {
+ $confNicknames = $this->_configArray('blacklist', 'nicknames');
+
+ $dbNicknames = Nickname_blacklist::getPatterns();
+
+ return array_merge($this->nicknames,
+ $confNicknames,
+ $dbNicknames);
+ }
+
+ function _getUrlPatterns()
+ {
+ $confURLs = $this->_configArray('blacklist', 'urls');
+
+ $dbURLs = Homepage_blacklist::getPatterns();
+
+ return array_merge($this->urls,
+ $confURLs,
+ $dbURLs);
+ }
/**
- * Initialize the plugin
+ * Database schema setup
*
- * @return void
+ * @return boolean hook value
*/
- function initialize()
+ function onCheckSchema()
{
- $confNicknames = $this->_configArray('blacklist', 'nicknames');
-
- $this->_nicknamePatterns = array_merge($this->nicknames,
- $confNicknames);
-
- $confURLs = $this->_configArray('blacklist', 'urls');
+ $schema = Schema::get();
+
+ // For storing blacklist patterns for nicknames
+
+ $schema->ensureTable('nickname_blacklist',
+ array(new ColumnDef('pattern',
+ 'varchar',
+ 255,
+ false,
+ 'PRI'),
+ new ColumnDef('created',
+ 'datetime',
+ null,
+ false)));
+
+ $schema->ensureTable('homepage_blacklist',
+ array(new ColumnDef('pattern',
+ 'varchar',
+ 255,
+ false,
+ 'PRI'),
+ new ColumnDef('created',
+ 'datetime',
+ null,
+ false)));
- $this->_urlPatterns = array_merge($this->urls,
- $confURLs);
+ return true;
}
/**
@@ -222,9 +259,10 @@ class BlacklistPlugin extends Plugin
private function _checkUrl($url)
{
- foreach ($this->_urlPatterns as $pattern) {
- common_debug("Checking $url against $pattern");
- if (preg_match("/$pattern/", $url)) {
+ $patterns = $this->_getUrlPatterns();
+
+ foreach ($patterns as $pattern) {
+ if ($pattern != '' && preg_match("/$pattern/", $url)) {
return false;
}
}
@@ -244,9 +282,10 @@ class BlacklistPlugin extends Plugin
private function _checkNickname($nickname)
{
- foreach ($this->_nicknamePatterns as $pattern) {
- common_debug("Checking $nickname against $pattern");
- if (preg_match("/$pattern/", $nickname)) {
+ $patterns = $this->_getNicknamePatterns();
+
+ foreach ($patterns as $pattern) {
+ if ($pattern != '' && preg_match("/$pattern/", $nickname)) {
return false;
}
}
@@ -280,6 +319,10 @@ class BlacklistPlugin extends Plugin
{
switch (strtolower($cls))
{
+ case 'nickname_blacklist':
+ case 'homepage_blacklist':
+ include_once INSTALLDIR.'/plugins/Blacklist/'.ucfirst($cls).'.php';
+ return false;
case 'blacklistadminpanelaction':
$base = strtolower(mb_substr($cls, 0, -6));
include_once INSTALLDIR.'/plugins/Blacklist/'.$base.'.php';
@@ -391,20 +434,14 @@ class BlacklistPlugin extends Plugin
function onEndDeleteUser($action, $user)
{
- common_debug("Action args: " . print_r($action->args, true));
-
if ($action->boolean('blacklisthomepage')) {
$pattern = $action->trimmed('blacklisthomepagepattern');
- $confURLs = $this->_configArray('blacklist', 'urls');
- $confURLs[] = $pattern;
- Config::save('blacklist', 'urls', implode("\r\n", $confURLs));
+ Homepage_blacklist::ensurePattern($pattern);
}
if ($action->boolean('blacklistnickname')) {
$pattern = $action->trimmed('blacklistnicknamepattern');
- $confNicknames = $this->_configArray('blacklist', 'nicknames');
- $confNicknames[] = $pattern;
- Config::save('blacklist', 'nicknames', implode("\r\n", $confNicknames));
+ Nickname_blacklist::ensurePattern($pattern);
}
return true;
diff --git a/plugins/Blacklist/Homepage_blacklist.php b/plugins/Blacklist/Homepage_blacklist.php
new file mode 100644
index 000000000..ec89ee4bd
--- /dev/null
+++ b/plugins/Blacklist/Homepage_blacklist.php
@@ -0,0 +1,189 @@
+<?php
+/**
+ * Data class for homepage blacklisting
+ *
+ * PHP version 5
+ *
+ * @category Data
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2009, StatusNet, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
+
+/**
+ * Data class for Homepage blacklist
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * @see DB_DataObject
+ */
+
+class Homepage_blacklist extends Memcached_DataObject
+{
+ public $__table = 'homepage_blacklist'; // table name
+ public $pattern; // string pattern
+ public $created; // datetime
+
+ /**
+ * Get an instance by key
+ *
+ * This is a utility method to get a single instance with a given key value.
+ *
+ * @param string $k Key to use to lookup (usually 'user_id' for this class)
+ * @param mixed $v Value to lookup
+ *
+ * @return Homepage_blacklist object found, or null for no hits
+ *
+ */
+
+ function staticGet($k, $v=null)
+ {
+ return Memcached_DataObject::staticGet('Homepage_blacklist', $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('pattern' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
+ 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL);
+ }
+
+ /**
+ * 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('pattern' => 'K');
+ }
+
+ /**
+ * Return a list of patterns to check
+ *
+ * @return array string patterns to check
+ */
+
+ static function getPatterns()
+ {
+ $patterns = self::cacheGet('homepage_blacklist:patterns');
+
+ if ($patterns === false) {
+
+ $patterns = array();
+
+ $nb = new Homepage_blacklist();
+
+ $nb->find();
+
+ while ($nb->fetch()) {
+ $patterns[] = $nb->pattern;
+ }
+
+ self::cacheSet('homepage_blacklist:patterns', $patterns);
+ }
+
+ return $patterns;
+ }
+
+ /**
+ * Save new list of patterns
+ *
+ * @return array of patterns to check
+ */
+
+ static function saveNew($newPatterns)
+ {
+ $oldPatterns = self::getPatterns();
+
+ // Delete stuff that's old that not in new
+
+ $toDelete = array_diff($oldPatterns, $newPatterns);
+
+ // Insert stuff that's in new and not in old
+
+ $toInsert = array_diff($newPatterns, $oldPatterns);
+
+ foreach ($toDelete as $pattern) {
+ $nb = Homepage_blacklist::staticGet('pattern', $pattern);
+ if (!empty($nb)) {
+ $nb->delete();
+ }
+ }
+
+ foreach ($toInsert as $pattern) {
+ $nb = new Homepage_blacklist();
+ $nb->pattern = $pattern;
+ $nb->created = common_sql_now();
+ $nb->insert();
+ }
+
+ self::blow('homepage_blacklist:patterns');
+ }
+
+ static function ensurePattern($pattern)
+ {
+ $hb = Homepage_blacklist::staticGet('pattern', $pattern);
+
+ if (empty($nb)) {
+ $hb = new Homepage_blacklist();
+ $hb->pattern = $pattern;
+ $hb->created = common_sql_now();
+ $hb->insert();
+ self::blow('homepage_blacklist:patterns');
+ }
+ }
+}
diff --git a/plugins/Blacklist/Nickname_blacklist.php b/plugins/Blacklist/Nickname_blacklist.php
new file mode 100644
index 000000000..e8545292d
--- /dev/null
+++ b/plugins/Blacklist/Nickname_blacklist.php
@@ -0,0 +1,180 @@
+<?php
+/**
+ * Data class for nickname blacklisting
+ *
+ * PHP version 5
+ *
+ * @category Data
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2009, StatusNet, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
+
+/**
+ * Data class for Nickname blacklist
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * @see DB_DataObject
+ */
+
+class Nickname_blacklist extends Memcached_DataObject
+{
+ public $__table = 'nickname_blacklist'; // table name
+ public $pattern; // string pattern
+ public $created; // datetime
+
+ /**
+ * Get an instance by key
+ *
+ * This is a utility method to get a single instance with a given key value.
+ *
+ * @param string $k Key to use to lookup
+ * @param mixed $v Value to lookup
+ *
+ * @return Nickname_blacklist object found, or null for no hits
+ *
+ */
+
+ function staticGet($k, $v=null)
+ {
+ return Memcached_DataObject::staticGet('Nickname_blacklist', $k, $v);
+ }
+
+ /**
+ * return table definition for DB_DataObject
+ *
+ * @return array array of column definitions
+ */
+
+ function table()
+ {
+ return array('pattern' => DB_DATAOBJECT_STR + DB_DATAOBJECT_NOTNULL,
+ 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL);
+ }
+
+ /**
+ * return key definitions for DB_DataObject
+ *
+ * @return array key definitions
+ */
+
+ function keys()
+ {
+ return array_keys($this->keyTypes());
+ }
+
+ /**
+ * return key definitions for Memcached_DataObject
+ *
+ * @return array key definitions
+ */
+
+ function keyTypes()
+ {
+ return array('pattern' => 'K');
+ }
+
+ /**
+ * Return a list of patterns to check
+ *
+ * @return array string patterns to check
+ */
+
+ static function getPatterns()
+ {
+ $patterns = self::cacheGet('nickname_blacklist:patterns');
+
+ if ($patterns === false) {
+
+ $patterns = array();
+
+ $nb = new Nickname_blacklist();
+
+ $nb->find();
+
+ while ($nb->fetch()) {
+ $patterns[] = $nb->pattern;
+ }
+
+ self::cacheSet('nickname_blacklist:patterns', $patterns);
+ }
+
+ return $patterns;
+ }
+
+ /**
+ * Save new list of patterns
+ *
+ * @return array of patterns to check
+ */
+
+ static function saveNew($newPatterns)
+ {
+ $oldPatterns = self::getPatterns();
+
+ // Delete stuff that's old that not in new
+
+ $toDelete = array_diff($oldPatterns, $newPatterns);
+
+ // Insert stuff that's in new and not in old
+
+ $toInsert = array_diff($newPatterns, $oldPatterns);
+
+ foreach ($toDelete as $pattern) {
+ $nb = Nickname_blacklist::staticGet('pattern', $pattern);
+ if (!empty($nb)) {
+ $nb->delete();
+ }
+ }
+
+ foreach ($toInsert as $pattern) {
+ $nb = new Nickname_blacklist();
+ $nb->pattern = $pattern;
+ $nb->created = common_sql_now();
+ $nb->insert();
+ }
+
+ self::blow('nickname_blacklist:patterns');
+ }
+
+ static function ensurePattern($pattern)
+ {
+ $nb = Nickname_blacklist::staticGet('pattern', $pattern);
+
+ if (empty($nb)) {
+ $nb = new Nickname_blacklist();
+ $nb->pattern = $pattern;
+ $nb->created = common_sql_now();
+ $nb->insert();
+ self::blow('nickname_blacklist:patterns');
+ }
+ }
+}
diff --git a/plugins/Blacklist/blacklistadminpanel.php b/plugins/Blacklist/blacklistadminpanel.php
index 98d07080d..4289dec1b 100644
--- a/plugins/Blacklist/blacklistadminpanel.php
+++ b/plugins/Blacklist/blacklistadminpanel.php
@@ -88,37 +88,25 @@ class BlacklistadminpanelAction extends AdminPanelAction
function saveSettings()
{
- static $settings = array(
- 'blacklist' => array('nicknames', 'urls'),
- );
+ $nickPatterns = $this->splitPatterns($this->trimmed('blacklist-nicknames'));
+ Nickname_blacklist::saveNew($nickPatterns);
- $values = array();
+ $urlPatterns = $this->splitPatterns($this->trimmed('blacklist-urls'));
+ Homepage_blacklist::saveNew($urlPatterns);
- foreach ($settings as $section => $parts) {
- foreach ($parts as $setting) {
- $values[$section][$setting] = $this->trimmed("$section-$setting");
- }
- }
-
- // This throws an exception on validation errors
-
- $this->validate($values);
-
- // assert(all values are valid);
-
- $config = new Config();
-
- $config->query('BEGIN');
+ return;
+ }
- foreach ($settings as $section => $parts) {
- foreach ($parts as $setting) {
- Config::save($section, $setting, $values[$section][$setting]);
+ protected function splitPatterns($text)
+ {
+ $patterns = array();
+ foreach (explode("\n", $text) as $raw) {
+ $trimmed = trim($raw);
+ if ($trimmed != '') {
+ $patterns[] = $trimmed;
}
}
-
- $config->query('COMMIT');
-
- return;
+ return $patterns;
}
/**
@@ -191,14 +179,19 @@ class BlacklistAdminPanelForm extends Form
$this->out->elementStart('ul', 'form_data');
$this->out->elementStart('li');
+
+ $nickPatterns = Nickname_blacklist::getPatterns();
+
$this->out->textarea('blacklist-nicknames', _m('Nicknames'),
- common_config('blacklist', 'nicknames'),
+ implode("\r\n", $nickPatterns),
_('Patterns of nicknames to block, one per line'));
$this->out->elementEnd('li');
+ $urlPatterns = Homepage_blacklist::getPatterns();
+
$this->out->elementStart('li');
$this->out->textarea('blacklist-urls', _m('URLs'),
- common_config('blacklist', 'urls'),
+ implode("\r\n", $urlPatterns),
_('Patterns of URLs to block, one per line'));
$this->out->elementEnd('li');
diff --git a/plugins/Blacklist/locale/Blacklist.pot b/plugins/Blacklist/locale/Blacklist.pot
new file mode 100644
index 000000000..90eda0941
--- /dev/null
+++ b/plugins/Blacklist/locale/Blacklist.pot
@@ -0,0 +1,54 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: BlacklistPlugin.php:153
+#, php-format
+msgid "You may not register with homepage '%s'"
+msgstr ""
+
+#: BlacklistPlugin.php:163
+#, php-format
+msgid "You may not register with nickname '%s'"
+msgstr ""
+
+#: BlacklistPlugin.php:188
+#, php-format
+msgid "You may not use homepage '%s'"
+msgstr ""
+
+#: BlacklistPlugin.php:198
+#, php-format
+msgid "You may not use nickname '%s'"
+msgstr ""
+
+#: BlacklistPlugin.php:242
+#, php-format
+msgid "You may not use url '%s' in notices"
+msgstr ""
+
+#: BlacklistPlugin.php:351
+msgid "Keep a blacklist of forbidden nickname and URL patterns."
+msgstr ""
+
+#: blacklistadminpanel.php:185
+msgid "Nicknames"
+msgstr ""
+
+#: blacklistadminpanel.php:193
+msgid "URLs"
+msgstr ""
diff --git a/plugins/CasAuthentication/CasAuthenticationPlugin.php b/plugins/CasAuthentication/CasAuthenticationPlugin.php
index 203e5fe42..1662db3eb 100644
--- a/plugins/CasAuthentication/CasAuthenticationPlugin.php
+++ b/plugins/CasAuthentication/CasAuthenticationPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/CasAuthentication/locale/CasAuthentication.pot b/plugins/CasAuthentication/locale/CasAuthentication.pot
new file mode 100644
index 000000000..20a2bf233
--- /dev/null
+++ b/plugins/CasAuthentication/locale/CasAuthentication.pot
@@ -0,0 +1,35 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: CasAuthenticationPlugin.php:82
+msgid "CAS"
+msgstr ""
+
+#: CasAuthenticationPlugin.php:83
+msgid "Login or register with CAS"
+msgstr ""
+
+#: CasAuthenticationPlugin.php:150
+msgid ""
+"The CAS Authentication plugin allows for StatusNet to handle authentication "
+"through CAS (Central Authentication Service)."
+msgstr ""
+
+#: caslogin.php:28
+msgid "Already logged in."
+msgstr ""
diff --git a/plugins/ClientSideShorten/ClientSideShortenPlugin.php b/plugins/ClientSideShorten/ClientSideShortenPlugin.php
new file mode 100644
index 000000000..57f5ad89e
--- /dev/null
+++ b/plugins/ClientSideShorten/ClientSideShortenPlugin.php
@@ -0,0 +1,79 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Plugin to enable client side url shortening in the status box
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) {
+ exit(1);
+}
+
+require_once(INSTALLDIR.'/plugins/ClientSideShorten/shorten.php');
+
+class ClientSideShortenPlugin extends Plugin
+{
+ function __construct()
+ {
+ parent::__construct();
+ }
+
+ function onAutoload($cls)
+ {
+ switch ($cls)
+ {
+ case 'ShortenAction':
+ require_once(INSTALLDIR.'/plugins/ClientSideShorten/shorten.php');
+ return false;
+ }
+ }
+
+ function onEndShowScripts($action){
+ $action->inlineScript('var Notice_maxContent = ' . Notice::maxContent());
+ if (common_logged_in()) {
+ $action->script('plugins/ClientSideShorten/shorten.js');
+ }
+ }
+
+ function onRouterInitialized($m)
+ {
+ if (common_logged_in()) {
+ $m->connect('plugins/ClientSideShorten/shorten', array('action'=>'shorten'));
+ }
+ }
+
+ function onPluginVersion(&$versions)
+ {
+ $versions[] = array('name' => 'Shorten',
+ 'version' => STATUSNET_VERSION,
+ 'author' => 'Craig Andrews',
+ 'homepage' => 'http://status.net/wiki/Plugin:ClientSideShorten',
+ 'rawdescription' =>
+ _m('ClientSideShorten causes the web interface\'s notice form to automatically shorten urls as they entered, and before the notice is submitted.'));
+ return true;
+ }
+
+}
+
diff --git a/plugins/ClientSideShorten/README b/plugins/ClientSideShorten/README
new file mode 100644
index 000000000..e6524c9c7
--- /dev/null
+++ b/plugins/ClientSideShorten/README
@@ -0,0 +1,6 @@
+ClientSideShorten causes the web interface's notice form to automatically shorten urls as they entered, and before the notice is submitted.
+
+Installation
+============
+Add "addPlugin('ClientSideShorten');" to the bottom of your config.php
+That's it!
diff --git a/plugins/ClientSideShorten/locale/ClientSideShorten.pot b/plugins/ClientSideShorten/locale/ClientSideShorten.pot
new file mode 100644
index 000000000..83caff322
--- /dev/null
+++ b/plugins/ClientSideShorten/locale/ClientSideShorten.pot
@@ -0,0 +1,27 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ClientSideShortenPlugin.php:74
+msgid ""
+"ClientSideShorten causes the web interface's notice form to automatically "
+"shorten urls as they entered, and before the notice is submitted."
+msgstr ""
+
+#: shorten.php:55
+msgid "'text' argument must be specified."
+msgstr ""
diff --git a/plugins/ClientSideShorten/shorten.js b/plugins/ClientSideShorten/shorten.js
new file mode 100644
index 000000000..856c7f05f
--- /dev/null
+++ b/plugins/ClientSideShorten/shorten.js
@@ -0,0 +1,66 @@
+//wrap everything in a self-executing anonymous function to avoid conflicts
+(function(){
+
+ // smart(x) from Paul Irish
+ // http://paulirish.com/2009/throttled-smartresize-jquery-event-handler/
+
+ (function($,sr){
+
+ // debouncing function from John Hann
+ // http://unscriptable.com/index.php/2009/03/20/debouncing-javascript-methods/
+ var debounce = function (func, threshold, execAsap) {
+ var timeout;
+
+ return function debounced () {
+ var obj = this, args = arguments;
+ function delayed () {
+ if (!execAsap)
+ func.apply(obj, args);
+ timeout = null;
+ };
+
+ if (timeout)
+ clearTimeout(timeout);
+ else if (execAsap)
+ func.apply(obj, args);
+
+ timeout = setTimeout(delayed, threshold || 100);
+ };
+ }
+ jQuery.fn[sr] = function(fn){ return fn ? this.bind('keypress', debounce(fn, 1000)) : this.trigger(sr); };
+
+ })(jQuery,'smartkeypress');
+
+ function shorten()
+ {
+ $noticeDataText = $('#'+SN.C.S.NoticeDataText);
+ if(Notice_maxContent > 0 && $noticeDataText.val().length > Notice_maxContent){
+ var original = $noticeDataText.val();
+ shortenAjax = $.ajax({
+ url: $('address .url')[0].href+'/plugins/ClientSideShorten/shorten',
+ data: { text: $noticeDataText.val() },
+ dataType: 'text',
+ success: function(data) {
+ if(original == $noticeDataText.val()) {
+ $noticeDataText.val(data).keyup();
+ }
+ }
+ });
+ }
+ }
+
+ $(document).ready(function(){
+ $noticeDataText = $('#'+SN.C.S.NoticeDataText);
+ $noticeDataText.smartkeypress(function(e){
+ //if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort();
+ if(e.charCode == '32') {
+ shorten();
+ }
+ });
+ $noticeDataText.bind('paste', function() {
+ //if(typeof(shortenAjax) !== 'undefined') shortenAjax.abort();
+ setTimeout(shorten,1);
+ });
+ });
+
+})();
diff --git a/plugins/ClientSideShorten/shorten.php b/plugins/ClientSideShorten/shorten.php
new file mode 100644
index 000000000..f67cbf3b2
--- /dev/null
+++ b/plugins/ClientSideShorten/shorten.php
@@ -0,0 +1,69 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * List users for autocompletion
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) {
+ exit(1);
+}
+
+/**
+ * Shorten all URLs in a string
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class ShortenAction extends Action
+{
+ private $text;
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+ $this->groups=array();
+ $this->users=array();
+ $this->text = $this->arg('text');
+ if(is_null($this->text)){
+ throw new ClientException(_m('\'text\' argument must be specified.'));
+ }
+ return true;
+ }
+
+ function handle($args)
+ {
+ parent::handle($args);
+ header('Content-Type: text/plain');
+ $shortened_text = common_shorten_links($this->text);
+ print $shortened_text;
+ }
+}
+
diff --git a/plugins/DirectionDetector/DirectionDetectorPlugin.php b/plugins/DirectionDetector/DirectionDetectorPlugin.php
new file mode 100644
index 000000000..b1362b166
--- /dev/null
+++ b/plugins/DirectionDetector/DirectionDetectorPlugin.php
@@ -0,0 +1,230 @@
+<?php
+/**
+ * DirectionDetector plugin, detects notices with RTL content & sets RTL
+ * style for them.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU 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 General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Behrooz shabani (everplays) - <behrooz@rock.com>
+ * @copyright 2009-2010 Behrooz shabani
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
+ *
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+define('DIRECTIONDETECTORPLUGIN_VERSION', '0.1.2');
+
+class DirectionDetectorPlugin extends Plugin {
+ /**
+ * SN plugin API, here we will make changes on rendered column
+ *
+ * @param object $notice notice is going to be saved
+ */
+ public function onStartNoticeSave(&$notice){
+ if(!preg_match('/<span class="rtl">/', $notice->rendered) && self::isRTL($notice->content))
+ $notice->rendered = '<span class="rtl">'.$notice->rendered.'</span>';
+ return true;
+ }
+
+ /**
+ * SN plugin API, here we will add css needed for modifiyed rendered
+ *
+ * @param
+ */
+ public function onEndShowStatusNetStyles($xml){
+ $xml->element('style', array('type' => 'text/css'), 'span.rtl {display:block;direction:rtl;text-align:right;float:right;width:490px;} .notice .author {float:left}');
+ }
+ /**
+ * checks that passed string is a RTL language or not
+ *
+ * @param string $str String to be checked
+ */
+ public static function isRTL($str){
+ self::getClearText($str);
+ if( is_array($cc = self::utf8ToUnicode(mb_substr($str, 0, 1, 'utf-8'))) )
+ $cc = $cc[0];
+ else
+ return false;
+ if($cc>=1536 && $cc<=1791) // Arabic, Persian, Urdu, Kurdish, ...
+ return true;
+ if($cc>=65136 && $cc<=65279) // Arabic peresent 2
+ return true;
+ if($cc>=64336 && $cc<=65023) // Arabic peresent 1
+ return true;
+ if($cc>=1424 && $cc<=1535) // Hebrew
+ return true;
+ if($cc>=64256 && $cc<=64335) // Hebrew peresent
+ return true;
+ if($cc>=1792 && $cc<=1871) // Syriac
+ return true;
+ if($cc>=1920 && $cc<=1983) // Thaana
+ return true;
+ if($cc>=1984 && $cc<=2047) // NKo
+ return true;
+ if($cc>=11568 && $cc<=11647) // Tifinagh
+ return true;
+ return false;
+ }
+
+ /**
+ * clears text from replies, tags, groups, repeats & whitespaces
+ *
+ * @param string &$str string to be cleared
+ */
+ private static function getClearText(&$str){
+ $str = preg_replace('/@[^ ]+|![^ ]+|#[^ ]+/u', '', $str); // reply, tag, group
+ $str = preg_replace('/^RT[: ]{1}| RT | RT: |^RD[: ]{1}| RD | RD: |[♺♻:]/u', '', $str); // redent, retweet
+ $str = preg_replace("/[ \r\t\n]+/", ' ', trim($str)); // remove spaces
+ }
+
+ /**
+ * Takes a UTF-8 string and returns an array of ints representing the
+ * Unicode characters. Astral planes are supported i.e. the ints in the
+ * output can be > 0xFFFF. Occurrances of the BOM are ignored. Surrogates
+ * are not allowed. ### modified ### returns first character code
+ *
+ * Returns false if the input string isn't a valid UTF-8 octet sequence.
+ */
+ private static function utf8ToUnicode($str){
+ $mState = 0; // cached expected number of octets after the current octet
+ // until the beginning of the next UTF8 character sequence
+ $mUcs4 = 0; // cached Unicode character
+ $mBytes = 1; // cached expected number of octets in the current sequence
+ $out = array();
+ $len = strlen($str);
+
+ for($i = 0; $i < $len; $i++) {
+ $in = ord($str{$i});
+ if (0 == $mState) {
+ // When mState is zero we expect either a US-ASCII character or a
+ // multi-octet sequence.
+ if (0 == (0x80 & ($in))) {
+ // US-ASCII, pass straight through.
+ $out[] = $in;
+ $mBytes = 1;
+ } elseif (0xC0 == (0xE0 & ($in))) {
+ // First octet of 2 octet sequence
+ $mUcs4 = ($in);
+ $mUcs4 = ($mUcs4 & 0x1F) << 6;
+ $mState = 1;
+ $mBytes = 2;
+ } elseif (0xE0 == (0xF0 & ($in))) {
+ // First octet of 3 octet sequence
+ $mUcs4 = ($in);
+ $mUcs4 = ($mUcs4 & 0x0F) << 12;
+ $mState = 2;
+ $mBytes = 3;
+ } elseif (0xF0 == (0xF8 & ($in))) {
+ // First octet of 4 octet sequence
+ $mUcs4 = ($in);
+ $mUcs4 = ($mUcs4 & 0x07) << 18;
+ $mState = 3;
+ $mBytes = 4;
+ } elseif (0xF8 == (0xFC & ($in))) {
+ /* First octet of 5 octet sequence.
+ *
+ * This is illegal because the encoded codepoint must be either
+ * (a) not the shortest form or
+ * (b) outside the Unicode range of 0-0x10FFFF.
+ * Rather than trying to resynchronize, we will carry on until the end
+ * of the sequence and let the later error handling code catch it.
+ */
+ $mUcs4 = ($in);
+ $mUcs4 = ($mUcs4 & 0x03) << 24;
+ $mState = 4;
+ $mBytes = 5;
+ } elseif (0xFC == (0xFE & ($in))) {
+ // First octet of 6 octet sequence, see comments for 5 octet sequence.
+ $mUcs4 = ($in);
+ $mUcs4 = ($mUcs4 & 1) << 30;
+ $mState = 5;
+ $mBytes = 6;
+ } else {
+ /* Current octet is neither in the US-ASCII range nor a legal first
+ * octet of a multi-octet sequence.
+ */
+ return false;
+ }
+ } else {
+ // When mState is non-zero, we expect a continuation of the multi-octet
+ // sequence
+ if (0x80 == (0xC0 & ($in))) {
+ // Legal continuation.
+ $shift = ($mState - 1) * 6;
+ $tmp = $in;
+ $tmp = ($tmp & 0x0000003F) << $shift;
+ $mUcs4 |= $tmp;
+ if (0 == --$mState) {
+ /* End of the multi-octet sequence. mUcs4 now contains the final
+ * Unicode codepoint to be output
+ *
+ * Check for illegal sequences and codepoints.
+ */
+ // From Unicode 3.1, non-shortest form is illegal
+ if (
+ ((2 == $mBytes) && ($mUcs4 < 0x0080)) ||
+ ((3 == $mBytes) && ($mUcs4 < 0x0800)) ||
+ ((4 == $mBytes) && ($mUcs4 < 0x10000)) ||
+ (4 < $mBytes) ||
+ // From Unicode 3.2, surrogate characters are illegal
+ (($mUcs4 & 0xFFFFF800) == 0xD800) ||
+ // Codepoints outside the Unicode range are illegal
+ ($mUcs4 > 0x10FFFF)
+ ){
+ return false;
+ }
+ if (0xFEFF != $mUcs4) {
+ $out[] = $mUcs4;
+ }
+ //initialize UTF8 cache
+ $mState = 0;
+ $mUcs4 = 0;
+ $mBytes = 1;
+ }
+ } else {
+ /* ((0xC0 & (*in) != 0x80) && (mState != 0))
+ *
+ * Incomplete multi-octet sequence.
+ */
+ return false;
+ }
+ }
+ }
+ return $out;
+ }
+
+ /**
+ * plugin details
+ */
+ function onPluginVersion(&$versions){
+ $versions[] = array(
+ 'name' => 'Direction detector',
+ 'version' => DIRECTIONDETECTORPLUGIN_VERSION,
+ 'author' => 'Behrooz Shabani',
+ // TRANS: Direction detector plugin description.
+ 'rawdescription' => _m('Shows notices with right-to-left content in correct direction.')
+ );
+ return true;
+ }
+}
+
+/*
+// Example:
+var_dump(DirectionDetectorPlugin::isRTL('RT @everplays ♺: دادگاه به دليل عدم حضور وکلای متهمان بنا بر اصل ١٣٥ قانون اساسی غير قانونی است')); // true
+*/
diff --git a/plugins/DirectionDetector/locale/DirectionDetector.pot b/plugins/DirectionDetector/locale/DirectionDetector.pot
new file mode 100644
index 000000000..44bbcca4d
--- /dev/null
+++ b/plugins/DirectionDetector/locale/DirectionDetector.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-05-08 22:32+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: DirectionDetectorPlugin.php:222
+msgid "Shows notices with right-to-left content in correct direction."
+msgstr ""
diff --git a/plugins/DirectionDetector/locale/nl/LC_MESSAGES/DirectionDetector.po b/plugins/DirectionDetector/locale/nl/LC_MESSAGES/DirectionDetector.po
new file mode 100644
index 000000000..e8dae6ea8
--- /dev/null
+++ b/plugins/DirectionDetector/locale/nl/LC_MESSAGES/DirectionDetector.po
@@ -0,0 +1,22 @@
+# Translation of StatusNet plugin DirectionDetector to Dutch
+#
+# Author@translatewiki.net: Siebrand
+# --
+# This file is distributed under the same license as the StatusNet package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: StatusNet\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-05-08 22:32+0000\n"
+"PO-Revision-Date: 2010-05-08 23:32+0100\n"
+"Last-Translator: Siebrand Mazeland <s.mazeland@xs4all.nl>\n"
+"Language-Team: Dutch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: DirectionDetectorPlugin.php:222
+msgid "Geeft mededelingen met rechts-naar-linksinhoud weer in de juiste richting."
+msgstr ""
diff --git a/plugins/EmailAuthentication/EmailAuthenticationPlugin.php b/plugins/EmailAuthentication/EmailAuthenticationPlugin.php
index 406c00073..4c018537b 100644
--- a/plugins/EmailAuthentication/EmailAuthenticationPlugin.php
+++ b/plugins/EmailAuthentication/EmailAuthenticationPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/EmailAuthentication/locale/EmailAuthentication.pot b/plugins/EmailAuthentication/locale/EmailAuthentication.pot
new file mode 100644
index 000000000..d945e2537
--- /dev/null
+++ b/plugins/EmailAuthentication/locale/EmailAuthentication.pot
@@ -0,0 +1,23 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: EmailAuthenticationPlugin.php:61
+msgid ""
+"The Email Authentication plugin allows users to login using their email "
+"address."
+msgstr ""
diff --git a/plugins/Facebook/FBConnectAuth.php b/plugins/Facebook/FBConnectAuth.php
index 51bfc3865..8eba7fc13 100644
--- a/plugins/Facebook/FBConnectAuth.php
+++ b/plugins/Facebook/FBConnectAuth.php
@@ -138,6 +138,11 @@ class FBConnectauthAction extends Action
parent::showPage();
}
+ /**
+ * @fixme much of this duplicates core code, which is very fragile.
+ * Should probably be replaced with an extensible mini version of
+ * the core registration form.
+ */
function showContent()
{
if (!empty($this->message_text)) {
@@ -159,10 +164,15 @@ class FBConnectauthAction extends Action
'name' => 'license',
'value' => 'true'));
$this->elementStart('label', array('class' => 'checkbox', 'for' => 'license'));
- $this->text(_m('My text and files are available under '));
- $this->element('a', array('href' => common_config('license', 'url')),
- common_config('license', 'title'));
- $this->text(_m(' except this private data: password, email address, IM address, phone number.'));
+ $message = _('My text and files are available under %s ' .
+ 'except this private data: password, ' .
+ 'email address, IM address, and phone number.');
+ $link = '<a href="' .
+ htmlspecialchars(common_config('license', 'url')) .
+ '">' .
+ htmlspecialchars(common_config('license', 'title')) .
+ '</a>';
+ $this->raw(sprintf(htmlspecialchars($message), $link));
$this->elementEnd('label');
$this->elementEnd('li');
$this->elementEnd('ul');
diff --git a/plugins/Facebook/FacebookPlugin.php b/plugins/Facebook/FacebookPlugin.php
index 5dba73a5d..19989a952 100644
--- a/plugins/Facebook/FacebookPlugin.php
+++ b/plugins/Facebook/FacebookPlugin.php
@@ -585,7 +585,7 @@ class FacebookPlugin extends Plugin
function onStartEnqueueNotice($notice, &$transports)
{
- if (self::hasKeys()) {
+ if (self::hasKeys() && $notice->isLocal()) {
array_push($transports, 'facebook');
}
return true;
diff --git a/plugins/Facebook/README b/plugins/Facebook/README
index 14c1d3241..532f1d82e 100644
--- a/plugins/Facebook/README
+++ b/plugins/Facebook/README
@@ -38,11 +38,11 @@ editor or write them down.
In Facebook's application editor, specify the following URLs for your app:
-- Canvas Callback URL : http://example.net/mublog/facebook/app/
-- Post-Remove Callback URL: http://example.net/mublog/facebook/app/remove
-- Post-Add Redirect URL : http://apps.facebook.com/yourapp/
-- Canvas Page URL : http://apps.facebook.com/yourapp/
-- Connect URL : http://example.net/mublog/
+- Canvas Callback URL : http://example.net/mublog/facebook/app/
+- Post-Remove Callback URL : http://example.net/mublog/facebook/app/remove
+- Post-Authorize Redirect URL : http://apps.facebook.com/yourapp/
+- Canvas Page URL : http://apps.facebook.com/yourapp/
+- Connect URL : http://example.net/mublog/
*** ATTENTION ***
These URLs have changed slightly since StatusNet version 0.8.1,
diff --git a/plugins/Facebook/facebook/facebook.php b/plugins/Facebook/facebook/facebook.php
index 440706cbc..76696c1d5 100644
--- a/plugins/Facebook/facebook/facebook.php
+++ b/plugins/Facebook/facebook/facebook.php
@@ -45,7 +45,9 @@ class Facebook {
public $user;
public $profile_user;
public $canvas_user;
+ public $ext_perms = array();
protected $base_domain;
+
/*
* Create a Facebook client like this:
*
@@ -104,17 +106,17 @@ class Facebook {
*
* For nitty-gritty details of when each of these is used, check out
* http://wiki.developers.facebook.com/index.php/Verifying_The_Signature
- *
- * @param bool resolve_auth_token convert an auth token into a session
*/
- public function validate_fb_params($resolve_auth_token=true) {
+ public function validate_fb_params() {
$this->fb_params = $this->get_valid_fb_params($_POST, 48 * 3600, 'fb_sig');
// note that with preload FQL, it's possible to receive POST params in
// addition to GET, so use a different prefix to differentiate them
if (!$this->fb_params) {
$fb_params = $this->get_valid_fb_params($_GET, 48 * 3600, 'fb_sig');
- $fb_post_params = $this->get_valid_fb_params($_POST, 48 * 3600, 'fb_post_sig');
+ $fb_post_params = $this->get_valid_fb_params($_POST,
+ 48 * 3600, // 48 hours
+ 'fb_post_sig');
$this->fb_params = array_merge($fb_params, $fb_post_params);
}
@@ -128,6 +130,9 @@ class Facebook {
$this->fb_params['canvas_user'] : null;
$this->base_domain = isset($this->fb_params['base_domain']) ?
$this->fb_params['base_domain'] : null;
+ $this->ext_perms = isset($this->fb_params['ext_perms']) ?
+ explode(',', $this->fb_params['ext_perms'])
+ : array();
if (isset($this->fb_params['session_key'])) {
$session_key = $this->fb_params['session_key'];
@@ -141,13 +146,11 @@ class Facebook {
$this->set_user($user,
$session_key,
$expires);
- }
- // if no Facebook parameters were found in the GET or POST variables,
- // then fall back to cookies, which may have cached user information
- // Cookies are also used to receive session data via the Javascript API
- else if ($cookies =
- $this->get_valid_fb_params($_COOKIE, null, $this->api_key)) {
-
+ } else if ($cookies =
+ $this->get_valid_fb_params($_COOKIE, null, $this->api_key)) {
+ // if no Facebook parameters were found in the GET or POST variables,
+ // then fall back to cookies, which may have cached user information
+ // Cookies are also used to receive session data via the Javascript API
$base_domain_cookie = 'base_domain_' . $this->api_key;
if (isset($_COOKIE[$base_domain_cookie])) {
$this->base_domain = $_COOKIE[$base_domain_cookie];
@@ -160,25 +163,6 @@ class Facebook {
$cookies['session_key'],
$expires);
}
- // finally, if we received no parameters, but the 'auth_token' GET var
- // is present, then we are in the middle of auth handshake,
- // so go ahead and create the session
- else if ($resolve_auth_token && isset($_GET['auth_token']) &&
- $session = $this->do_get_session($_GET['auth_token'])) {
- if ($this->generate_session_secret &&
- !empty($session['secret'])) {
- $session_secret = $session['secret'];
- }
-
- if (isset($session['base_domain'])) {
- $this->base_domain = $session['base_domain'];
- }
-
- $this->set_user($session['uid'],
- $session['session_key'],
- $session['expires'],
- isset($session_secret) ? $session_secret : null);
- }
return !empty($this->fb_params);
}
@@ -309,11 +293,28 @@ class Facebook {
// require_add and require_install have been removed.
// see http://developer.facebook.com/news.php?blog=1&story=116 for more details
- public function require_login() {
- if ($user = $this->get_loggedin_user()) {
+ public function require_login($required_permissions = '') {
+ $user = $this->get_loggedin_user();
+ $has_permissions = true;
+
+ if ($required_permissions) {
+ $this->require_frame();
+ $permissions = array_map('trim', explode(',', $required_permissions));
+ foreach ($permissions as $permission) {
+ if (!in_array($permission, $this->ext_perms)) {
+ $has_permissions = false;
+ break;
+ }
+ }
+ }
+
+ if ($user && $has_permissions) {
return $user;
}
- $this->redirect($this->get_login_url(self::current_url(), $this->in_frame()));
+
+ $this->redirect(
+ $this->get_login_url(self::current_url(), $this->in_frame(),
+ $required_permissions));
}
public function require_frame() {
@@ -342,10 +343,11 @@ class Facebook {
return $page . '?' . http_build_query($params);
}
- public function get_login_url($next, $canvas) {
+ public function get_login_url($next, $canvas, $req_perms = '') {
$page = self::get_facebook_url().'/login.php';
- $params = array('api_key' => $this->api_key,
- 'v' => '1.0');
+ $params = array('api_key' => $this->api_key,
+ 'v' => '1.0',
+ 'req_perms' => $req_perms);
if ($next) {
$params['next'] = $next;
diff --git a/plugins/Facebook/facebook/facebookapi_php5_restlib.php b/plugins/Facebook/facebook/facebookapi_php5_restlib.php
index fa1088cd0..e249a326b 100755
--- a/plugins/Facebook/facebook/facebookapi_php5_restlib.php
+++ b/plugins/Facebook/facebook/facebookapi_php5_restlib.php
@@ -569,7 +569,7 @@ function toggleDisplay(id, type) {
return $this->call_method('facebook.events.invite',
array('eid' => $eid,
'uids' => $uids,
- 'personal_message', $personal_message));
+ 'personal_message' => $personal_message));
}
/**
@@ -1350,53 +1350,6 @@ function toggleDisplay(id, type) {
);
}
- /**
- * Dashboard API
- */
-
- /**
- * Set the news for the specified user.
- *
- * @param int $uid The user for whom you are setting news for
- * @param string $news Text of news to display
- *
- * @return bool Success
- */
- public function dashboard_setNews($uid, $news) {
- return $this->call_method('facebook.dashboard.setNews',
- array('uid' => $uid,
- 'news' => $news)
- );
- }
-
- /**
- * Get the current news of the specified user.
- *
- * @param int $uid The user to get the news of
- *
- * @return string The text of the current news for the user
- */
- public function dashboard_getNews($uid) {
- return json_decode(
- $this->call_method('facebook.dashboard.getNews',
- array('uid' => $uid)
- ), true);
- }
-
- /**
- * Set the news for the specified user.
- *
- * @param int $uid The user you are clearing the news of
- *
- * @return bool Success
- */
- public function dashboard_clearNews($uid) {
- return $this->call_method('facebook.dashboard.clearNews',
- array('uid' => $uid)
- );
- }
-
-
/**
* Creates a note with the specified title and content.
@@ -2005,7 +1958,7 @@ function toggleDisplay(id, type) {
* @return array A list of strings describing any compile errors for the
* submitted FBML
*/
- function profile_setFBML($markup,
+ public function profile_setFBML($markup,
$uid=null,
$profile='',
$profile_action='',
@@ -3267,9 +3220,8 @@ function toggleDisplay(id, type) {
} else {
$get['v'] = '1.0';
}
- if (isset($this->use_ssl_resources) &&
- $this->use_ssl_resources) {
- $post['return_ssl_resources'] = true;
+ if (isset($this->use_ssl_resources)) {
+ $post['return_ssl_resources'] = (bool) $this->use_ssl_resources;
}
return array($get, $post);
}
diff --git a/plugins/Facebook/facebooksettings.php b/plugins/Facebook/facebooksettings.php
index 766d0e199..f94a346b5 100644
--- a/plugins/Facebook/facebooksettings.php
+++ b/plugins/Facebook/facebooksettings.php
@@ -54,22 +54,11 @@ class FacebooksettingsAction extends FacebookAction
$noticesync = $this->boolean('noticesync');
$replysync = $this->boolean('replysync');
- $prefix = $this->trimmed('prefix');
$original = clone($this->flink);
$this->flink->set_flags($noticesync, false, $replysync, false);
$result = $this->flink->update($original);
- if ($prefix == '' || $prefix == '0') {
- // Facebook bug: saving empty strings to prefs now fails
- // http://bugs.developers.facebook.com/show_bug.cgi?id=7110
- $trimmed = $prefix . ' ';
- } else {
- $trimmed = substr($prefix, 0, 128);
- }
- $this->facebook->api_client->data_setUserPreference(FACEBOOK_NOTICE_PREFIX,
- $trimmed);
-
if ($result === false) {
$this->showForm(_m('There was a problem saving your sync preferences!'));
} else {
@@ -110,16 +99,6 @@ class FacebooksettingsAction extends FacebookAction
$this->elementStart('li');
- $prefix = trim($this->facebook->api_client->data_getUserPreference(FACEBOOK_NOTICE_PREFIX));
-
- $this->input('prefix', _m('Prefix'),
- ($prefix) ? $prefix : null,
- _m('A string to prefix notices with.'));
-
- $this->elementEnd('li');
-
- $this->elementStart('li');
-
$this->submit('save', _m('Save'));
$this->elementEnd('li');
diff --git a/plugins/Facebook/facebookutil.php b/plugins/Facebook/facebookutil.php
index ac532e18b..1290fed55 100644
--- a/plugins/Facebook/facebookutil.php
+++ b/plugins/Facebook/facebookutil.php
@@ -81,97 +81,251 @@ function isFacebookBound($notice, $flink) {
function facebookBroadcastNotice($notice)
{
$facebook = getFacebook();
- $flink = Foreign_link::getByUserID($notice->profile_id, FACEBOOK_SERVICE);
+ $flink = Foreign_link::getByUserID(
+ $notice->profile_id,
+ FACEBOOK_SERVICE
+ );
if (isFacebookBound($notice, $flink)) {
// Okay, we're good to go, update the FB status
- $status = null;
$fbuid = $flink->foreign_id;
$user = $flink->getUser();
- $attachments = $notice->attachments();
try {
- // Get the status 'verb' (prefix) the user has set
-
- // XXX: Does this call count against our per user FB request limit?
- // If so we should consider storing verb elsewhere or not storing
-
- $prefix = trim($facebook->api_client->data_getUserPreference(FACEBOOK_NOTICE_PREFIX,
- $fbuid));
-
- $status = "$prefix $notice->content";
-
- $can_publish = $facebook->api_client->users_hasAppPermission('publish_stream',
- $fbuid);
-
- $can_update = $facebook->api_client->users_hasAppPermission('status_update',
- $fbuid);
- if (!empty($attachments) && $can_publish == 1) {
- $fbattachment = format_attachments($attachments);
- $facebook->api_client->stream_publish($status, $fbattachment,
- null, null, $fbuid);
- common_log(LOG_INFO,
- "Posted notice $notice->id w/attachment " .
- "to Facebook user's stream (fbuid = $fbuid).");
- } elseif ($can_update == 1 || $can_publish == 1) {
- $facebook->api_client->users_setStatus($status, $fbuid, false, true);
- common_log(LOG_INFO,
- "Posted notice $notice->id to Facebook " .
- "as a status update (fbuid = $fbuid).");
+ // Check permissions
+
+ common_debug(
+ 'FacebookPlugin - checking for publish_stream permission for user '
+ . "$user->nickname ($user->id), Facebook UID: $fbuid"
+ );
+
+ // NOTE: $facebook->api_client->users_hasAppPermission('publish_stream', $fbuid)
+ // has been returning bogus results, so we're using FQL to check for
+ // publish_stream permission now
+
+ $fql = "SELECT publish_stream FROM permissions WHERE uid = $fbuid";
+ $result = $facebook->api_client->fql_query($fql);
+
+ $canPublish = 0;
+
+ if (!empty($result)) {
+ $canPublish = $result[0]['publish_stream'];
+ }
+
+ if ($canPublish == 1) {
+ common_debug(
+ "FacebookPlugin - $user->nickname ($user->id), Facebook UID: $fbuid "
+ . 'has publish_stream permission.'
+ );
+ } else {
+ common_debug(
+ "FacebookPlugin - $user->nickname ($user->id), Facebook UID: $fbuid "
+ . 'does NOT have publish_stream permission. Facebook '
+ . 'returned: ' . var_export($result, true)
+ );
+ }
+
+ common_debug(
+ 'FacebookPlugin - checking for status_update permission for user '
+ . "$user->nickname ($user->id), Facebook UID: $fbuid. "
+ );
+
+ $canUpdate = $facebook->api_client->users_hasAppPermission(
+ 'status_update',
+ $fbuid
+ );
+
+ if ($canUpdate == 1) {
+ common_debug(
+ "FacebookPlugin - $user->nickname ($user->id), Facebook UID: $fbuid "
+ . 'has status_update permission.'
+ );
} else {
- $msg = "Not sending notice $notice->id to Facebook " .
- "because user $user->nickname hasn't given the " .
+ common_debug(
+ "FacebookPlugin - $user->nickname ($user->id), Facebook UID: $fbuid "
+ .'does NOT have status_update permission. Facebook '
+ . 'returned: ' . var_export($canPublish, true)
+ );
+ }
+
+ // Post to Facebook
+
+ if ($notice->hasAttachments() && $canPublish == 1) {
+ publishStream($notice, $user, $fbuid);
+ } elseif ($canUpdate == 1 || $canPublish == 1) {
+ statusUpdate($notice, $user, $fbuid);
+ } else {
+ $msg = "FacebookPlugin - Not sending notice $notice->id to Facebook " .
+ "because user $user->nickname has not given the " .
'Facebook app \'status_update\' or \'publish_stream\' permission.';
common_log(LOG_WARNING, $msg);
}
// Finally, attempt to update the user's profile box
- if ($can_publish == 1 || $can_update == 1) {
- updateProfileBox($facebook, $flink, $notice);
+ if ($canPublish == 1 || $canUpdate == 1) {
+ updateProfileBox($facebook, $flink, $notice, $user);
}
} catch (FacebookRestClientException $e) {
+ return handleFacebookError($e, $notice, $flink);
+ }
+ }
- $code = $e->getCode();
-
- $msg = "Facebook returned error code $code: " .
- $e->getMessage() . ' - ' .
- "Unable to update Facebook status (notice $notice->id) " .
- "for $user->nickname (user id: $user->id)!";
+ return true;
+}
- common_log(LOG_WARNING, $msg);
+function handleFacebookError($e, $notice, $flink)
+{
+ $fbuid = $flink->foreign_id;
+ $user = $flink->getUser();
+ $code = $e->getCode();
+ $errmsg = $e->getMessage();
+
+ // XXX: Check for any others?
+ switch($code) {
+ case 100: // Invalid parameter
+ $msg = "FacebookPlugin - Facebook claims notice %d was posted with an invalid parameter (error code 100):"
+ . "\"%s\" (Notice details: nickname=%s, user ID=%d, Facebook ID=%d, notice content=\"%s\"). "
+ . "Removing notice from the Facebook queue for safety.";
+ common_log(
+ LOG_ERR, sprintf(
+ $msg,
+ $notice->id,
+ $errmsg,
+ $user->nickname,
+ $user->id,
+ $fbuid,
+ $notice->content
+ )
+ );
+ return true;
+ break;
+ case 200: // Permissions error
+ case 250: // Updating status requires the extended permission status_update
+ remove_facebook_app($flink);
+ return true; // dequeue
+ break;
+ case 341: // Feed action request limit reached
+ $msg = "FacebookPlugin - User %s (User ID=%d, Facebook ID=%d) has exceeded "
+ . "his/her limit for posting notices to Facebook today. Dequeuing "
+ . "notice %d.";
+ common_log(
+ LOG_INFO, sprintf(
+ $msg,
+ $user->nickname,
+ $user->id,
+ $fbuid,
+ $notice->id
+ )
+ );
+ // @fixme: We want to rety at a later time when the throttling has expired
+ // instead of just giving up.
+ return true;
+ break;
+ default:
+ $msg = "FacebookPlugin - Facebook returned an error we don't know how to deal with while trying to "
+ . "post notice %d. Error code: %d, error message: \"%s\". (Notice details: "
+ . "nickname=%s, user ID=%d, Facebook ID=%d, notice content=\"%s\"). Removing notice "
+ . "from the Facebook queue for safety.";
+ common_log(
+ LOG_ERR, sprintf(
+ $msg,
+ $notice->id,
+ $code,
+ $errmsg,
+ $user->nickname,
+ $user->id,
+ $fbuid,
+ $notice->content
+ )
+ );
+ return true; // dequeue
+ break;
+ }
+}
- if ($code == 100 || $code == 200 || $code == 250) {
+function statusUpdate($notice, $user, $fbuid)
+{
+ common_debug(
+ "FacebookPlugin - Attempting to post notice $notice->id "
+ . "as a status update for $user->nickname ($user->id), "
+ . "Facebook UID: $fbuid"
+ );
- // 100 The account is 'inactive' (probably - this is not well documented)
- // 200 The application does not have permission to operate on the passed in uid parameter.
- // 250 Updating status requires the extended permission status_update or publish_stream.
- // see: http://wiki.developers.facebook.com/index.php/Users.setStatus#Example_Return_XML
+ $facebook = getFacebook();
+ $result = $facebook->api_client->users_setStatus(
+ $notice->content,
+ $fbuid,
+ false,
+ true
+ );
+
+ common_debug('Facebook returned: ' . var_export($result, true));
+
+ common_log(
+ LOG_INFO,
+ "FacebookPlugin - Posted notice $notice->id as a status "
+ . "update for $user->nickname ($user->id), "
+ . "Facebook UID: $fbuid"
+ );
+}
- remove_facebook_app($flink);
+function publishStream($notice, $user, $fbuid)
+{
+ common_debug(
+ "FacebookPlugin - Attempting to post notice $notice->id "
+ . "as stream item with attachment for $user->nickname ($user->id), "
+ . "Facebook UID: $fbuid"
+ );
- } else {
+ $fbattachment = format_attachments($notice->attachments());
- // Try sending again later.
+ $facebook = getFacebook();
+ $facebook->api_client->stream_publish(
+ $notice->content,
+ $fbattachment,
+ null,
+ null,
+ $fbuid
+ );
+
+ common_log(
+ LOG_INFO,
+ "FacebookPlugin - Posted notice $notice->id as a stream "
+ . "item with attachment for $user->nickname ($user->id), "
+ . "Facebook UID: $fbuid"
+ );
+}
- return false;
- }
+function updateProfileBox($facebook, $flink, $notice, $user) {
- }
- }
+ $facebook = getFacebook();
+ $fbaction = new FacebookAction(
+ $output = 'php://output',
+ $indent = null,
+ $facebook,
+ $flink
+ );
- return true;
+ $fbuid = $flink->foreign_id;
-}
+ common_debug(
+ 'FacebookPlugin - Attempting to update profile box with '
+ . "content from notice $notice->id for $user->nickname ($user->id), "
+ . "Facebook UID: $fbuid"
+ );
-function updateProfileBox($facebook, $flink, $notice) {
- $fbaction = new FacebookAction($output = 'php://output',
- $indent = null, $facebook, $flink);
$fbaction->updateProfileBox($notice);
+
+ common_debug(
+ 'FacebookPlugin - finished updating profile box for '
+ . "$user->nickname ($user->id) Facebook UID: $fbuid"
+ );
+
}
function format_attachments($attachments)
@@ -272,12 +426,12 @@ function remove_facebook_app($flink)
function mail_facebook_app_removed($user)
{
- common_init_locale($user->language);
-
$profile = $user->getProfile();
$site_name = common_config('site', 'name');
+ common_switch_locale($user->language);
+
$subject = sprintf(
_m('Your %1$s Facebook application access has been disabled.',
$site_name));
@@ -291,7 +445,7 @@ function mail_facebook_app_removed($user)
"re-installing the %2\$s Facebook application.\n\nRegards,\n\n%2\$s"),
$user->nickname, $site_name);
- common_init_locale();
+ common_switch_locale();
return mail_to_user($user, $subject, $body);
}
diff --git a/plugins/Facebook/locale/Facebook.po b/plugins/Facebook/locale/Facebook.pot
index 4bc00248c..dce10d230 100644
--- a/plugins/Facebook/locale/Facebook.po
+++ b/plugins/Facebook/locale/Facebook.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,72 +16,129 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: facebookaction.php:171
-msgid "Home"
+#: facebookutil.php:285
+#, php-format
+msgid ""
+"Hi, %1$s. We're sorry to inform you that we are unable to update your "
+"Facebook status from %2$s, and have disabled the Facebook application for "
+"your account. This may be because you have removed the Facebook "
+"application's authorization, or have deleted your Facebook account. You can "
+"re-enable the Facebook application and automatic status updating by re-"
+"installing the %2$s Facebook application.\n"
+"\n"
+"Regards,\n"
+"\n"
+"%2$s"
msgstr ""
-#: facebookaction.php:179
-msgid "Invite"
+#: FBConnectAuth.php:51
+msgid "You must be logged into Facebook to use Facebook Connect."
msgstr ""
-#: facebookaction.php:188
-msgid "Settings"
+#: FBConnectAuth.php:77
+msgid "There is already a local user linked with this Facebook."
msgstr ""
-#: facebookaction.php:228
+#: FBConnectAuth.php:90 FBConnectSettings.php:164
+msgid "There was a problem with your session token. Try again, please."
+msgstr ""
+
+#: FBConnectAuth.php:95
+msgid "You can't register if you don't agree to the license."
+msgstr ""
+
+#: FBConnectAuth.php:105
+msgid "Something weird happened."
+msgstr ""
+
+#: FBConnectAuth.php:119
#, php-format
msgid ""
-"To use the %s Facebook Application you need to login with your username and "
-"password. Don't have a username yet? "
+"This is the first time you've logged into %s so we must connect your "
+"Facebook to a local account. You can either create a new account, or connect "
+"with your existing account, if you have one."
msgstr ""
-#: facebookaction.php:230
-msgid " a new account."
+#: FBConnectAuth.php:125
+msgid "Facebook Account Setup"
msgstr ""
-#: facebookaction.php:236
-msgid "Register"
+#: FBConnectAuth.php:158
+msgid "Connection options"
msgstr ""
-#: facebookaction.php:249 facebookaction.php:275 facebooklogin.php:91
-msgid "Login"
+#: FBConnectAuth.php:183
+msgid "Create new account"
msgstr ""
-#: facebookaction.php:268
-msgid "Nickname"
+#: FBConnectAuth.php:185
+msgid "Create a new user with this nickname."
msgstr ""
-#: facebookaction.php:271 FBConnectAuth.php:196
+#: FBConnectAuth.php:188
+msgid "New nickname"
+msgstr ""
+
+#: FBConnectAuth.php:190
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr ""
+
+#: FBConnectAuth.php:193
+msgid "Create"
+msgstr ""
+
+#: FBConnectAuth.php:198
+msgid "Connect existing account"
+msgstr ""
+
+#: FBConnectAuth.php:200
+msgid ""
+"If you already have an account, login with your username and password to "
+"connect it to your Facebook."
+msgstr ""
+
+#: FBConnectAuth.php:203
+msgid "Existing nickname"
+msgstr ""
+
+#: FBConnectAuth.php:206 facebookaction.php:271
msgid "Password"
msgstr ""
-#: facebookaction.php:281
-msgid "Lost or forgotten password?"
+#: FBConnectAuth.php:209
+msgid "Connect"
msgstr ""
-#: facebookaction.php:330 facebookhome.php:248
-msgid "Pagination"
+#: FBConnectAuth.php:225 FBConnectAuth.php:234
+msgid "Registration not allowed."
msgstr ""
-#: facebookaction.php:339 facebookhome.php:257
-msgid "After"
+#: FBConnectAuth.php:241
+msgid "Not a valid invitation code."
msgstr ""
-#: facebookaction.php:347 facebookhome.php:265
-msgid "Before"
+#: FBConnectAuth.php:251
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
-#: facebookaction.php:365
-msgid "No notice content!"
+#: FBConnectAuth.php:256
+msgid "Nickname not allowed."
msgstr ""
-#: facebookaction.php:371
-#, php-format
-msgid "That's too long. Max notice size is %d chars."
+#: FBConnectAuth.php:261
+msgid "Nickname already in use. Try another one."
msgstr ""
-#: facebookaction.php:430
-msgid "Notices"
+#: FBConnectAuth.php:279 FBConnectAuth.php:313 FBConnectAuth.php:333
+msgid "Error connecting user to Facebook."
+msgstr ""
+
+#: FBConnectAuth.php:299
+msgid "Invalid username or password."
+msgstr ""
+
+#: facebooklogin.php:91 facebookaction.php:249 facebookaction.php:275
+msgid "Login"
msgstr ""
#: facebookhome.php:111
@@ -117,6 +174,18 @@ msgstr ""
msgid "Skip"
msgstr ""
+#: facebookhome.php:248 facebookaction.php:330
+msgid "Pagination"
+msgstr ""
+
+#: facebookhome.php:257 facebookaction.php:339
+msgid "After"
+msgstr ""
+
+#: facebookhome.php:265 facebookaction.php:347
+msgid "Before"
+msgstr ""
+
#: facebookinvite.php:72
#, php-format
msgid "Thanks for inviting your friends to use %s"
@@ -145,208 +214,123 @@ msgstr ""
msgid "Send invitations"
msgstr ""
-#: FacebookPlugin.php:413 FacebookPlugin.php:433
+#: FacebookPlugin.php:195 FacebookPlugin.php:488 FacebookPlugin.php:510
+#: facebookadminpanel.php:54
msgid "Facebook"
msgstr ""
-#: FacebookPlugin.php:414
+#: FacebookPlugin.php:196
+msgid "Facebook integration configuration"
+msgstr ""
+
+#: FacebookPlugin.php:489
msgid "Login or register using Facebook"
msgstr ""
-#: FacebookPlugin.php:434 FBConnectSettings.php:56
+#: FacebookPlugin.php:511 FBConnectSettings.php:56
msgid "Facebook Connect Settings"
msgstr ""
-#: FacebookPlugin.php:533
+#: FacebookPlugin.php:617
msgid ""
"The Facebook plugin allows you to integrate your StatusNet instance with <a "
"href=\"http://facebook.com/\">Facebook</a> and Facebook Connect."
msgstr ""
-#: facebookremove.php:58
-msgid "Couldn't remove Facebook user."
-msgstr ""
-
-#: facebooksettings.php:74
-msgid "There was a problem saving your sync preferences!"
-msgstr ""
-
-#: facebooksettings.php:76
-msgid "Sync preferences saved."
-msgstr ""
-
-#: facebooksettings.php:99
-msgid "Automatically update my Facebook status with my notices."
-msgstr ""
-
-#: facebooksettings.php:106
-msgid "Send \"@\" replies to Facebook."
+#: FBConnectLogin.php:33
+msgid "Already logged in."
msgstr ""
-#: facebooksettings.php:115
-msgid "Prefix"
+#: FBConnectLogin.php:41
+msgid "Login with your Facebook Account"
msgstr ""
-#: facebooksettings.php:117
-msgid "A string to prefix notices with."
+#: FBConnectLogin.php:55
+msgid "Facebook Login"
msgstr ""
-#: facebooksettings.php:123
-msgid "Save"
+#: facebookremove.php:58
+msgid "Couldn't remove Facebook user."
msgstr ""
-#: facebooksettings.php:133
-#, php-format
-msgid ""
-"If you would like %s to automatically update your Facebook status with your "
-"latest notice, you need to give it permission."
+#: facebookaction.php:171
+msgid "Home"
msgstr ""
-#: facebooksettings.php:146
-#, php-format
-msgid "Allow %s to update my Facebook status"
+#: facebookaction.php:179
+msgid "Invite"
msgstr ""
-#: facebooksettings.php:156
-msgid "Sync preferences"
+#: facebookaction.php:188
+msgid "Settings"
msgstr ""
-#: facebookutil.php:285
+#: facebookaction.php:228
#, php-format
msgid ""
-"Hi, %1$s. We're sorry to inform you that we are unable to update your "
-"Facebook status from %2$s, and have disabled the Facebook application for "
-"your account. This may be because you have removed the Facebook "
-"application's authorization, or have deleted your Facebook account. You can "
-"re-enable the Facebook application and automatic status updating by re-"
-"installing the %2$s Facebook application.\n"
-"\n"
-"Regards,\n"
-"\n"
-"%2$s"
+"To use the %s Facebook Application you need to login with your username and "
+"password. Don't have a username yet? "
msgstr ""
-#: FBConnectAuth.php:51
-msgid "You must be logged into Facebook to use Facebook Connect."
+#: facebookaction.php:230
+msgid " a new account."
msgstr ""
-#: FBConnectAuth.php:77
-msgid "There is already a local user linked with this Facebook."
+#: facebookaction.php:236
+msgid "Register"
msgstr ""
-#: FBConnectAuth.php:90 FBConnectSettings.php:164
-msgid "There was a problem with your session token. Try again, please."
+#: facebookaction.php:268
+msgid "Nickname"
msgstr ""
-#: FBConnectAuth.php:95
-msgid "You can't register if you don't agree to the license."
+#: facebookaction.php:281
+msgid "Lost or forgotten password?"
msgstr ""
-#: FBConnectAuth.php:105
-msgid "Something weird happened."
+#: facebookaction.php:365
+msgid "No notice content!"
msgstr ""
-#: FBConnectAuth.php:119
+#: facebookaction.php:371
#, php-format
-msgid ""
-"This is the first time you've logged into %s so we must connect your "
-"Facebook to a local account. You can either create a new account, or connect "
-"with your existing account, if you have one."
-msgstr ""
-
-#: FBConnectAuth.php:125
-msgid "Facebook Account Setup"
-msgstr ""
-
-#: FBConnectAuth.php:153
-msgid "Connection options"
-msgstr ""
-
-#: FBConnectAuth.php:162
-msgid "My text and files are available under "
-msgstr ""
-
-#: FBConnectAuth.php:165
-msgid ""
-" except this private data: password, email address, IM address, phone number."
-msgstr ""
-
-#: FBConnectAuth.php:173
-msgid "Create new account"
-msgstr ""
-
-#: FBConnectAuth.php:175
-msgid "Create a new user with this nickname."
-msgstr ""
-
-#: FBConnectAuth.php:178
-msgid "New nickname"
-msgstr ""
-
-#: FBConnectAuth.php:180
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
-msgstr ""
-
-#: FBConnectAuth.php:183
-msgid "Create"
-msgstr ""
-
-#: FBConnectAuth.php:188
-msgid "Connect existing account"
-msgstr ""
-
-#: FBConnectAuth.php:190
-msgid ""
-"If you already have an account, login with your username and password to "
-"connect it to your Facebook."
-msgstr ""
-
-#: FBConnectAuth.php:193
-msgid "Existing nickname"
-msgstr ""
-
-#: FBConnectAuth.php:199
-msgid "Connect"
-msgstr ""
-
-#: FBConnectAuth.php:215 FBConnectAuth.php:224
-msgid "Registration not allowed."
+msgid "That's too long. Max notice size is %d chars."
msgstr ""
-#: FBConnectAuth.php:231
-msgid "Not a valid invitation code."
+#: facebookaction.php:430
+msgid "Notices"
msgstr ""
-#: FBConnectAuth.php:241
-msgid "Nickname must have only lowercase letters and numbers and no spaces."
+#: facebookadminpanel.php:65
+msgid "Facebook integration settings"
msgstr ""
-#: FBConnectAuth.php:246
-msgid "Nickname not allowed."
+#: facebookadminpanel.php:129
+msgid "Invalid Facebook API key. Max length is 255 characters."
msgstr ""
-#: FBConnectAuth.php:251
-msgid "Nickname already in use. Try another one."
+#: facebookadminpanel.php:135
+msgid "Invalid Facebook API secret. Max length is 255 characters."
msgstr ""
-#: FBConnectAuth.php:269 FBConnectAuth.php:303 FBConnectAuth.php:323
-msgid "Error connecting user to Facebook."
+#: facebookadminpanel.php:188
+msgid "Facebook application settings"
msgstr ""
-#: FBConnectAuth.php:289
-msgid "Invalid username or password."
+#: facebookadminpanel.php:194
+msgid "API key"
msgstr ""
-#: FBConnectLogin.php:33
-msgid "Already logged in."
+#: facebookadminpanel.php:195
+msgid "API key provided by Facebook"
msgstr ""
-#: FBConnectLogin.php:41
-msgid "Login with your Facebook Account"
+#: facebookadminpanel.php:203
+msgid "Secret"
msgstr ""
-#: FBConnectLogin.php:55
-msgid "Facebook Login"
+#: facebookadminpanel.php:204
+msgid "API secret provided by Facebook"
msgstr ""
#: FBConnectSettings.php:67
@@ -393,3 +377,47 @@ msgstr ""
#: FBConnectSettings.php:197
msgid "Not sure what you're trying to do."
msgstr ""
+
+#: facebooksettings.php:74
+msgid "There was a problem saving your sync preferences!"
+msgstr ""
+
+#: facebooksettings.php:76
+msgid "Sync preferences saved."
+msgstr ""
+
+#: facebooksettings.php:99
+msgid "Automatically update my Facebook status with my notices."
+msgstr ""
+
+#: facebooksettings.php:106
+msgid "Send \"@\" replies to Facebook."
+msgstr ""
+
+#: facebooksettings.php:115
+msgid "Prefix"
+msgstr ""
+
+#: facebooksettings.php:117
+msgid "A string to prefix notices with."
+msgstr ""
+
+#: facebooksettings.php:123
+msgid "Save"
+msgstr ""
+
+#: facebooksettings.php:133
+#, php-format
+msgid ""
+"If you would like %s to automatically update your Facebook status with your "
+"latest notice, you need to give it permission."
+msgstr ""
+
+#: facebooksettings.php:146
+#, php-format
+msgid "Allow %s to update my Facebook status"
+msgstr ""
+
+#: facebooksettings.php:156
+msgid "Sync preferences"
+msgstr ""
diff --git a/plugins/FirePHP/FirePHPPlugin.php b/plugins/FirePHP/FirePHPPlugin.php
index 452f79024..d984ec1af 100644
--- a/plugins/FirePHP/FirePHPPlugin.php
+++ b/plugins/FirePHP/FirePHPPlugin.php
@@ -24,11 +24,13 @@ Author URI: http://candrews.integralblue.com/
*
* You should have received a copy of the GNU Affero General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-/**
+ * @category Plugin
* @package MinifyPlugin
* @maintainer Craig Andrews <candrews@integralblue.com>
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
@@ -52,8 +54,8 @@ class FirePHPPlugin extends Plugin
{
static $firephp_priorities = array(FirePHP::ERROR, FirePHP::ERROR, FirePHP::ERROR, FirePHP::ERROR,
FirePHP::WARN, FirePHP::LOG, FirePHP::LOG, FirePHP::INFO);
- $priority = $firephp_priorities[$priority];
- $this->firephp->fb($msg, $priority);
+ $fp_priority = $firephp_priorities[$priority];
+ $this->firephp->fb($msg, $fp_priority);
}
function onPluginVersion(&$versions)
diff --git a/plugins/FirePHP/locale/FirePHP.pot b/plugins/FirePHP/locale/FirePHP.pot
new file mode 100644
index 000000000..fa16f283e
--- /dev/null
+++ b/plugins/FirePHP/locale/FirePHP.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: FirePHPPlugin.php:66
+msgid "The FirePHP plugin writes StatusNet's log output to FirePHP."
+msgstr ""
diff --git a/plugins/GeonamesPlugin.php b/plugins/GeonamesPlugin.php
index 589462ed9..3815a31fa 100644
--- a/plugins/GeonamesPlugin.php
+++ b/plugins/GeonamesPlugin.php
@@ -55,6 +55,12 @@ class GeonamesPlugin extends Plugin
public $username = null;
public $token = null;
public $expiry = 7776000; // 90-day expiry
+ public $timeout = 2; // Web service timeout in seconds.
+ public $timeoutWindow = 60; // Further lookups in this process will be disabled for N seconds after a timeout.
+ public $cachePrefix = null; // Optional shared memcache prefix override
+ // to share lookups between local instances.
+
+ protected $lastTimeout = null; // timestamp of last web service timeout
/**
* convert a name into a Location object
@@ -370,7 +376,7 @@ class GeonamesPlugin extends Plugin
return true;
}
- $url = 'http://sw.geonames.org/' . $location->location_id . '/';
+ $url = 'http://sws.geonames.org/' . $location->location_id . '/';
// it's been filled, so don't process further.
return false;
@@ -408,9 +414,14 @@ class GeonamesPlugin extends Plugin
function cacheKey($attrs)
{
- return common_cache_key('geonames:'.
- implode(',', array_keys($attrs)) . ':'.
- common_keyize(implode(',', array_values($attrs))));
+ $key = 'geonames:' .
+ implode(',', array_keys($attrs)) . ':'.
+ common_keyize(implode(',', array_values($attrs)));
+ if ($this->cachePrefix) {
+ return $this->cachePrefix . ':' . $key;
+ } else {
+ return common_cache_key($key);
+ }
}
function wsUrl($method, $params)
@@ -430,12 +441,24 @@ class GeonamesPlugin extends Plugin
function getGeonames($method, $params)
{
+ if ($this->lastTimeout && (time() - $this->lastTimeout < $this->timeoutWindow)) {
+ throw new Exception("skipping due to recent web service timeout");
+ }
+
$client = HTTPClient::start();
+ $client->setConfig('connect_timeout', $this->timeout);
+ $client->setConfig('timeout', $this->timeout);
- $result = $client->get($this->wsUrl($method, $params));
+ try {
+ $result = $client->get($this->wsUrl($method, $params));
+ } catch (Exception $e) {
+ common_log(LOG_ERR, __METHOD__ . ": " . $e->getMessage());
+ $this->lastTimeout = time();
+ throw $e;
+ }
if (!$result->isOk()) {
- throw new Exception("HTTP error code " . $result->code);
+ throw new Exception("HTTP error code " . $result->getStatus());
}
$body = $result->getBody();
diff --git a/plugins/Gravatar/GravatarPlugin.php b/plugins/Gravatar/GravatarPlugin.php
index 580852072..8a9721ea9 100644
--- a/plugins/Gravatar/GravatarPlugin.php
+++ b/plugins/Gravatar/GravatarPlugin.php
@@ -30,11 +30,13 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
class GravatarPlugin extends Plugin
{
- function onInitializePlugin() {
+ function onInitializePlugin()
+ {
return true;
}
- function onStartAvatarFormData($action) {
+ function onStartAvatarFormData($action)
+ {
$user = common_current_user();
$hasGravatar = $this->hasGravatar($user->id);
@@ -43,7 +45,8 @@ class GravatarPlugin extends Plugin
}
}
- function onEndAvatarFormData(&$action) {
+ function onEndAvatarFormData($action)
+ {
$user = common_current_user();
$hasGravatar = $this->hasGravatar($user->id);
@@ -89,7 +92,8 @@ class GravatarPlugin extends Plugin
}
}
- function onStartAvatarSaveForm($action) {
+ function onStartAvatarSaveForm($action)
+ {
if ($action->arg('add')) {
$result = $this->gravatar_save();
@@ -178,7 +182,8 @@ class GravatarPlugin extends Plugin
'success' => true);
}
- function gravatar_url($email, $size) {
+ function gravatar_url($email, $size)
+ {
$url = "http://www.gravatar.com/avatar.php?gravatar_id=".
md5(strtolower($email)).
"&default=".urlencode(Avatar::defaultImage($size)).
@@ -197,4 +202,4 @@ class GravatarPlugin extends Plugin
return true;
}
-}
+} \ No newline at end of file
diff --git a/plugins/Gravatar/locale/Gravatar.po b/plugins/Gravatar/locale/Gravatar.pot
index d7275b929..d3a4cd86b 100644
--- a/plugins/Gravatar/locale/Gravatar.po
+++ b/plugins/Gravatar/locale/Gravatar.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/plugins/Imap/ImapPlugin.php b/plugins/Imap/ImapPlugin.php
index d1e920b00..66be799d3 100644
--- a/plugins/Imap/ImapPlugin.php
+++ b/plugins/Imap/ImapPlugin.php
@@ -21,8 +21,9 @@
*
* @category Plugin
* @package StatusNet
- * @author Zach Copley <zach@status.net>
+ * @author Craig Andrews <candrews@integralblue.com
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -37,6 +38,7 @@ if (!defined('STATUSNET')) {
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Imap/imapmanager.php b/plugins/Imap/imapmanager.php
index e4fda5809..0bbd42e78 100644
--- a/plugins/Imap/imapmanager.php
+++ b/plugins/Imap/imapmanager.php
@@ -23,6 +23,8 @@
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
* @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @maintainer Craig Andrews <candrews@integralblue.com>
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Imap/locale/Imap.pot b/plugins/Imap/locale/Imap.pot
new file mode 100644
index 000000000..ee8452aaa
--- /dev/null
+++ b/plugins/Imap/locale/Imap.pot
@@ -0,0 +1,27 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: imapmailhandler.php:28
+msgid "Error"
+msgstr ""
+
+#: ImapPlugin.php:101
+msgid ""
+"The IMAP plugin allows for StatusNet to check a POP or IMAP mailbox for "
+"incoming mail containing user posts."
+msgstr ""
diff --git a/plugins/InfiniteScroll/InfiniteScrollPlugin.php b/plugins/InfiniteScroll/InfiniteScrollPlugin.php
index a4d1a5d05..50c1b5a20 100644
--- a/plugins/InfiniteScroll/InfiniteScrollPlugin.php
+++ b/plugins/InfiniteScroll/InfiniteScrollPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/InfiniteScroll/locale/InfiniteScroll.pot b/plugins/InfiniteScroll/locale/InfiniteScroll.pot
new file mode 100644
index 000000000..a0f466fcb
--- /dev/null
+++ b/plugins/InfiniteScroll/locale/InfiniteScroll.pot
@@ -0,0 +1,25 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: InfiniteScrollPlugin.php:54
+msgid ""
+"Infinite Scroll adds the following functionality to your StatusNet "
+"installation: When a user scrolls towards the bottom of the page, the next "
+"page of notices is automatically retrieved and appended. This means they "
+"never need to click \"Next Page\", which dramatically increases stickiness."
+msgstr ""
diff --git a/plugins/LdapAuthentication/LdapAuthenticationPlugin.php b/plugins/LdapAuthentication/LdapAuthenticationPlugin.php
index 483209676..52d326287 100644
--- a/plugins/LdapAuthentication/LdapAuthenticationPlugin.php
+++ b/plugins/LdapAuthentication/LdapAuthenticationPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -31,48 +31,25 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
-require_once 'Net/LDAP2.php';
-
class LdapAuthenticationPlugin extends AuthenticationPlugin
{
- public $host=null;
- public $port=null;
- public $version=null;
- public $starttls=null;
- public $binddn=null;
- public $bindpw=null;
- public $basedn=null;
- public $options=null;
- public $filter=null;
- public $scope=null;
- public $password_encoding=null;
- public $attributes=array();
-
function onInitializePlugin(){
parent::onInitializePlugin();
- if(!isset($this->host)){
- throw new Exception("must specify a host");
- }
- if(!isset($this->basedn)){
- throw new Exception("must specify a basedn");
- }
if(!isset($this->attributes['nickname'])){
throw new Exception("must specify a nickname attribute");
}
- if(!isset($this->attributes['username'])){
- throw new Exception("must specify a username attribute");
- }
if($this->password_changeable && (! isset($this->attributes['password']) || !isset($this->password_encoding))){
throw new Exception("if password_changeable is set, the password attribute and password_encoding must also be specified");
}
+ $this->ldapCommon = new LdapCommon(get_object_vars($this));
}
function onAutoload($cls)
{
switch ($cls)
{
- case 'MemcacheSchemaCache':
- require_once(INSTALLDIR.'/plugins/LdapAuthentication/MemcacheSchemaCache.php');
+ case 'LdapCommon':
+ require_once(INSTALLDIR.'/plugins/LdapCommon/LdapCommon.php');
return false;
}
}
@@ -107,19 +84,7 @@ class LdapAuthenticationPlugin extends AuthenticationPlugin
function checkPassword($username, $password)
{
- $entry = $this->ldap_get_user($username);
- if(!$entry){
- return false;
- }else{
- $config = $this->ldap_get_config();
- $config['binddn']=$entry->dn();
- $config['bindpw']=$password;
- if($this->ldap_get_connection($config)){
- return true;
- }else{
- return false;
- }
- }
+ return $this->ldapCommon->checkPassword($username,$password);
}
function autoRegister($username, $nickname)
@@ -127,11 +92,16 @@ class LdapAuthenticationPlugin extends AuthenticationPlugin
if(is_null($nickname)){
$nickname = $username;
}
- $entry = $this->ldap_get_user($username,$this->attributes);
+ $entry = $this->ldapCommon->get_user($username,$this->attributes);
if($entry){
$registration_data = array();
foreach($this->attributes as $sn_attribute=>$ldap_attribute){
- $registration_data[$sn_attribute]=$entry->getValue($ldap_attribute,'single');
+ //ldap won't let us read a user's password,
+ //and we're going to set the password to a random string later anyways,
+ //so don't bother trying to read it.
+ if($sn_attribute != 'password'){
+ $registration_data[$sn_attribute]=$entry->getValue($ldap_attribute,'single');
+ }
}
if(isset($registration_data['email']) && !empty($registration_data['email'])){
$registration_data['email_confirmed']=true;
@@ -148,45 +118,12 @@ class LdapAuthenticationPlugin extends AuthenticationPlugin
function changePassword($username,$oldpassword,$newpassword)
{
- if(! isset($this->attributes['password']) || !isset($this->password_encoding)){
- //throw new Exception(_('Sorry, changing LDAP passwords is not supported at this time'));
- return false;
- }
- $entry = $this->ldap_get_user($username);
- if(!$entry){
- return false;
- }else{
- $config = $this->ldap_get_config();
- $config['binddn']=$entry->dn();
- $config['bindpw']=$oldpassword;
- if($ldap = $this->ldap_get_connection($config)){
- $entry = $this->ldap_get_user($username,array(),$ldap);
-
- $newCryptedPassword = $this->hashPassword($newpassword, $this->password_encoding);
- if ($newCryptedPassword===false) {
- return false;
- }
- if($this->password_encoding=='ad') {
- //TODO I believe this code will work once this bug is fixed: http://pear.php.net/bugs/bug.php?id=16796
- $oldCryptedPassword = $this->hashPassword($oldpassword, $this->password_encoding);
- $entry->delete( array($this->attributes['password'] => $oldCryptedPassword ));
- }
- $entry->replace( array($this->attributes['password'] => $newCryptedPassword ), true);
- if( Net_LDAP2::isError($entry->upate()) ) {
- return false;
- }
- return true;
- }else{
- return false;
- }
- }
-
- return false;
+ return $this->ldapCommon->changePassword($username,$oldpassword,$newpassword);
}
function suggestNicknameForUsername($username)
{
- $entry = $this->ldap_get_user($username, $this->attributes);
+ $entry = $this->ldapCommon->get_user($username, $this->attributes);
if(!$entry){
//this really shouldn't happen
$nickname = $username;
@@ -198,203 +135,6 @@ class LdapAuthenticationPlugin extends AuthenticationPlugin
}
return common_nicknamize($nickname);
}
-
- //---utility functions---//
- function ldap_get_config(){
- $config = array();
- $keys = array('host','port','version','starttls','binddn','bindpw','basedn','options','filter','scope');
- foreach($keys as $key){
- $value = $this->$key;
- if($value!==null){
- $config[$key]=$value;
- }
- }
- return $config;
- }
-
- function ldap_get_connection($config = null){
- if($config == null && isset($this->default_ldap)){
- return $this->default_ldap;
- }
-
- //cannot use Net_LDAP2::connect() as StatusNet uses
- //PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'handleError');
- //PEAR handling can be overridden on instance objects, so we do that.
- $ldap = new Net_LDAP2(isset($config)?$config:$this->ldap_get_config());
- $ldap->setErrorHandling(PEAR_ERROR_RETURN);
- $err=$ldap->bind();
- if (Net_LDAP2::isError($err)) {
- // if we were called with a config, assume caller will handle
- // incorrect username/password (LDAP_INVALID_CREDENTIALS)
- if (isset($config) && $err->getCode() == 0x31) {
- return null;
- }
- throw new Exception('Could not connect to LDAP server: '.$err->getMessage());
- }
- if($config == null) $this->default_ldap=$ldap;
-
- $c = common_memcache();
- if (!empty($c)) {
- $cacheObj = new MemcacheSchemaCache(
- array('c'=>$c,
- 'cacheKey' => common_cache_key('ldap_schema:' . crc32(serialize($config)))));
- $ldap->registerSchemaCache($cacheObj);
- }
- return $ldap;
- }
-
- /**
- * get an LDAP entry for a user with a given username
- *
- * @param string $username
- * $param array $attributes LDAP attributes to retrieve
- * @return string DN
- */
- function ldap_get_user($username,$attributes=array(),$ldap=null){
- if($ldap==null) {
- $ldap = $this->ldap_get_connection();
- }
- $filter = Net_LDAP2_Filter::create($this->attributes['username'], 'equals', $username);
- $options = array(
- 'attributes' => $attributes
- );
- $search = $ldap->search($this->basedn, $filter, $options);
-
- if (PEAR::isError($search)) {
- common_log(LOG_WARNING, 'Error while getting DN for user: '.$search->getMessage());
- return false;
- }
-
- $searchcount = $search->count();
- if($searchcount == 0) {
- return false;
- }else if($searchcount == 1) {
- $entry = $search->shiftEntry();
- return $entry;
- }else{
- common_log(LOG_WARNING, 'Found ' . $searchcount . ' ldap user with the username: ' . $username);
- return false;
- }
- }
-
- /**
- * Code originaly from the phpLDAPadmin development team
- * http://phpldapadmin.sourceforge.net/
- *
- * Hashes a password and returns the hash based on the specified enc_type.
- *
- * @param string $passwordClear The password to hash in clear text.
- * @param string $encodageType Standard LDAP encryption type which must be one of
- * crypt, ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, or clear.
- * @return string The hashed password.
- *
- */
-
- function hashPassword( $passwordClear, $encodageType )
- {
- $encodageType = strtolower( $encodageType );
- switch( $encodageType ) {
- case 'crypt':
- $cryptedPassword = '{CRYPT}' . crypt($passwordClear,$this->randomSalt(2));
- break;
-
- case 'ext_des':
- // extended des crypt. see OpenBSD crypt man page.
- if ( ! defined( 'CRYPT_EXT_DES' ) || CRYPT_EXT_DES == 0 ) {return FALSE;} //Your system crypt library does not support extended DES encryption.
- $cryptedPassword = '{CRYPT}' . crypt( $passwordClear, '_' . $this->randomSalt(8) );
- break;
-
- case 'md5crypt':
- if( ! defined( 'CRYPT_MD5' ) || CRYPT_MD5 == 0 ) {return FALSE;} //Your system crypt library does not support md5crypt encryption.
- $cryptedPassword = '{CRYPT}' . crypt( $passwordClear , '$1$' . $this->randomSalt(9) );
- break;
-
- case 'blowfish':
- if( ! defined( 'CRYPT_BLOWFISH' ) || CRYPT_BLOWFISH == 0 ) {return FALSE;} //Your system crypt library does not support blowfish encryption.
- $cryptedPassword = '{CRYPT}' . crypt( $passwordClear , '$2a$12$' . $this->randomSalt(13) ); // hardcoded to second blowfish version and set number of rounds
- break;
-
- case 'md5':
- $cryptedPassword = '{MD5}' . base64_encode( pack( 'H*' , md5( $passwordClear) ) );
- break;
-
- case 'sha':
- if( function_exists('sha1') ) {
- // use php 4.3.0+ sha1 function, if it is available.
- $cryptedPassword = '{SHA}' . base64_encode( pack( 'H*' , sha1( $passwordClear) ) );
- } elseif( function_exists( 'mhash' ) ) {
- $cryptedPassword = '{SHA}' . base64_encode( mhash( MHASH_SHA1, $passwordClear) );
- } else {
- return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
- }
- break;
-
- case 'ssha':
- if( function_exists( 'mhash' ) && function_exists( 'mhash_keygen_s2k' ) ) {
- mt_srand( (double) microtime() * 1000000 );
- $salt = mhash_keygen_s2k( MHASH_SHA1, $passwordClear, substr( pack( "h*", md5( mt_rand() ) ), 0, 8 ), 4 );
- $cryptedPassword = "{SSHA}".base64_encode( mhash( MHASH_SHA1, $passwordClear.$salt ).$salt );
- } else {
- return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
- }
- break;
-
- case 'smd5':
- if( function_exists( 'mhash' ) && function_exists( 'mhash_keygen_s2k' ) ) {
- mt_srand( (double) microtime() * 1000000 );
- $salt = mhash_keygen_s2k( MHASH_MD5, $passwordClear, substr( pack( "h*", md5( mt_rand() ) ), 0, 8 ), 4 );
- $cryptedPassword = "{SMD5}".base64_encode( mhash( MHASH_MD5, $passwordClear.$salt ).$salt );
- } else {
- return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
- }
- break;
-
- case 'ad':
- $cryptedPassword = '';
- $passwordClear = "\"" . $passwordClear . "\"";
- $len = strlen($passwordClear);
- for ($i = 0; $i < $len; $i++) {
- $cryptedPassword .= "{$passwordClear{$i}}\000";
- }
-
- case 'clear':
- default:
- $cryptedPassword = $passwordClear;
- }
-
- return $cryptedPassword;
- }
-
- /**
- * Code originaly from the phpLDAPadmin development team
- * http://phpldapadmin.sourceforge.net/
- *
- * Used to generate a random salt for crypt-style passwords. Salt strings are used
- * to make pre-built hash cracking dictionaries difficult to use as the hash algorithm uses
- * not only the user's password but also a randomly generated string. The string is
- * stored as the first N characters of the hash for reference of hashing algorithms later.
- *
- * --- added 20021125 by bayu irawan <bayuir@divnet.telkom.co.id> ---
- * --- ammended 20030625 by S C Rigler <srigler@houston.rr.com> ---
- *
- * @param int $length The length of the salt string to generate.
- * @return string The generated salt string.
- */
-
- function randomSalt( $length )
- {
- $possible = '0123456789'.
- 'abcdefghijklmnopqrstuvwxyz'.
- 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.
- './';
- $str = "";
- mt_srand((double)microtime() * 1000000);
-
- while( strlen( $str ) < $length )
- $str .= substr( $possible, ( rand() % strlen( $possible ) ), 1 );
-
- return $str;
- }
function onPluginVersion(&$versions)
{
diff --git a/plugins/LdapAuthentication/locale/LdapAuthentication.pot b/plugins/LdapAuthentication/locale/LdapAuthentication.pot
new file mode 100644
index 000000000..8f09b1e51
--- /dev/null
+++ b/plugins/LdapAuthentication/locale/LdapAuthentication.pot
@@ -0,0 +1,23 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: LdapAuthenticationPlugin.php:146
+msgid ""
+"The LDAP Authentication plugin allows for StatusNet to handle authentication "
+"through LDAP."
+msgstr ""
diff --git a/plugins/LdapAuthorization/LdapAuthorizationPlugin.php b/plugins/LdapAuthorization/LdapAuthorizationPlugin.php
index 042b2db8d..3842385cf 100644
--- a/plugins/LdapAuthorization/LdapAuthorizationPlugin.php
+++ b/plugins/LdapAuthorization/LdapAuthorizationPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -31,41 +31,28 @@ if (!defined('STATUSNET') && !defined('LACONICA')) {
exit(1);
}
-require_once 'Net/LDAP2.php';
-
class LdapAuthorizationPlugin extends AuthorizationPlugin
{
- public $host=null;
- public $port=null;
- public $version=null;
- public $starttls=null;
- public $binddn=null;
- public $bindpw=null;
- public $basedn=null;
- public $options=null;
- public $filter=null;
- public $scope=null;
- public $provider_name = null;
- public $uniqueMember_attribute = null;
public $roles_to_groups = array();
public $login_group = null;
- public $attributes = array();
function onInitializePlugin(){
- if(!isset($this->host)){
- throw new Exception("must specify a host");
- }
- if(!isset($this->basedn)){
- throw new Exception("must specify a basedn");
- }
if(!isset($this->provider_name)){
throw new Exception("provider_name must be set. Use the provider_name from the LDAP Authentication plugin.");
}
if(!isset($this->uniqueMember_attribute)){
throw new Exception("uniqueMember_attribute must be set.");
}
- if(!isset($this->attributes['username'])){
- throw new Exception("username attribute must be set.");
+ $this->ldapCommon = new LdapCommon(get_object_vars($this));
+ }
+
+ function onAutoload($cls)
+ {
+ switch ($cls)
+ {
+ case 'LdapCommon':
+ require_once(INSTALLDIR.'/plugins/LdapCommon/LdapCommon.php');
+ return false;
}
}
@@ -75,17 +62,17 @@ class LdapAuthorizationPlugin extends AuthorizationPlugin
$user_username->user_id=$user->id;
$user_username->provider_name=$this->provider_name;
if($user_username->find() && $user_username->fetch()){
- $entry = $this->ldap_get_user($user_username->username);
+ $entry = $this->ldapCommon->get_user($user_username->username);
if($entry){
if(isset($this->login_group)){
if(is_array($this->login_group)){
foreach($this->login_group as $group){
- if($this->ldap_is_dn_member_of_group($entry->dn(),$group)){
+ if($this->ldapCommon->is_dn_member_of_group($entry->dn(),$group)){
return true;
}
}
}else{
- if($this->ldap_is_dn_member_of_group($entry->dn(),$this->login_group)){
+ if($this->ldapCommon->is_dn_member_of_group($entry->dn(),$this->login_group)){
return true;
}
}
@@ -107,17 +94,17 @@ class LdapAuthorizationPlugin extends AuthorizationPlugin
$user_username->user_id=$profile->id;
$user_username->provider_name=$this->provider_name;
if($user_username->find() && $user_username->fetch()){
- $entry = $this->ldap_get_user($user_username->username);
+ $entry = $this->ldapCommon->get_user($user_username->username);
if($entry){
if(isset($this->roles_to_groups[$name])){
if(is_array($this->roles_to_groups[$name])){
foreach($this->roles_to_groups[$name] as $group){
- if($this->ldap_is_dn_member_of_group($entry->dn(),$group)){
+ if($this->ldapCommon->is_dn_member_of_group($entry->dn(),$group)){
return true;
}
}
}else{
- if($this->ldap_is_dn_member_of_group($entry->dn(),$this->roles_to_groups[$name])){
+ if($this->ldapCommon->is_dn_member_of_group($entry->dn(),$this->roles_to_groups[$name])){
return true;
}
}
@@ -127,94 +114,6 @@ class LdapAuthorizationPlugin extends AuthorizationPlugin
return false;
}
- function ldap_is_dn_member_of_group($userDn, $groupDn)
- {
- $ldap = $this->ldap_get_connection();
- $link = $ldap->getLink();
- $r = @ldap_compare($link, $groupDn, $this->uniqueMember_attribute, $userDn);
- if ($r === true){
- return true;
- }else if($r === false){
- return false;
- }else{
- common_log(LOG_ERR, "LDAP error determining if userDn=$userDn is a member of groupDn=groupDn using uniqueMember_attribute=$this->uniqueMember_attribute error: ".ldap_error($link));
- return false;
- }
- }
-
- function ldap_get_config(){
- $config = array();
- $keys = array('host','port','version','starttls','binddn','bindpw','basedn','options','filter','scope');
- foreach($keys as $key){
- $value = $this->$key;
- if($value!==null){
- $config[$key]=$value;
- }
- }
- return $config;
- }
-
- //-----the below function were copied from LDAPAuthenticationPlugin. They will be moved to a utility class soon.----\\
- function ldap_get_connection($config = null){
- if($config == null && isset($this->default_ldap)){
- return $this->default_ldap;
- }
-
- //cannot use Net_LDAP2::connect() as StatusNet uses
- //PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'handleError');
- //PEAR handling can be overridden on instance objects, so we do that.
- $ldap = new Net_LDAP2(isset($config)?$config:$this->ldap_get_config());
- $ldap->setErrorHandling(PEAR_ERROR_RETURN);
- $err=$ldap->bind();
- if (Net_LDAP2::isError($err)) {
- // if we were called with a config, assume caller will handle
- // incorrect username/password (LDAP_INVALID_CREDENTIALS)
- if (isset($config) && $err->getCode() == 0x31) {
- return null;
- }
- throw new Exception('Could not connect to LDAP server: '.$err->getMessage());
- return false;
- }
- if($config == null) $this->default_ldap=$ldap;
- return $ldap;
- }
-
- /**
- * get an LDAP entry for a user with a given username
- *
- * @param string $username
- * $param array $attributes LDAP attributes to retrieve
- * @return string DN
- */
- function ldap_get_user($username,$attributes=array(),$ldap=null){
- if($ldap==null) {
- $ldap = $this->ldap_get_connection();
- }
- if(! $ldap) {
- throw new Exception("Could not connect to LDAP");
- }
- $filter = Net_LDAP2_Filter::create($this->attributes['username'], 'equals', $username);
- $options = array(
- 'attributes' => $attributes
- );
- $search = $ldap->search(null,$filter,$options);
-
- if (PEAR::isError($search)) {
- common_log(LOG_WARNING, 'Error while getting DN for user: '.$search->getMessage());
- return false;
- }
-
- if($search->count()==0){
- return false;
- }else if($search->count()==1){
- $entry = $search->shiftEntry();
- return $entry;
- }else{
- common_log(LOG_WARNING, 'Found ' . $search->count() . ' ldap user with the username: ' . $username);
- return false;
- }
- }
-
function onPluginVersion(&$versions)
{
$versions[] = array('name' => 'LDAP Authorization',
diff --git a/plugins/LdapAuthorization/locale/LdapAuthorization.pot b/plugins/LdapAuthorization/locale/LdapAuthorization.pot
new file mode 100644
index 000000000..8156f6146
--- /dev/null
+++ b/plugins/LdapAuthorization/locale/LdapAuthorization.pot
@@ -0,0 +1,23 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: LdapAuthorizationPlugin.php:124
+msgid ""
+"The LDAP Authorization plugin allows for StatusNet to handle authorization "
+"through LDAP."
+msgstr ""
diff --git a/plugins/LdapCommon/LdapCommon.php b/plugins/LdapCommon/LdapCommon.php
new file mode 100644
index 000000000..1f1647a75
--- /dev/null
+++ b/plugins/LdapCommon/LdapCommon.php
@@ -0,0 +1,369 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Utility class of LDAP functions
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) {
+ exit(1);
+}
+
+// We bundle the Net/LDAP2 library...
+set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/extlib');
+
+class LdapCommon
+{
+ protected static $ldap_connections = array();
+ public $host=null;
+ public $port=null;
+ public $version=null;
+ public $starttls=null;
+ public $binddn=null;
+ public $bindpw=null;
+ public $basedn=null;
+ public $options=null;
+ public $filter=null;
+ public $scope=null;
+ public $uniqueMember_attribute = null;
+ public $attributes=array();
+ public $password_encoding=null;
+
+ public function __construct($config)
+ {
+ Event::addHandler('Autoload',array($this,'onAutoload'));
+ foreach($config as $key=>$value) {
+ $this->$key = $value;
+ }
+ $this->ldap_config = $this->get_ldap_config();
+
+ if(!isset($this->host)){
+ throw new Exception("must specify a host");
+ }
+ if(!isset($this->basedn)){
+ throw new Exception("must specify a basedn");
+ }
+ if(!isset($this->attributes['username'])){
+ throw new Exception("username attribute must be set.");
+ }
+ }
+
+ function onAutoload($cls)
+ {
+ switch ($cls)
+ {
+ case 'MemcacheSchemaCache':
+ require_once(INSTALLDIR.'/plugins/LdapCommon/MemcacheSchemaCache.php');
+ return false;
+ case 'Net_LDAP2':
+ require_once 'Net/LDAP2.php';
+ return false;
+ case 'Net_LDAP2_Filter':
+ require_once 'Net/LDAP2/Filter.php';
+ return false;
+ case 'Net_LDAP2_Filter':
+ require_once 'Net/LDAP2/Filter.php';
+ return false;
+ case 'Net_LDAP2_Entry':
+ require_once 'Net/LDAP2/Entry.php';
+ return false;
+ }
+ }
+
+ function get_ldap_config(){
+ $config = array();
+ $keys = array('host','port','version','starttls','binddn','bindpw','basedn','options','filter','scope');
+ foreach($keys as $key){
+ $value = $this->$key;
+ if($value!==null){
+ $config[$key]=$value;
+ }
+ }
+ return $config;
+ }
+
+ function get_ldap_connection($config = null){
+ if($config == null) {
+ $config = $this->ldap_config;
+ }
+ $config_id = crc32(serialize($config));
+ if(array_key_exists($config_id,self::$ldap_connections)) {
+ $ldap = self::$ldap_connections[$config_id];
+ } else {
+ //cannot use Net_LDAP2::connect() as StatusNet uses
+ //PEAR::setErrorHandling(PEAR_ERROR_CALLBACK, 'handleError');
+ //PEAR handling can be overridden on instance objects, so we do that.
+ $ldap = new Net_LDAP2($config);
+ $ldap->setErrorHandling(PEAR_ERROR_RETURN);
+ $err=$ldap->bind();
+ if (Net_LDAP2::isError($err)) {
+ // if we were called with a config, assume caller will handle
+ // incorrect username/password (LDAP_INVALID_CREDENTIALS)
+ if (isset($config) && $err->getCode() == 0x31) {
+ throw new LdapInvalidCredentialsException('Could not connect to LDAP server: '.$err->getMessage());
+ }
+ throw new Exception('Could not connect to LDAP server: '.$err->getMessage());
+ }
+ $c = common_memcache();
+ if (!empty($c)) {
+ $cacheObj = new MemcacheSchemaCache(
+ array('c'=>$c,
+ 'cacheKey' => common_cache_key('ldap_schema:' . $config_id)));
+ $ldap->registerSchemaCache($cacheObj);
+ }
+ self::$ldap_connections[$config_id] = $ldap;
+ }
+ return $ldap;
+ }
+
+ function checkPassword($username, $password)
+ {
+ $entry = $this->get_user($username);
+ if(!$entry){
+ return false;
+ }else{
+ $config = $this->get_ldap_config();
+ $config['binddn']=$entry->dn();
+ $config['bindpw']=$password;
+ try {
+ $this->get_ldap_connection($config);
+ } catch (LdapInvalidCredentialsException $e) {
+ return false;
+ }
+ return true;
+ }
+ }
+
+ function changePassword($username,$oldpassword,$newpassword)
+ {
+ if(! isset($this->attributes['password']) || !isset($this->password_encoding)){
+ //throw new Exception(_('Sorry, changing LDAP passwords is not supported at this time'));
+ return false;
+ }
+ $entry = $this->get_user($username);
+ if(!$entry){
+ return false;
+ }else{
+ $config = $this->get_ldap_config();
+ $config['binddn']=$entry->dn();
+ $config['bindpw']=$oldpassword;
+ try {
+ $ldap = $this->get_ldap_connection($config);
+
+ $entry = $this->get_user($username,array(),$ldap);
+
+ $newCryptedPassword = $this->hashPassword($newpassword, $this->password_encoding);
+ if ($newCryptedPassword===false) {
+ return false;
+ }
+ if($this->password_encoding=='ad') {
+ //TODO I believe this code will work once this bug is fixed: http://pear.php.net/bugs/bug.php?id=16796
+ $oldCryptedPassword = $this->hashPassword($oldpassword, $this->password_encoding);
+ $entry->delete( array($this->attributes['password'] => $oldCryptedPassword ));
+ }
+ $entry->replace( array($this->attributes['password'] => $newCryptedPassword ), true);
+ if( Net_LDAP2::isError($entry->upate()) ) {
+ return false;
+ }
+ return true;
+ } catch (LdapInvalidCredentialsException $e) {
+ return false;
+ }
+ }
+
+ return false;
+ }
+
+ function is_dn_member_of_group($userDn, $groupDn)
+ {
+ $ldap = $this->get_ldap_connection();
+ $link = $ldap->getLink();
+ $r = @ldap_compare($link, $groupDn, $this->uniqueMember_attribute, $userDn);
+ if ($r === true){
+ return true;
+ }else if($r === false){
+ return false;
+ }else{
+ common_log(LOG_ERR, "LDAP error determining if userDn=$userDn is a member of groupDn=$groupDn using uniqueMember_attribute=$this->uniqueMember_attribute error: ".ldap_error($link));
+ return false;
+ }
+ }
+
+ /**
+ * get an LDAP entry for a user with a given username
+ *
+ * @param string $username
+ * $param array $attributes LDAP attributes to retrieve
+ * @return string DN
+ */
+ function get_user($username,$attributes=array()){
+ $ldap = $this->get_ldap_connection();
+ $filter = Net_LDAP2_Filter::create($this->attributes['username'], 'equals', $username);
+ $options = array(
+ 'attributes' => $attributes
+ );
+ $search = $ldap->search(null,$filter,$options);
+
+ if (PEAR::isError($search)) {
+ common_log(LOG_WARNING, 'Error while getting DN for user: '.$search->getMessage());
+ return false;
+ }
+
+ if($search->count()==0){
+ return false;
+ }else if($search->count()==1){
+ $entry = $search->shiftEntry();
+ return $entry;
+ }else{
+ common_log(LOG_WARNING, 'Found ' . $search->count() . ' ldap user with the username: ' . $username);
+ return false;
+ }
+ }
+
+ /**
+ * Code originaly from the phpLDAPadmin development team
+ * http://phpldapadmin.sourceforge.net/
+ *
+ * Hashes a password and returns the hash based on the specified enc_type.
+ *
+ * @param string $passwordClear The password to hash in clear text.
+ * @param string $encodageType Standard LDAP encryption type which must be one of
+ * crypt, ext_des, md5crypt, blowfish, md5, sha, smd5, ssha, or clear.
+ * @return string The hashed password.
+ *
+ */
+
+ function hashPassword( $passwordClear, $encodageType )
+ {
+ $encodageType = strtolower( $encodageType );
+ switch( $encodageType ) {
+ case 'crypt':
+ $cryptedPassword = '{CRYPT}' . crypt($passwordClear,$this->randomSalt(2));
+ break;
+
+ case 'ext_des':
+ // extended des crypt. see OpenBSD crypt man page.
+ if ( ! defined( 'CRYPT_EXT_DES' ) || CRYPT_EXT_DES == 0 ) {return FALSE;} //Your system crypt library does not support extended DES encryption.
+ $cryptedPassword = '{CRYPT}' . crypt( $passwordClear, '_' . $this->randomSalt(8) );
+ break;
+
+ case 'md5crypt':
+ if( ! defined( 'CRYPT_MD5' ) || CRYPT_MD5 == 0 ) {return FALSE;} //Your system crypt library does not support md5crypt encryption.
+ $cryptedPassword = '{CRYPT}' . crypt( $passwordClear , '$1$' . $this->randomSalt(9) );
+ break;
+
+ case 'blowfish':
+ if( ! defined( 'CRYPT_BLOWFISH' ) || CRYPT_BLOWFISH == 0 ) {return FALSE;} //Your system crypt library does not support blowfish encryption.
+ $cryptedPassword = '{CRYPT}' . crypt( $passwordClear , '$2a$12$' . $this->randomSalt(13) ); // hardcoded to second blowfish version and set number of rounds
+ break;
+
+ case 'md5':
+ $cryptedPassword = '{MD5}' . base64_encode( pack( 'H*' , md5( $passwordClear) ) );
+ break;
+
+ case 'sha':
+ if( function_exists('sha1') ) {
+ // use php 4.3.0+ sha1 function, if it is available.
+ $cryptedPassword = '{SHA}' . base64_encode( pack( 'H*' , sha1( $passwordClear) ) );
+ } elseif( function_exists( 'mhash' ) ) {
+ $cryptedPassword = '{SHA}' . base64_encode( mhash( MHASH_SHA1, $passwordClear) );
+ } else {
+ return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
+ }
+ break;
+
+ case 'ssha':
+ if( function_exists( 'mhash' ) && function_exists( 'mhash_keygen_s2k' ) ) {
+ mt_srand( (double) microtime() * 1000000 );
+ $salt = mhash_keygen_s2k( MHASH_SHA1, $passwordClear, substr( pack( "h*", md5( mt_rand() ) ), 0, 8 ), 4 );
+ $cryptedPassword = "{SSHA}".base64_encode( mhash( MHASH_SHA1, $passwordClear.$salt ).$salt );
+ } else {
+ return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
+ }
+ break;
+
+ case 'smd5':
+ if( function_exists( 'mhash' ) && function_exists( 'mhash_keygen_s2k' ) ) {
+ mt_srand( (double) microtime() * 1000000 );
+ $salt = mhash_keygen_s2k( MHASH_MD5, $passwordClear, substr( pack( "h*", md5( mt_rand() ) ), 0, 8 ), 4 );
+ $cryptedPassword = "{SMD5}".base64_encode( mhash( MHASH_MD5, $passwordClear.$salt ).$salt );
+ } else {
+ return FALSE; //Your PHP install does not have the mhash() function. Cannot do SHA hashes.
+ }
+ break;
+
+ case 'ad':
+ $cryptedPassword = '';
+ $passwordClear = "\"" . $passwordClear . "\"";
+ $len = strlen($passwordClear);
+ for ($i = 0; $i < $len; $i++) {
+ $cryptedPassword .= "{$passwordClear{$i}}\000";
+ }
+
+ case 'clear':
+ default:
+ $cryptedPassword = $passwordClear;
+ }
+
+ return $cryptedPassword;
+ }
+
+ /**
+ * Code originaly from the phpLDAPadmin development team
+ * http://phpldapadmin.sourceforge.net/
+ *
+ * Used to generate a random salt for crypt-style passwords. Salt strings are used
+ * to make pre-built hash cracking dictionaries difficult to use as the hash algorithm uses
+ * not only the user's password but also a randomly generated string. The string is
+ * stored as the first N characters of the hash for reference of hashing algorithms later.
+ *
+ * --- added 20021125 by bayu irawan <bayuir@divnet.telkom.co.id> ---
+ * --- ammended 20030625 by S C Rigler <srigler@houston.rr.com> ---
+ *
+ * @param int $length The length of the salt string to generate.
+ * @return string The generated salt string.
+ */
+
+ function randomSalt( $length )
+ {
+ $possible = '0123456789'.
+ 'abcdefghijklmnopqrstuvwxyz'.
+ 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.
+ './';
+ $str = "";
+ mt_srand((double)microtime() * 1000000);
+
+ while( strlen( $str ) < $length )
+ $str .= substr( $possible, ( rand() % strlen( $possible ) ), 1 );
+
+ return $str;
+ }
+
+}
+
+class LdapInvalidCredentialsException extends Exception
+{
+
+}
diff --git a/plugins/LdapAuthentication/MemcacheSchemaCache.php b/plugins/LdapCommon/MemcacheSchemaCache.php
index 6b91d17d6..4ee2e8e16 100644
--- a/plugins/LdapAuthentication/MemcacheSchemaCache.php
+++ b/plugins/LdapCommon/MemcacheSchemaCache.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/extlib/Net/LDAP2.php b/plugins/LdapCommon/extlib/Net/LDAP2.php
index 26f5e7560..26f5e7560 100644
--- a/extlib/Net/LDAP2.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2.php
diff --git a/extlib/Net/LDAP2/Entry.php b/plugins/LdapCommon/extlib/Net/LDAP2/Entry.php
index 66de96678..66de96678 100644
--- a/extlib/Net/LDAP2/Entry.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/Entry.php
diff --git a/extlib/Net/LDAP2/Filter.php b/plugins/LdapCommon/extlib/Net/LDAP2/Filter.php
index 0723edab2..0723edab2 100644
--- a/extlib/Net/LDAP2/Filter.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/Filter.php
diff --git a/extlib/Net/LDAP2/LDIF.php b/plugins/LdapCommon/extlib/Net/LDAP2/LDIF.php
index 34f3e75dd..34f3e75dd 100644
--- a/extlib/Net/LDAP2/LDIF.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/LDIF.php
diff --git a/extlib/Net/LDAP2/RootDSE.php b/plugins/LdapCommon/extlib/Net/LDAP2/RootDSE.php
index 8dc81fd4f..8dc81fd4f 100644
--- a/extlib/Net/LDAP2/RootDSE.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/RootDSE.php
diff --git a/extlib/Net/LDAP2/Schema.php b/plugins/LdapCommon/extlib/Net/LDAP2/Schema.php
index b590eabc5..b590eabc5 100644
--- a/extlib/Net/LDAP2/Schema.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/Schema.php
diff --git a/extlib/Net/LDAP2/SchemaCache.interface.php b/plugins/LdapCommon/extlib/Net/LDAP2/SchemaCache.interface.php
index e0c3094c4..e0c3094c4 100644
--- a/extlib/Net/LDAP2/SchemaCache.interface.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/SchemaCache.interface.php
diff --git a/extlib/Net/LDAP2/Search.php b/plugins/LdapCommon/extlib/Net/LDAP2/Search.php
index de4fde122..de4fde122 100644
--- a/extlib/Net/LDAP2/Search.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/Search.php
diff --git a/extlib/Net/LDAP2/SimpleFileSchemaCache.php b/plugins/LdapCommon/extlib/Net/LDAP2/SimpleFileSchemaCache.php
index 8019654ac..8019654ac 100644
--- a/extlib/Net/LDAP2/SimpleFileSchemaCache.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/SimpleFileSchemaCache.php
diff --git a/extlib/Net/LDAP2/Util.php b/plugins/LdapCommon/extlib/Net/LDAP2/Util.php
index 48b03f9f9..48b03f9f9 100644
--- a/extlib/Net/LDAP2/Util.php
+++ b/plugins/LdapCommon/extlib/Net/LDAP2/Util.php
diff --git a/plugins/LilUrl/LilUrlPlugin.php b/plugins/LilUrl/LilUrlPlugin.php
index c3e37c0c0..1c3d6f84b 100644
--- a/plugins/LilUrl/LilUrlPlugin.php
+++ b/plugins/LilUrl/LilUrlPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/LilUrl/locale/LilUrl.pot b/plugins/LilUrl/locale/LilUrl.pot
new file mode 100644
index 000000000..47ed36727
--- /dev/null
+++ b/plugins/LilUrl/locale/LilUrl.pot
@@ -0,0 +1,22 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: LilUrlPlugin.php:68
+#, php-format
+msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."
+msgstr ""
diff --git a/plugins/Mapstraction/MapstractionPlugin.php b/plugins/Mapstraction/MapstractionPlugin.php
index 868933fd4..e7240a644 100644
--- a/plugins/Mapstraction/MapstractionPlugin.php
+++ b/plugins/Mapstraction/MapstractionPlugin.php
@@ -125,8 +125,8 @@ class MapstractionPlugin extends Plugin
$action->script('http://tile.cloudmade.com/wml/0.2/web-maps-lite.js');
break;
case 'google':
- $action->script(sprintf('http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false&amp;key=%s',
- $this->apikey));
+ $action->script(sprintf('http://maps.google.com/maps?file=api&v=2&sensor=false&key=%s',
+ urlencode($this->apikey)));
break;
case 'microsoft':
$action->script('http://dev.virtualearth.net/mapcontrol/mapcontrol.ashx?v=6');
@@ -137,7 +137,7 @@ class MapstractionPlugin extends Plugin
break;
case 'yahoo':
$action->script(sprintf('http://api.maps.yahoo.com/ajaxymap?v=3.8&appid=%s',
- $this->apikey));
+ urlencode($this->apikey)));
break;
case 'geocommons': // don't support this yet
default:
diff --git a/plugins/Mapstraction/allmap.php b/plugins/Mapstraction/allmap.php
index e73aa76e8..5dab670e2 100644
--- a/plugins/Mapstraction/allmap.php
+++ b/plugins/Mapstraction/allmap.php
@@ -38,6 +38,7 @@ if (!defined('STATUSNET')) {
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Mapstraction/locale/Mapstraction.po b/plugins/Mapstraction/locale/Mapstraction.pot
index 1dd5dbbcc..764bf7b29 100644
--- a/plugins/Mapstraction/locale/Mapstraction.po
+++ b/plugins/Mapstraction/locale/Mapstraction.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,14 +16,18 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: allmap.php:71
-#, php-format
-msgid "%s friends map"
+#: MapstractionPlugin.php:182
+msgid "Map"
msgstr ""
-#: allmap.php:74
-#, php-format
-msgid "%s friends map, page %d"
+#: MapstractionPlugin.php:193
+msgid "Full size"
+msgstr ""
+
+#: MapstractionPlugin.php:205
+msgid ""
+"Show maps of users' and friends' notices with <a href=\"http://www."
+"mapstraction.com/\">Mapstraction</a> JavaScript library."
msgstr ""
#: map.php:72
@@ -34,18 +38,14 @@ msgstr ""
msgid "User has no profile."
msgstr ""
-#: MapstractionPlugin.php:182
-msgid "Map"
-msgstr ""
-
-#: MapstractionPlugin.php:193
-msgid "Full size"
+#: allmap.php:71
+#, php-format
+msgid "%s friends map"
msgstr ""
-#: MapstractionPlugin.php:205
-msgid ""
-"Show maps of users' and friends' notices with <a href=\"http://www."
-"mapstraction.com/\">Mapstraction</a> JavaScript library."
+#: allmap.php:74
+#, php-format
+msgid "%s friends map, page %d"
msgstr ""
#: usermap.php:71
diff --git a/plugins/Mapstraction/map.php b/plugins/Mapstraction/map.php
index b809c1b8e..7dab8e10a 100644
--- a/plugins/Mapstraction/map.php
+++ b/plugins/Mapstraction/map.php
@@ -38,6 +38,7 @@ if (!defined('STATUSNET')) {
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Mapstraction/usermap.js b/plugins/Mapstraction/usermap.js
index 4b7a6c26b..53cfe6bb0 100644
--- a/plugins/Mapstraction/usermap.js
+++ b/plugins/Mapstraction/usermap.js
@@ -104,7 +104,7 @@ function showMapstraction(element, notices) {
pt = new mxn.LatLonPoint(lat, lon);
mkr = new mxn.Marker(pt);
- mkr.setIcon(n['user']['profile_image_url']);
+ mkr.setIcon(n['user']['profile_image_url'], [24, 24]);
mkr.setInfoBubble('<a href="'+ n['user']['profile_url'] + '">' + n['user']['screen_name'] + '</a>' + ' ' + n['html'] +
'<br/><a href="'+ n['url'] + '">'+ n['created_at'] + '</a>');
diff --git a/plugins/Mapstraction/usermap.php b/plugins/Mapstraction/usermap.php
index ff47b6ada..094334f60 100644
--- a/plugins/Mapstraction/usermap.php
+++ b/plugins/Mapstraction/usermap.php
@@ -38,6 +38,7 @@ if (!defined('STATUSNET')) {
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/MemcachedPlugin.php b/plugins/MemcachedPlugin.php
index 707e6db9a..77b989b95 100644
--- a/plugins/MemcachedPlugin.php
+++ b/plugins/MemcachedPlugin.php
@@ -22,8 +22,10 @@
*
* @category Cache
* @package StatusNet
- * @author Evan Prodromou <evan@status.net>, Craig Andrews <candrews@integralblue.com>
+ * @author Evan Prodromou <evan@status.net>
+ * @author Craig Andrews <candrews@integralblue.com>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -43,8 +45,10 @@ if (!defined('STATUSNET')) {
*
* @category Cache
* @package StatusNet
- * @author Evan Prodromou <evan@status.net>, Craig Andrews <candrews@integralblue.com>
+ * @author Evan Prodromou <evan@status.net>
+ * @author Craig Andrews <candrews@integralblue.com>
* @copyright 2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/Meteor/MeteorPlugin.php b/plugins/Meteor/MeteorPlugin.php
index 5b345d7c2..ec8c9e217 100644
--- a/plugins/Meteor/MeteorPlugin.php
+++ b/plugins/Meteor/MeteorPlugin.php
@@ -50,6 +50,7 @@ class MeteorPlugin extends RealtimePlugin
public $controlport = null;
public $controlserver = null;
public $channelbase = null;
+ public $persistent = true;
protected $_socket = null;
function __construct($webserver=null, $webport=4670, $controlport=4671, $controlserver=null, $channelbase='')
@@ -65,6 +66,26 @@ class MeteorPlugin extends RealtimePlugin
parent::__construct();
}
+ /**
+ * Pull settings from config file/database if set.
+ */
+ function initialize()
+ {
+ $settings = array('webserver',
+ 'webport',
+ 'controlport',
+ 'controlserver',
+ 'channelbase');
+ foreach ($settings as $name) {
+ $val = common_config('meteor', $name);
+ if ($val !== false) {
+ $this->$name = $val;
+ }
+ }
+
+ return parent::initialize();
+ }
+
function _getScripts()
{
$scripts = parent::_getScripts();
@@ -82,8 +103,14 @@ class MeteorPlugin extends RealtimePlugin
function _connect()
{
$controlserver = (empty($this->controlserver)) ? $this->webserver : $this->controlserver;
+
+ $errno = $errstr = null;
+ $timeout = 5;
+ $flags = STREAM_CLIENT_CONNECT;
+ if ($this->persistent) $flags |= STREAM_CLIENT_PERSISTENT;
+
// May throw an exception.
- $this->_socket = stream_socket_client("tcp://{$controlserver}:{$this->controlport}");
+ $this->_socket = stream_socket_client("tcp://{$controlserver}:{$this->controlport}", $errno, $errstr, $timeout, $flags);
if (!$this->_socket) {
throw new Exception("Couldn't connect to {$controlserver} on {$this->controlport}");
}
@@ -104,8 +131,10 @@ class MeteorPlugin extends RealtimePlugin
function _disconnect()
{
- $cnt = fwrite($this->_socket, "QUIT\n");
- @fclose($this->_socket);
+ if (!$this->persistent) {
+ $cnt = fwrite($this->_socket, "QUIT\n");
+ @fclose($this->_socket);
+ }
}
// Meteord flips out with default '/' separator
diff --git a/plugins/Minify/MinifyPlugin.php b/plugins/Minify/MinifyPlugin.php
index 69def6064..13010e75a 100644
--- a/plugins/Minify/MinifyPlugin.php
+++ b/plugins/Minify/MinifyPlugin.php
@@ -29,6 +29,7 @@ Author URI: http://candrews.integralblue.com/
/**
* @package MinifyPlugin
* @maintainer Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
*/
if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
diff --git a/plugins/Minify/locale/Minify.pot b/plugins/Minify/locale/Minify.pot
new file mode 100644
index 000000000..6f7372d40
--- /dev/null
+++ b/plugins/Minify/locale/Minify.pot
@@ -0,0 +1,23 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: MinifyPlugin.php:179
+msgid ""
+"The Minify plugin minifies your CSS and Javascript, removing whitespace and "
+"comments."
+msgstr ""
diff --git a/plugins/MobileProfile/MobileProfilePlugin.php b/plugins/MobileProfile/MobileProfilePlugin.php
index 0b37734b7..6076bbde0 100644
--- a/plugins/MobileProfile/MobileProfilePlugin.php
+++ b/plugins/MobileProfile/MobileProfilePlugin.php
@@ -73,9 +73,11 @@ class MobileProfilePlugin extends WAP20Plugin
$this->serveMobile = true;
} else {
// If they like the WAP 2.0 mimetype, serve them MP
- if (strstr('application/vnd.wap.xhtml+xml', $type) !== false) {
- $this->serveMobile = true;
- } else {
+ // @fixme $type is undefined, making this if case useless and spewing errors.
+ // What's the intent?
+ //if (strstr('application/vnd.wap.xhtml+xml', $type) !== false) {
+ // $this->serveMobile = true;
+ //} else {
// If they are a mobile device that supports WAP 2.0,
// serve them MP
@@ -136,11 +138,23 @@ class MobileProfilePlugin extends WAP20Plugin
'vodafone',
'wap1',
'wap2',
+ 'webos',
'windows ce'
);
+ $blacklist = array(
+ 'ipad', // Larger screen handles the full theme fairly well.
+ );
+
$httpuseragent = strtolower($_SERVER['HTTP_USER_AGENT']);
+ foreach ($blacklist as $md) {
+ if (strstr($httpuseragent, $md) !== false) {
+ $this->serveMobile = false;
+ return true;
+ }
+ }
+
foreach ($this->mobiledevices as $md) {
if (strstr($httpuseragent, $md) !== false) {
$this->setMobileFeatures($httpuseragent);
@@ -149,7 +163,7 @@ class MobileProfilePlugin extends WAP20Plugin
break;
}
}
- }
+ //}
// If they are okay with MP, and the site has a mobile server,
// redirect there
@@ -167,7 +181,9 @@ class MobileProfilePlugin extends WAP20Plugin
return true;
}
- if (!$type) {
+ // @fixme $type is undefined, making this if case useless and spewing errors.
+ // What's the intent?
+ //if (!$type) {
$httpaccept = isset($_SERVER['HTTP_ACCEPT']) ?
$_SERVER['HTTP_ACCEPT'] : null;
@@ -180,7 +196,7 @@ class MobileProfilePlugin extends WAP20Plugin
throw new ClientException(_('This page is not available in a '.
'media type you accept'), 406);
}
- }
+ //}
header('Content-Type: '.$type);
@@ -219,21 +235,6 @@ class MobileProfilePlugin extends WAP20Plugin
}
- function onStartShowHeadElements($action)
- {
- if (!$action->serveMobile) {
- return true;
- }
-
- $action->showTitle();
- $action->showShortcutIcon();
- $action->showStylesheets();
- $action->showFeeds();
- $action->showDescription();
- $action->extraHead();
- }
-
-
function onStartShowStatusNetStyles($action)
{
if (!$this->serveMobile) {
@@ -254,6 +255,10 @@ class MobileProfilePlugin extends WAP20Plugin
$action->cssLink('plugins/MobileProfile/mp-handheld.css',null,'handheld');
}
+ // Allow other plugins to load their styles.
+ Event::handle('EndShowStatusNetStyles', array($action));
+ Event::handle('EndShowLaconicaStyles', array($action));
+
return false;
}
diff --git a/plugins/MobileProfile/locale/MobileProfile.pot b/plugins/MobileProfile/locale/MobileProfile.pot
new file mode 100644
index 000000000..9495e975b
--- /dev/null
+++ b/plugins/MobileProfile/locale/MobileProfile.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: MobileProfilePlugin.php:424
+msgid "XHTML MobileProfile output for supporting user agents."
+msgstr ""
diff --git a/plugins/MobileProfile/mp-screen.css b/plugins/MobileProfile/mp-screen.css
index 0fc801612..1f70b5612 100644
--- a/plugins/MobileProfile/mp-screen.css
+++ b/plugins/MobileProfile/mp-screen.css
@@ -2,7 +2,7 @@
*
* @package StatusNet
* @author Sarven Capadisli <csarven@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @copyright 2009-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/
*/
@@ -195,10 +195,6 @@ width:43px;
margin-right:1%;
}
-.notice-options form {
-width:16px;
-height:16px;
-}
.notice-options form.processing {
background-image:none;
}
diff --git a/plugins/OStatus/OStatusPlugin.php b/plugins/OStatus/OStatusPlugin.php
index 58f373e45..6fef20d6f 100644
--- a/plugins/OStatus/OStatusPlugin.php
+++ b/plugins/OStatus/OStatusPlugin.php
@@ -28,6 +28,15 @@ set_include_path(get_include_path() . PATH_SEPARATOR . dirname(__FILE__) . '/ext
class FeedSubException extends Exception
{
+ function __construct($msg=null)
+ {
+ $type = get_class($this);
+ if ($msg) {
+ parent::__construct("$type: $msg");
+ } else {
+ parent::__construct($type);
+ }
+ }
}
class OStatusPlugin extends Plugin
@@ -87,6 +96,8 @@ class OStatusPlugin extends Plugin
// Outgoing from our internal PuSH hub
$qm->connect('hubconf', 'HubConfQueueHandler');
+ $qm->connect('hubprep', 'HubPrepQueueHandler');
+
$qm->connect('hubout', 'HubOutQueueHandler');
// Outgoing Salmon replies (when we don't need a return value)
@@ -102,7 +113,10 @@ class OStatusPlugin extends Plugin
*/
function onStartEnqueueNotice($notice, &$transports)
{
- $transports[] = 'ostatus';
+ if ($notice->isLocal()) {
+ // put our transport first, in case there's any conflict (like OMB)
+ array_unshift($transports, 'ostatus');
+ }
return true;
}
@@ -153,6 +167,9 @@ class OStatusPlugin extends Plugin
// Also, we'll add in the salmon link
$salmon = common_local_url($salmonAction, array('id' => $id));
+ $feed->addLink($salmon, array('rel' => Salmon::REL_SALMON));
+
+ // XXX: these are deprecated
$feed->addLink($salmon, array('rel' => Salmon::NS_REPLIES));
$feed->addLink($salmon, array('rel' => Salmon::NS_MENTIONS));
}
@@ -256,7 +273,7 @@ class OStatusPlugin extends Plugin
$matches = array();
// Webfinger matches: @user@example.com
- if (preg_match_all('!(?:^|\s+)@((?:\w+\.)*\w+@(?:\w+\.)*\w+(?:\w+\-\w+)*\.\w+)!',
+ if (preg_match_all('!(?:^|\s+)@((?:\w+\.)*\w+@(?:\w+\-?\w+\.)*\w+(?:\w+\-\w+)*\.\w+)!',
$text,
$wmatches,
PREG_OFFSET_CAPTURE)) {
@@ -451,6 +468,7 @@ class OStatusPlugin extends Plugin
return false;
}
}
+ return true;
}
/**
@@ -471,6 +489,24 @@ class OStatusPlugin extends Plugin
}
/**
+ * Tell the FeedSub infrastructure whether we have any active OStatus
+ * usage for the feed; if not it'll be able to garbage-collect the
+ * feed subscription.
+ *
+ * @param FeedSub $feedsub
+ * @param integer $count in/out
+ * @return mixed hook return code
+ */
+ function onFeedSubSubscriberCount($feedsub, &$count)
+ {
+ $oprofile = Ostatus_profile::staticGet('feeduri', $feedsub->uri);
+ if ($oprofile) {
+ $count += $oprofile->subscriberCount();
+ }
+ return true;
+ }
+
+ /**
* When about to subscribe to a remote user, start a server-to-server
* PuSH subscription if needed. If we can't establish that, abort.
*
@@ -948,22 +984,15 @@ class OStatusPlugin extends Plugin
return false;
}
- /**
- * Utility function to check if the given URL is a canonical user profile
- * page, and if so return the ID number.
- *
- * @param string $url
- * @return mixed int or false
- */
- public static function localProfileFromUrl($url)
+ public function onStartProfileGetAtomFeed($profile, &$feed)
{
- $template = common_local_url('userbyid', array('id' => '31337'));
- $template = preg_quote($template, '/');
- $template = str_replace('31337', '(\d+)', $template);
- if (preg_match("/$template/", $url, $matches)) {
- return intval($matches[1]);
+ $oprofile = Ostatus_profile::staticGet('profile_id', $profile->id);
+
+ if (empty($oprofile)) {
+ return true;
}
+
+ $feed = $oprofile->feeduri;
return false;
}
-
}
diff --git a/plugins/OStatus/README b/plugins/OStatus/README
index 3a98b7b25..ea5dfc055 100644
--- a/plugins/OStatus/README
+++ b/plugins/OStatus/README
@@ -1,18 +1,42 @@
-Plugin to support importing updates from external RSS and Atom feeds into your timeline.
+Plugin to support importing and exporting notices through Atom and RSS feeds.
+The OStatus plugin concentrates on user-to-user cases for federating StatusNet
+and similar social networking / microblogging / blogging sites, but includes
+low-level feed subscription systems which are used by some other plugins.
+
+Uses PubSubHubbub for push feed updates; currently non-PuSH feeds cannot be
+subscribed unless an external PuSH hub proxy is used.
-Uses PubSubHubbub for push feed updates; currently non-PuSH feeds cannot be subscribed.
Configuration options available:
$config['ostatus']['hub']
(default internal hub)
- Set to URL of an external PuSH hub to use it instead of our internal hub.
+ Set to URL of an external PuSH hub to use it instead of our internal hub
+ for sending outgoing updates in user and group feeds.
$config['ostatus']['hub_retries']
(default 0)
Number of times to retry a PuSH send to consumers if using internal hub
+Settings controlling incoming feed subscription:
+
+$config['feedsub']['fallback_hub']
+ To subscribe to feeds that don't have a hub, an external PuSH proxy hub
+ such as Superfeedr may be used. Any feed without a hub of its own will
+ be subscribed through the specified hub URL instead. If the external hub
+ has usage charges, be aware that there is no restriction placed to how
+ many feeds may be subscribed!
+
+ $config['feedsub']['fallback_hub'] = 'https://superfeedr.com/hubbub';
+
+$config['feedsub']['hub_user']
+$config['feedsub']['hub_password']
+ If using the fallback hub mode, these settings may be used to provide
+ HTTP authentication credentials for contacting the hub. Default hubs
+ specified from feeds are assumed to not require
+
+
For testing, shouldn't be used in production:
$config['ostatus']['skip_signatures']
@@ -23,12 +47,11 @@ $config['feedsub']['nohub']
(default require hub)
Allow low-level feed subscription setup for feeds without hubs.
Not actually usable at this stage, OStatus will check for hubs too
- and we have no polling backend.
+ and we have no polling backend. (The fallback hub option can be used
+ with a 3rd-party service to provide such polling.)
Todo:
-* fully functional l10n
-* redo non-OStatus feed support
-** rssCloud support?
-** possibly a polling daemon to support non-PuSH feeds?
+* better support for feeds that aren't natively oriented at social networking
* make use of tags/categories from feeds
+* better repeat handling
diff --git a/plugins/OStatus/actions/groupsalmon.php b/plugins/OStatus/actions/groupsalmon.php
index 29377b5fa..d60725a71 100644
--- a/plugins/OStatus/actions/groupsalmon.php
+++ b/plugins/OStatus/actions/groupsalmon.php
@@ -60,7 +60,8 @@ class GroupsalmonAction extends SalmonAction
function handlePost()
{
- switch ($this->act->object->type) {
+ // @fixme process all objects?
+ switch ($this->act->objects[0]->type) {
case ActivityObject::ARTICLE:
case ActivityObject::BLOGENTRY:
case ActivityObject::NOTE:
diff --git a/plugins/OStatus/actions/hostmeta.php b/plugins/OStatus/actions/hostmeta.php
index 6d35ada6c..8ca07f916 100644
--- a/plugins/OStatus/actions/hostmeta.php
+++ b/plugins/OStatus/actions/hostmeta.php
@@ -36,13 +36,12 @@ class HostMetaAction extends Action
$url.= '?uri={uri}';
$xrd = new XRD();
-
- $xrd = new XRD();
$xrd->host = $domain;
$xrd->links[] = array('rel' => Discovery::LRDD_REL,
'template' => $url,
'title' => array('Resource Descriptor'));
+ header('Content-type: application/xrd+xml');
print $xrd->toXML();
}
}
diff --git a/plugins/OStatus/actions/ostatusgroup.php b/plugins/OStatus/actions/ostatusgroup.php
index f325ba053..1b368de63 100644
--- a/plugins/OStatus/actions/ostatusgroup.php
+++ b/plugins/OStatus/actions/ostatusgroup.php
@@ -104,7 +104,7 @@ class OStatusGroupAction extends OStatusSubAction
}
$this->showEntity($group,
- $group->getProfileUrl(),
+ $group->homeUrl(),
$group->homepage_logo,
$group->description);
return $ok;
diff --git a/plugins/OStatus/actions/ostatussub.php b/plugins/OStatus/actions/ostatussub.php
index 994af6e95..28714514f 100644
--- a/plugins/OStatus/actions/ostatussub.php
+++ b/plugins/OStatus/actions/ostatussub.php
@@ -446,4 +446,18 @@ class OStatusSubAction extends Action
{
return common_local_url('ostatussub');
}
+
+ /**
+ * Disable the send-notice form at the top of the page.
+ * This is really just a hack for the broken CSS in the Cloudy theme,
+ * I think; copying from other non-notice-navigation pages that do this
+ * as well. There will be plenty of others also broken.
+ *
+ * @fixme fix the cloudy theme
+ * @fixme do this in a more general way
+ */
+ function showNoticeForm() {
+ // nop
+ }
+
}
diff --git a/plugins/OStatus/actions/usersalmon.php b/plugins/OStatus/actions/usersalmon.php
index 15e8c1869..6c360c49f 100644
--- a/plugins/OStatus/actions/usersalmon.php
+++ b/plugins/OStatus/actions/usersalmon.php
@@ -55,9 +55,10 @@ class UsersalmonAction extends SalmonAction
*/
function handlePost()
{
- common_log(LOG_INFO, "Received post of '{$this->act->object->id}' from '{$this->act->actor->id}'");
+ common_log(LOG_INFO, "Received post of '{$this->act->objects[0]->id}' from '{$this->act->actor->id}'");
- switch ($this->act->object->type) {
+ // @fixme: process all activity objects?
+ switch ($this->act->objects[0]->type) {
case ActivityObject::ARTICLE:
case ActivityObject::BLOGENTRY:
case ActivityObject::NOTE:
@@ -91,7 +92,7 @@ class UsersalmonAction extends SalmonAction
throw new ClientException("Not to anyone in reply to anything!");
}
- $existing = Notice::staticGet('uri', $this->act->object->id);
+ $existing = Notice::staticGet('uri', $this->act->objects[0]->id);
if (!empty($existing)) {
common_log(LOG_ERR, "Not saving notice '{$existing->uri}'; already exists.");
@@ -142,7 +143,7 @@ class UsersalmonAction extends SalmonAction
function handleFavorite()
{
- $notice = $this->getNotice($this->act->object);
+ $notice = $this->getNotice($this->act->objects[0]);
$profile = $this->ensureProfile()->localProfile();
$old = Fave::pkeyGet(array('user_id' => $profile->id,
@@ -163,7 +164,7 @@ class UsersalmonAction extends SalmonAction
*/
function handleUnfavorite()
{
- $notice = $this->getNotice($this->act->object);
+ $notice = $this->getNotice($this->act->objects[0]);
$profile = $this->ensureProfile()->localProfile();
$fave = Fave::pkeyGet(array('user_id' => $profile->id,
diff --git a/plugins/OStatus/actions/userxrd.php b/plugins/OStatus/actions/userxrd.php
index eb80a5ad4..6a6886eb8 100644
--- a/plugins/OStatus/actions/userxrd.php
+++ b/plugins/OStatus/actions/userxrd.php
@@ -35,9 +35,13 @@ class UserxrdAction extends XrdAction
$this->uri = Discovery::normalize($this->uri);
if (Discovery::isWebfinger($this->uri)) {
- list($nick, $domain) = explode('@', substr(urldecode($this->uri), 5));
- $nick = common_canonical_nickname($nick);
- $this->user = User::staticGet('nickname', $nick);
+ $parts = explode('@', substr(urldecode($this->uri), 5));
+ if (count($parts) == 2) {
+ list($nick, $domain) = $parts;
+ // @fixme confirm the domain too
+ $nick = common_canonical_nickname($nick);
+ $this->user = User::staticGet('nickname', $nick);
+ }
} else {
$this->user = User::staticGet('uri', $this->uri);
}
diff --git a/plugins/OStatus/classes/FeedSub.php b/plugins/OStatus/classes/FeedSub.php
index b10509dae..dd1968db1 100644
--- a/plugins/OStatus/classes/FeedSub.php
+++ b/plugins/OStatus/classes/FeedSub.php
@@ -207,8 +207,8 @@ class FeedSub extends Memcached_DataObject
$discover = new FeedDiscovery();
$discover->discoverFromFeedURL($feeduri);
- $huburi = $discover->getAtomLink('hub');
- if (!$huburi) {
+ $huburi = $discover->getHubLink();
+ if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
throw new FeedSubNoHubException();
}
@@ -241,8 +241,12 @@ class FeedSub extends Memcached_DataObject
common_log(LOG_WARNING, "Attempting to (re)start PuSH subscription to $this->uri in unexpected state $this->sub_state");
}
if (empty($this->huburi)) {
- if (common_config('feedsub', 'nohub')) {
+ if (common_config('feedsub', 'fallback_hub')) {
+ // No native hub on this feed?
+ // Use our fallback hub, which handles polling on our behalf.
+ } else if (common_config('feedsub', 'nohub')) {
// Fake it! We're just testing remote feeds w/o hubs.
+ // We'll never actually get updates in this mode.
return true;
} else {
throw new ServerException("Attempting to start PuSH subscription for feed with no hub");
@@ -255,6 +259,9 @@ class FeedSub extends Memcached_DataObject
/**
* Send a PuSH unsubscription request to the hub for this feed.
* The hub will later send us a confirmation POST to /main/push/callback.
+ * Warning: this will cancel the subscription even if someone else in
+ * the system is using it. Most callers will want garbageCollect() instead,
+ * which confirms there's no uses left.
*
* @return bool true on success, false on failure
* @throws ServerException if feed state is not valid
@@ -264,8 +271,12 @@ class FeedSub extends Memcached_DataObject
common_log(LOG_WARNING, "Attempting to (re)end PuSH subscription to $this->uri in unexpected state $this->sub_state");
}
if (empty($this->huburi)) {
- if (common_config('feedsub', 'nohub')) {
+ if (common_config('feedsub', 'fallback_hub')) {
+ // No native hub on this feed?
+ // Use our fallback hub, which handles polling on our behalf.
+ } else if (common_config('feedsub', 'nohub')) {
// Fake it! We're just testing remote feeds w/o hubs.
+ // We'll never actually get updates in this mode.
return true;
} else {
throw new ServerException("Attempting to end PuSH subscription for feed with no hub");
@@ -275,6 +286,33 @@ class FeedSub extends Memcached_DataObject
return $this->doSubscribe('unsubscribe');
}
+ /**
+ * Check if there are any active local uses of this feed, and if not then
+ * make sure it's inactive, unsubscribing if necessary.
+ *
+ * @return boolean true if the subscription is now inactive, false if still active.
+ */
+ public function garbageCollect()
+ {
+ if ($this->sub_state == '' || $this->sub_state == 'inactive') {
+ // No active PuSH subscription, we can just leave it be.
+ return true;
+ } else {
+ // PuSH subscription is either active or in an indeterminate state.
+ // Check if we're out of subscribers, and if so send an unsubscribe.
+ $count = 0;
+ Event::handle('FeedSubSubscriberCount', array($this, &$count));
+
+ if ($count) {
+ common_log(LOG_INFO, __METHOD__ . ': ok, ' . $count . ' user(s) left for ' . $this->uri);
+ return false;
+ } else {
+ common_log(LOG_INFO, __METHOD__ . ': unsubscribing, no users left for ' . $this->uri);
+ return $this->unsubscribe();
+ }
+ }
+ }
+
protected function doSubscribe($mode)
{
$orig = clone($this);
@@ -296,7 +334,21 @@ class FeedSub extends Memcached_DataObject
'hub.secret' => $this->secret,
'hub.topic' => $this->uri);
$client = new HTTPClient();
- $response = $client->post($this->huburi, $headers, $post);
+ if ($this->huburi) {
+ $hub = $this->huburi;
+ } else {
+ if (common_config('feedsub', 'fallback_hub')) {
+ $hub = common_config('feedsub', 'fallback_hub');
+ if (common_config('feedsub', 'hub_user')) {
+ $u = common_config('feedsub', 'hub_user');
+ $p = common_config('feedsub', 'hub_pass');
+ $client->setAuth($u, $p);
+ }
+ } else {
+ throw new FeedSubException('WTF?');
+ }
+ }
+ $response = $client->post($hub, $headers, $post);
$status = $response->getStatus();
if ($status == 202) {
common_log(LOG_INFO, __METHOD__ . ': sub req ok, awaiting verification callback');
diff --git a/plugins/OStatus/classes/HubSub.php b/plugins/OStatus/classes/HubSub.php
index cdace3c1f..7db528a4e 100644
--- a/plugins/OStatus/classes/HubSub.php
+++ b/plugins/OStatus/classes/HubSub.php
@@ -260,6 +260,37 @@ class HubSub extends Memcached_DataObject
$retries = intval(common_config('ostatus', 'hub_retries'));
}
+ if (common_config('ostatus', 'local_push_bypass')) {
+ // If target is a local site, bypass the web server and drop the
+ // item directly into the target's input queue.
+ $url = parse_url($this->callback);
+ $wildcard = common_config('ostatus', 'local_wildcard');
+ $site = Status_network::getFromHostname($url['host'], $wildcard);
+
+ if ($site) {
+ if ($this->secret) {
+ $hmac = 'sha1=' . hash_hmac('sha1', $atom, $this->secret);
+ } else {
+ $hmac = '';
+ }
+
+ // Hack: at the moment we stick the subscription ID in the callback
+ // URL so we don't have to look inside the Atom to route the subscription.
+ // For now this means we need to extract that from the target URL
+ // so we can include it in the data.
+ $parts = explode('/', $url['path']);
+ $subId = intval(array_pop($parts));
+
+ $data = array('feedsub_id' => $subId,
+ 'post' => $atom,
+ 'hmac' => $hmac);
+ common_log(LOG_DEBUG, "Cross-site PuSH bypass enqueueing straight to $site->nickname feed $subId");
+ $qm = QueueManager::get();
+ $qm->enqueue($data, 'pushin', $site->nickname);
+ return;
+ }
+ }
+
// We dare not clone() as when the clone is discarded it'll
// destroy the result data for the parent query.
// @fixme use clone() again when it's safe to copy an
@@ -274,6 +305,26 @@ class HubSub extends Memcached_DataObject
}
/**
+ * Queue up a large batch of pushes to multiple subscribers
+ * for this same topic update.
+ *
+ * If queues are disabled, this will run immediately.
+ *
+ * @param string $atom well-formed Atom feed
+ * @param array $pushCallbacks list of callback URLs
+ */
+ function bulkDistribute($atom, $pushCallbacks)
+ {
+ $data = array('atom' => $atom,
+ 'topic' => $this->topic,
+ 'pushCallbacks' => $pushCallbacks);
+ common_log(LOG_INFO, "Queuing PuSH batch: $this->topic to " .
+ count($pushCallbacks) . " sites");
+ $qm = QueueManager::get();
+ $qm->enqueue($data, 'hubprep');
+ }
+
+ /**
* Send a 'fat ping' to the subscriber's callback endpoint
* containing the given Atom feed chunk.
*
diff --git a/plugins/OStatus/classes/Magicsig.php b/plugins/OStatus/classes/Magicsig.php
index 5705ecc11..f8c56a05f 100644
--- a/plugins/OStatus/classes/Magicsig.php
+++ b/plugins/OStatus/classes/Magicsig.php
@@ -52,7 +52,15 @@ class Magicsig extends Memcached_DataObject
{
$obj = parent::staticGet(__CLASS__, $k, $v);
if (!empty($obj)) {
- return Magicsig::fromString($obj->keypair);
+ $obj = Magicsig::fromString($obj->keypair);
+
+ // Double check keys: Crypt_RSA did not
+ // consistently generate good keypairs.
+ // We've also moved to 1024 bit keys.
+ if (strlen($obj->publicKey->modulus->toBits()) != 1024) {
+ $obj->delete();
+ return false;
+ }
}
return $obj;
@@ -121,11 +129,11 @@ class Magicsig extends Memcached_DataObject
public function toString($full_pair = true)
{
- $mod = base64_url_encode($this->publicKey->modulus->toBytes());
- $exp = base64_url_encode($this->publicKey->exponent->toBytes());
+ $mod = Magicsig::base64_url_encode($this->publicKey->modulus->toBytes());
+ $exp = Magicsig::base64_url_encode($this->publicKey->exponent->toBytes());
$private_exp = '';
if ($full_pair && $this->privateKey->exponent->toBytes()) {
- $private_exp = '.' . base64_url_encode($this->privateKey->exponent->toBytes());
+ $private_exp = '.' . Magicsig::base64_url_encode($this->privateKey->exponent->toBytes());
}
return 'RSA.' . $mod . '.' . $exp . $private_exp;
@@ -166,9 +174,9 @@ class Magicsig extends Memcached_DataObject
$rsa = new Crypt_RSA();
$rsa->signatureMode = CRYPT_RSA_SIGNATURE_PKCS1;
$rsa->setHash('sha256');
- $rsa->modulus = new Math_BigInteger(base64_url_decode($mod), 256);
+ $rsa->modulus = new Math_BigInteger(Magicsig::base64_url_decode($mod), 256);
$rsa->k = strlen($rsa->modulus->toBytes());
- $rsa->exponent = new Math_BigInteger(base64_url_decode($exp), 256);
+ $rsa->exponent = new Math_BigInteger(Magicsig::base64_url_decode($exp), 256);
if ($type == 'private') {
$this->privateKey = $rsa;
@@ -195,23 +203,25 @@ class Magicsig extends Memcached_DataObject
public function sign($bytes)
{
$sig = $this->privateKey->sign($bytes);
- return base64_url_encode($sig);
+ return Magicsig::base64_url_encode($sig);
}
public function verify($signed_bytes, $signature)
{
- $signature = base64_url_decode($signature);
+ $signature = Magicsig::base64_url_decode($signature);
return $this->publicKey->verify($signed_bytes, $signature);
}
-
-}
-function base64_url_encode($input)
-{
- return strtr(base64_encode($input), '+/', '-_');
-}
-function base64_url_decode($input)
-{
- return base64_decode(strtr($input, '-_', '+/'));
+ public static function base64_url_encode($input)
+ {
+ return strtr(base64_encode($input), '+/', '-_');
+ }
+
+ public static function base64_url_decode($input)
+ {
+ return base64_decode(strtr($input, '-_', '+/'));
+ }
}
+
+
diff --git a/plugins/OStatus/classes/Ostatus_profile.php b/plugins/OStatus/classes/Ostatus_profile.php
index e48ed6ee8..8f8eb773f 100644
--- a/plugins/OStatus/classes/Ostatus_profile.php
+++ b/plugins/OStatus/classes/Ostatus_profile.php
@@ -215,22 +215,13 @@ class Ostatus_profile extends Memcached_DataObject
}
/**
- * Send a PuSH unsubscription request to the hub for this feed.
- * The hub will later send us a confirmation POST to /main/push/callback.
+ * Check if this remote profile has any active local subscriptions, and
+ * if not drop the PuSH subscription feed.
*
* @return bool true on success, false on failure
- * @throws ServerException if feed state is not valid
*/
public function unsubscribe() {
- $feedsub = FeedSub::staticGet('uri', $this->feeduri);
- if (!$feedsub || $feedsub->sub_state == '' || $feedsub->sub_state == 'inactive') {
- // No active PuSH subscription, we can just leave it be.
- return true;
- } else {
- // PuSH subscription is either active or in an indeterminate state.
- // Send an unsubscribe.
- return $feedsub->unsubscribe();
- }
+ $this->garbageCollect();
}
/**
@@ -241,19 +232,35 @@ class Ostatus_profile extends Memcached_DataObject
*/
public function garbageCollect()
{
+ $feedsub = FeedSub::staticGet('uri', $this->feeduri);
+ return $feedsub->garbageCollect();
+ }
+
+ /**
+ * Check if this remote profile has any active local subscriptions, so the
+ * PuSH subscription layer can decide if it can drop the feed.
+ *
+ * This gets called via the FeedSubSubscriberCount event when running
+ * FeedSub::garbageCollect().
+ *
+ * @return int
+ */
+ public function subscriberCount()
+ {
if ($this->isGroup()) {
$members = $this->localGroup()->getMembers(0, 1);
$count = $members->N;
} else {
$count = $this->localProfile()->subscriberCount();
}
- if ($count == 0) {
- common_log(LOG_INFO, "Unsubscribing from now-unused remote feed $this->feeduri");
- $this->unsubscribe();
- return true;
- } else {
- return false;
- }
+ common_log(LOG_INFO, __METHOD__ . " SUB COUNT BEFORE: $count");
+
+ // Other plugins may be piggybacking on OStatus without having
+ // an active group or user-to-user subscription we know about.
+ Event::handle('Ostatus_profileSubscriberCount', array($this, &$count));
+ common_log(LOG_INFO, __METHOD__ . " SUB COUNT AFTER: $count");
+
+ return $count;
}
/**
@@ -442,6 +449,18 @@ class Ostatus_profile extends Memcached_DataObject
{
$activity = new Activity($entry, $feed);
+ // @todo process all activity objects
+ switch ($activity->objects[0]->type) {
+ case ActivityObject::ARTICLE:
+ case ActivityObject::BLOGENTRY:
+ case ActivityObject::NOTE:
+ case ActivityObject::STATUS:
+ case ActivityObject::COMMENT:
+ break;
+ default:
+ throw new ClientException("Can't handle that kind of post.");
+ }
+
if ($activity->verb == ActivityVerb::POST) {
$this->processPost($activity, $source);
} else {
@@ -474,8 +493,14 @@ class Ostatus_profile extends Memcached_DataObject
// OK here! assume the default
} else if ($actor->id == $this->uri || $actor->link == $this->uri) {
$this->updateFromActivityObject($actor);
- } else {
+ } else if ($actor->id) {
+ // We have an ActivityStreams actor with an explicit ID that doesn't match the feed owner.
+ // This isn't what we expect from mainline OStatus person feeds!
+ // Group feeds go down another path, with different validation.
throw new Exception("Got an actor '{$actor->title}' ({$actor->id}) on single-user feed for {$this->uri}");
+ } else {
+ // Plain <author> without ActivityStreams actor info.
+ // We'll just ignore this info for now and save the update under the feed's identity.
}
$oprofile = $this;
@@ -483,7 +508,7 @@ class Ostatus_profile extends Memcached_DataObject
// It's not always an ActivityObject::NOTE, but... let's just say it is.
- $note = $activity->object;
+ $note = $activity->objects[0];
// The id URI will be used as a unique identifier for for the notice,
// protecting against duplicate saves. It isn't required to be a URL;
@@ -538,14 +563,22 @@ class Ostatus_profile extends Memcached_DataObject
}
$shortSummary = common_shorten_links($summary);
if (Notice::contentTooLong($shortSummary)) {
- $url = common_shorten_url(common_local_url('attachment',
- array('attachment' => $attachment->id)));
+ $url = common_shorten_url($sourceUrl);
$shortSummary = substr($shortSummary,
0,
Notice::maxContent() - (mb_strlen($url) + 2));
- $shortSummary .= '… ' . $url;
- $content = $shortSummary;
- $rendered = common_render_text($content);
+ $content = $shortSummary . ' ' . $url;
+
+ // We mark up the attachment link specially for the HTML output
+ // so we can fold-out the full version inline.
+ $attachUrl = common_local_url('attachment',
+ array('attachment' => $attachment->id));
+ $rendered = common_render_text($shortSummary) .
+ '<a href="' . htmlspecialchars($attachUrl) .'"'.
+ ' class="attachment more"' .
+ ' title="'. htmlspecialchars(_m('Show more')) . '">' .
+ '&#8230;' .
+ '</a>';
}
}
@@ -648,7 +681,7 @@ class Ostatus_profile extends Memcached_DataObject
common_log(LOG_DEBUG, "Original reply recipients: " . implode(', ', $attention_uris));
$groups = array();
$replies = array();
- foreach ($attention_uris as $recipient) {
+ foreach (array_unique($attention_uris) as $recipient) {
// Is the recipient a local user?
$user = User::staticGet('uri', $recipient);
if ($user) {
@@ -700,9 +733,14 @@ class Ostatus_profile extends Memcached_DataObject
}
/**
+ * Look up and if necessary create an Ostatus_profile for the remote entity
+ * with the given profile page URL. This should never return null -- you
+ * will either get an object or an exception will be thrown.
+ *
* @param string $profile_url
* @return Ostatus_profile
- * @throws FeedSubException
+ * @throws Exception on various error conditions
+ * @throws OStatusShadowException if this reference would obscure a local user/group
*/
public static function ensureProfileURL($profile_url, $hints=array())
@@ -723,7 +761,7 @@ class Ostatus_profile extends Memcached_DataObject
$response = $client->get($profile_url);
if (!$response->isOk()) {
- return null;
+ throw new Exception("Could not reach profile page: " . $profile_url);
}
// Check if we have a non-canonical URL
@@ -777,11 +815,20 @@ class Ostatus_profile extends Memcached_DataObject
if (!empty($feedurl)) {
$hints['feedurl'] = $feedurl;
-
return self::ensureFeedURL($feedurl, $hints);
}
+
+ throw new Exception("Could not find a feed URL for profile page " . $finalUrl);
}
+ /**
+ * Look up the Ostatus_profile, if present, for a remote entity with the
+ * given profile page URL. Will return null for both unknown and invalid
+ * remote profiles.
+ *
+ * @return mixed Ostatus_profile or null
+ * @throws OStatusShadowException for local profiles
+ */
static function getFromProfileURL($profile_url)
{
$profile = Profile::staticGet('profileurl', $profile_url);
@@ -803,7 +850,7 @@ class Ostatus_profile extends Memcached_DataObject
$user = User::staticGet('id', $profile->id);
if (!empty($user)) {
- throw new Exception("'$profile_url' is the profile for local user '{$user->nickname}'.");
+ throw new OStatusShadowException($profile, "'$profile_url' is the profile for local user '{$user->nickname}'.");
}
// Continue discovery; it's a remote profile
@@ -813,6 +860,14 @@ class Ostatus_profile extends Memcached_DataObject
return null;
}
+ /**
+ * Look up and if necessary create an Ostatus_profile for remote entity
+ * with the given update feed. This should never return null -- you will
+ * either get an object or an exception will be thrown.
+ *
+ * @return Ostatus_profile
+ * @throws Exception
+ */
public static function ensureFeedURL($feed_url, $hints=array())
{
$discover = new FeedDiscovery();
@@ -820,12 +875,12 @@ class Ostatus_profile extends Memcached_DataObject
$feeduri = $discover->discoverFromFeedURL($feed_url);
$hints['feedurl'] = $feeduri;
- $huburi = $discover->getAtomLink('hub');
+ $huburi = $discover->getHubLink();
$hints['hub'] = $huburi;
$salmonuri = $discover->getAtomLink(Salmon::NS_REPLIES);
$hints['salmon'] = $salmonuri;
- if (!$huburi) {
+ if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
// We can only deal with folks with a PuSH hub
throw new FeedSubNoHubException();
}
@@ -841,6 +896,18 @@ class Ostatus_profile extends Memcached_DataObject
}
}
+ /**
+ * Look up and, if necessary, create an Ostatus_profile for the remote
+ * profile with the given Atom feed - actually loaded from the feed.
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
+ *
+ * @param DOMElement $feedEl root element of a loaded Atom feed
+ * @param array $hints additional discovery information passed from higher levels
+ * @fixme should this be marked public?
+ * @return Ostatus_profile
+ * @throws Exception
+ */
public static function ensureAtomFeed($feedEl, $hints)
{
// Try to get a profile from the feed activity:subject
@@ -891,6 +958,18 @@ class Ostatus_profile extends Memcached_DataObject
throw new FeedSubException("Can't find enough profile information to make a feed.");
}
+ /**
+ * Look up and, if necessary, create an Ostatus_profile for the remote
+ * profile with the given RSS feed - actually loaded from the feed.
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
+ *
+ * @param DOMElement $feedEl root element of a loaded RSS feed
+ * @param array $hints additional discovery information passed from higher levels
+ * @fixme should this be marked public?
+ * @return Ostatus_profile
+ * @throws Exception
+ */
public static function ensureRssChannel($feedEl, $hints)
{
// Special-case for Posterous. They have some nice metadata in their
@@ -935,7 +1014,7 @@ class Ostatus_profile extends Memcached_DataObject
return;
}
if (!common_valid_http_url($url)) {
- throw new ServerException(_m("Invalid avatar URL %s"), $url);
+ throw new ServerException(sprintf(_m("Invalid avatar URL %s"), $url));
}
if ($this->isGroup()) {
@@ -1054,11 +1133,14 @@ class Ostatus_profile extends Memcached_DataObject
/**
* Fetch, or build if necessary, an Ostatus_profile for the actor
* in a given Activity Streams activity.
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
*
* @param Activity $activity
* @param string $feeduri if we already know the canonical feed URI!
* @param string $salmonuri if we already know the salmon return channel URI
* @return Ostatus_profile
+ * @throws Exception
*/
public static function ensureActorProfile($activity, $hints=array())
@@ -1066,6 +1148,18 @@ class Ostatus_profile extends Memcached_DataObject
return self::ensureActivityObjectProfile($activity->actor, $hints);
}
+ /**
+ * Fetch, or build if necessary, an Ostatus_profile for the profile
+ * in a given Activity Streams object (can be subject, actor, or object).
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
+ *
+ * @param ActivityObject $object
+ * @param array $hints additional discovery information passed from higher levels
+ * @return Ostatus_profile
+ * @throws Exception
+ */
+
public static function ensureActivityObjectProfile($object, $hints=array())
{
$profile = self::getActivityObjectProfile($object);
@@ -1080,35 +1174,45 @@ class Ostatus_profile extends Memcached_DataObject
/**
* @param Activity $activity
* @return mixed matching Ostatus_profile or false if none known
+ * @throws ServerException if feed info invalid
*/
public static function getActorProfile($activity)
{
return self::getActivityObjectProfile($activity->actor);
}
+ /**
+ * @param ActivityObject $activity
+ * @return mixed matching Ostatus_profile or false if none known
+ * @throws ServerException if feed info invalid
+ */
protected static function getActivityObjectProfile($object)
{
$uri = self::getActivityObjectProfileURI($object);
return Ostatus_profile::staticGet('uri', $uri);
}
- protected static function getActorProfileURI($activity)
- {
- return self::getActivityObjectProfileURI($activity->actor);
- }
-
/**
- * @param Activity $activity
+ * Get the identifier URI for the remote entity described
+ * by this ActivityObject. This URI is *not* guaranteed to be
+ * a resolvable HTTP/HTTPS URL.
+ *
+ * @param ActivityObject $object
* @return string
- * @throws ServerException
+ * @throws ServerException if feed info invalid
*/
protected static function getActivityObjectProfileURI($object)
{
- $opts = array('allowed_schemes' => array('http', 'https'));
- if ($object->id && Validate::uri($object->id, $opts)) {
- return $object->id;
+ if ($object->id) {
+ if (ActivityUtils::validateUri($object->id)) {
+ return $object->id;
+ }
}
- if ($object->link && Validate::uri($object->link, $opts)) {
+
+ // If the id is missing or invalid (we've seen feeds mistakenly listing
+ // things like local usernames in that field) then we'll use the profile
+ // page link, if valid.
+ if ($object->link && common_valid_http_url($object->link)) {
return $object->link;
}
throw new ServerException("No author ID URI found");
@@ -1121,6 +1225,8 @@ class Ostatus_profile extends Memcached_DataObject
/**
* Create local ostatus_profile and profile/user_group entries for
* the provided remote user or group.
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
*
* @param ActivityObject $object
* @param array $hints
@@ -1137,7 +1243,8 @@ class Ostatus_profile extends Memcached_DataObject
throw new Exception("No profile URI");
}
- if (OStatusPlugin::localProfileFromUrl($homeuri)) {
+ $user = User::staticGet('uri', $homeuri);
+ if ($user) {
throw new Exception("Local user can't be referenced as remote.");
}
@@ -1169,10 +1276,10 @@ class Ostatus_profile extends Memcached_DataObject
$discover = new FeedDiscovery();
$discover->discoverFromFeedURL($hints['feedurl']);
}
- $huburi = $discover->getAtomLink('hub');
+ $huburi = $discover->getHubLink();
}
- if (!$huburi) {
+ if (!$huburi && !common_config('feedsub', 'fallback_hub')) {
// We can only deal with folks with a PuSH hub
throw new FeedSubNoHubException();
}
@@ -1209,15 +1316,23 @@ class Ostatus_profile extends Memcached_DataObject
$ok = $oprofile->insert();
- if ($ok) {
- $avatar = self::getActivityObjectAvatar($object, $hints);
- if ($avatar) {
+ if (!$ok) {
+ throw new ServerException("Can't save OStatus profile");
+ }
+
+ $avatar = self::getActivityObjectAvatar($object, $hints);
+
+ if ($avatar) {
+ try {
$oprofile->updateAvatar($avatar);
+ } catch (Exception $ex) {
+ // Profile is saved, but Avatar is messed up. We're
+ // just going to continue.
+ common_log(LOG_WARNING, "Exception saving OStatus profile avatar: ". $ex->getMessage());
}
- return $oprofile;
- } else {
- throw new ServerException("Can't save OStatus profile");
}
+
+ return $oprofile;
}
/**
@@ -1236,7 +1351,11 @@ class Ostatus_profile extends Memcached_DataObject
}
$avatar = self::getActivityObjectAvatar($object, $hints);
if ($avatar) {
- $this->updateAvatar($avatar);
+ try {
+ $this->updateAvatar($avatar);
+ } catch (Exception $ex) {
+ common_log(LOG_WARNING, "Exception saving OStatus profile avatar: " . $ex->getMessage());
+ }
}
}
@@ -1437,9 +1556,15 @@ class Ostatus_profile extends Memcached_DataObject
}
/**
+ * Look up, and if necessary create, an Ostatus_profile for the remote
+ * entity with the given webfinger address.
+ * This should never return null -- you will either get an object or
+ * an exception will be thrown.
+ *
* @param string $addr webfinger address
* @return Ostatus_profile
* @throws Exception on error conditions
+ * @throws OStatusShadowException if this reference would obscure a local user/group
*/
public static function ensureWebfinger($addr)
{
@@ -1518,9 +1643,18 @@ class Ostatus_profile extends Memcached_DataObject
$oprofile = self::ensureProfileURL($hints['profileurl'], $hints);
self::cacheSet(sprintf('ostatus_profile:webfinger:%s', $addr), $oprofile->uri);
return $oprofile;
+ } catch (OStatusShadowException $e) {
+ // We've ended up with a remote reference to a local user or group.
+ // @fixme ideally we should be able to say who it was so we can
+ // go back and refer to it the regular way
+ throw $e;
} catch (Exception $e) {
common_log(LOG_WARNING, "Failed creating profile from profile URL '$profileUrl': " . $e->getMessage());
// keep looking
+ //
+ // @fixme this means an error discovering from profile page
+ // may give us a corrupt entry using the webfinger URI, which
+ // will obscure the correct page-keyed profile later on.
}
}
@@ -1577,10 +1711,22 @@ class Ostatus_profile extends Memcached_DataObject
throw new Exception("Couldn't find a valid profile for '$addr'");
}
+ /**
+ * Store the full-length scrubbed HTML of a remote notice to an attachment
+ * file on our server. We'll link to this at the end of the cropped version.
+ *
+ * @param string $title plaintext for HTML page's title
+ * @param string $rendered HTML fragment for HTML page's body
+ * @return File
+ */
function saveHTMLFile($title, $rendered)
{
- $final = sprintf("<!DOCTYPE html>\n<html><head><title>%s</title></head>".
- '<body><div>%s</div></body></html>',
+ $final = sprintf("<!DOCTYPE html>\n" .
+ '<html><head>' .
+ '<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">' .
+ '<title>%s</title>' .
+ '</head>' .
+ '<body>%s</body></html>',
htmlspecialchars($title),
$rendered);
@@ -1610,3 +1756,24 @@ class Ostatus_profile extends Memcached_DataObject
return $file;
}
}
+
+/**
+ * Exception indicating we've got a remote reference to a local user,
+ * not a remote user!
+ *
+ * If we can ue a local profile after all, it's available as $e->profile.
+ */
+class OStatusShadowException extends Exception
+{
+ public $profile;
+
+ /**
+ * @param Profile $profile
+ * @param string $message
+ */
+ function __construct($profile, $message) {
+ $this->profile = $profile;
+ parent::__construct($message);
+ }
+}
+
diff --git a/plugins/OStatus/extlib/Math/BigInteger.php b/plugins/OStatus/extlib/Math/BigInteger.php
index 9733351d4..4373805f9 100644
--- a/plugins/OStatus/extlib/Math/BigInteger.php
+++ b/plugins/OStatus/extlib/Math/BigInteger.php
@@ -67,7 +67,7 @@
* @author Jim Wigginton <terrafrost@php.net>
* @copyright MMVI Jim Wigginton
* @license http://www.gnu.org/licenses/lgpl.txt
- * @version $Id: BigInteger.php,v 1.31 2010/03/01 17:28:19 terrafrost Exp $
+ * @version $Id: BigInteger.php,v 1.33 2010/03/22 22:32:03 terrafrost Exp $
* @link http://pear.php.net/package/Math_BigInteger
*/
@@ -294,7 +294,7 @@ class Math_BigInteger {
$this->value = array();
}
- if ($x === 0) {
+ if (empty($x)) {
return;
}
@@ -718,7 +718,7 @@ class Math_BigInteger {
*
* Will be called, automatically, when serialize() is called on a Math_BigInteger object.
*
- * @see __wakeup
+ * @see __wakeup()
* @access public
*/
function __sleep()
@@ -740,7 +740,7 @@ class Math_BigInteger {
*
* Will be called, automatically, when unserialize() is called on a Math_BigInteger object.
*
- * @see __sleep
+ * @see __sleep()
* @access public
*/
function __wakeup()
diff --git a/plugins/OStatus/lib/discovery.php b/plugins/OStatus/lib/discovery.php
index 44fad62fb..7187c1f3e 100644
--- a/plugins/OStatus/lib/discovery.php
+++ b/plugins/OStatus/lib/discovery.php
@@ -195,7 +195,7 @@ class Discovery_LRDD_Link_Header implements Discovery_LRDD
// return false;
}
- return Discovery_LRDD_Link_Header::parseHeader($link_header);
+ return array(Discovery_LRDD_Link_Header::parseHeader($link_header));
}
protected static function parseHeader($header)
diff --git a/plugins/OStatus/lib/discoveryhints.php b/plugins/OStatus/lib/discoveryhints.php
index 80cfbbf15..34c9be277 100644
--- a/plugins/OStatus/lib/discoveryhints.php
+++ b/plugins/OStatus/lib/discoveryhints.php
@@ -30,6 +30,7 @@ class DiscoveryHints {
case Discovery::PROFILEPAGE:
$hints['profileurl'] = $link['href'];
break;
+ case Salmon::NS_MENTIONS:
case Salmon::NS_REPLIES:
$hints['salmon'] = $link['href'];
break;
@@ -83,7 +84,7 @@ class DiscoveryHints {
$hints['fullname'] = implode(' ', $hcard['n']);
}
- if (array_key_exists('photo', $hcard)) {
+ if (array_key_exists('photo', $hcard) && count($hcard['photo'])) {
$hints['avatar'] = $hcard['photo'][0];
}
diff --git a/plugins/OStatus/lib/feeddiscovery.php b/plugins/OStatus/lib/feeddiscovery.php
index 4809f9d35..a55399d7c 100644
--- a/plugins/OStatus/lib/feeddiscovery.php
+++ b/plugins/OStatus/lib/feeddiscovery.php
@@ -88,6 +88,16 @@ class FeedDiscovery
}
/**
+ * Get the referenced PuSH hub link from an Atom feed.
+ *
+ * @return mixed string or false
+ */
+ public function getHubLink()
+ {
+ return $this->getAtomLink('hub');
+ }
+
+ /**
* @param string $url
* @param bool $htmlOk pass false here if you don't want to follow web pages.
* @return string with validated URL
@@ -104,7 +114,7 @@ class FeedDiscovery
$response = $client->get($url);
} catch (HTTP_Request2_Exception $e) {
common_log(LOG_ERR, __METHOD__ . " Failure for $url - " . $e->getMessage());
- throw new FeedSubBadURLException($e);
+ throw new FeedSubBadURLException($e->getMessage());
}
if ($htmlOk) {
diff --git a/plugins/OStatus/lib/hubprepqueuehandler.php b/plugins/OStatus/lib/hubprepqueuehandler.php
new file mode 100644
index 000000000..0d585938f
--- /dev/null
+++ b/plugins/OStatus/lib/hubprepqueuehandler.php
@@ -0,0 +1,87 @@
+<?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/>.
+ */
+
+/**
+ * When we have a large batch of PuSH consumers, we break the data set
+ * into smaller chunks. Enqueue final destinations...
+ *
+ * @package Hub
+ * @author Brion Vibber <brion@status.net>
+ */
+class HubPrepQueueHandler extends QueueHandler
+{
+ // Enqueue this many low-level distributions before re-queueing the rest
+ // of the batch to be processed later. Helps to keep latency down for other
+ // things happening during a particularly long OStatus delivery session.
+ //
+ // [Could probably ditch this if we had working message delivery priorities
+ // for queueing, but this isn't supported in ActiveMQ 5.3.]
+ const ROLLING_BATCH = 20;
+
+ function transport()
+ {
+ return 'hubprep';
+ }
+
+ function handle($data)
+ {
+ $topic = $data['topic'];
+ $atom = $data['atom'];
+ $pushCallbacks = $data['pushCallbacks'];
+
+ assert(is_string($atom));
+ assert(is_string($topic));
+ assert(is_array($pushCallbacks));
+
+ // Set up distribution for the first n subscribing sites...
+ // If we encounter an uncatchable error, queue handling should
+ // automatically re-run the batch, which could lead to some dupe
+ // distributions.
+ //
+ // Worst case is if one of these hubprep entries dies too many
+ // times and gets dropped; the rest of the batch won't get processed.
+ try {
+ $n = 0;
+ while (count($pushCallbacks) && $n < self::ROLLING_BATCH) {
+ $n++;
+ $callback = array_shift($pushCallbacks);
+ $sub = HubSub::staticGet($topic, $callback);
+ if (!$sub) {
+ common_log(LOG_ERR, "Skipping PuSH delivery for deleted(?) consumer $callback on $topic");
+ continue;
+ }
+
+ $sub->distribute($atom);
+ }
+ } catch (Exception $e) {
+ common_log(LOG_ERR, "Exception during PuSH batch out: " .
+ $e->getMessage() .
+ " prepping $topic to $callback");
+ }
+
+ // And re-queue the rest of the batch!
+ if (count($pushCallbacks) > 0) {
+ $sub = new HubSub();
+ $sub->topic = $topic;
+ $sub->bulkDistribute($atom, $pushCallbacks);
+ }
+
+ return true;
+ }
+}
diff --git a/plugins/OStatus/lib/linkheader.php b/plugins/OStatus/lib/linkheader.php
index afcd66d26..cd78d31ce 100644
--- a/plugins/OStatus/lib/linkheader.php
+++ b/plugins/OStatus/lib/linkheader.php
@@ -11,7 +11,7 @@ class LinkHeader
preg_match('/^<[^>]+>/', $str, $uri_reference);
//if (empty($uri_reference)) return;
- $this->uri = trim($uri_reference[0], '<>');
+ $this->href = trim($uri_reference[0], '<>');
$this->rel = array();
$this->type = null;
diff --git a/plugins/OStatus/lib/magicenvelope.php b/plugins/OStatus/lib/magicenvelope.php
index 9266cab5c..967e5f6d1 100644
--- a/plugins/OStatus/lib/magicenvelope.php
+++ b/plugins/OStatus/lib/magicenvelope.php
@@ -59,12 +59,21 @@ class MagicEnvelope
}
if ($xrd->links) {
if ($link = Discovery::getService($xrd->links, Magicsig::PUBLICKEYREL)) {
- list($type, $keypair) = explode(',', $link['href']);
- if (empty($keypair)) {
+ $keypair = false;
+ $parts = explode(',', $link['href']);
+ if (count($parts) == 2) {
+ $keypair = $parts[1];
+ } else {
// Backwards compatibility check for separator bug in 0.9.0
- list($type, $keypair) = explode(';', $link['href']);
+ $parts = explode(';', $link['href']);
+ if (count($parts) == 2) {
+ $keypair = $parts[1];
+ }
+ }
+
+ if ($keypair) {
+ return $keypair;
}
- return $keypair;
}
}
throw new Exception('Unable to locate signer public key');
@@ -74,7 +83,7 @@ class MagicEnvelope
public function signMessage($text, $mimetype, $keypair)
{
$signature_alg = Magicsig::fromString($keypair);
- $armored_text = base64_url_encode($text);
+ $armored_text = Magicsig::base64_url_encode($text);
return array(
'data' => $armored_text,
@@ -88,31 +97,25 @@ class MagicEnvelope
}
public function toXML($env) {
- $dom = new DOMDocument();
-
- $envelope = $dom->createElementNS(MagicEnvelope::NS, 'me:env');
- $envelope->setAttribute('xmlns:me', MagicEnvelope::NS);
- $data = $dom->createElementNS(MagicEnvelope::NS, 'me:data', $env['data']);
- $data->setAttribute('type', $env['data_type']);
- $envelope->appendChild($data);
- $enc = $dom->createElementNS(MagicEnvelope::NS, 'me:encoding', $env['encoding']);
- $envelope->appendChild($enc);
- $alg = $dom->createElementNS(MagicEnvelope::NS, 'me:alg', $env['alg']);
- $envelope->appendChild($alg);
- $sig = $dom->createElementNS(MagicEnvelope::NS, 'me:sig', $env['sig']);
- $envelope->appendChild($sig);
-
- $dom->appendChild($envelope);
+ $xs = new XMLStringer();
+ $xs->startXML();
+ $xs->elementStart('me:env', array('xmlns:me' => MagicEnvelope::NS));
+ $xs->element('me:data', array('type' => $env['data_type']), $env['data']);
+ $xs->element('me:encoding', null, $env['encoding']);
+ $xs->element('me:alg', null, $env['alg']);
+ $xs->element('me:sig', null, $env['sig']);
+ $xs->elementEnd('me:env');
-
- return $dom->saveXML();
+ $string = $xs->getString();
+ common_debug($string);
+ return $string;
}
public function unfold($env)
{
$dom = new DOMDocument();
- $dom->loadXML(base64_url_decode($env['data']));
+ $dom->loadXML(Magicsig::base64_url_decode($env['data']));
if ($dom->documentElement->tagName != 'entry') {
return false;
@@ -169,7 +172,7 @@ class MagicEnvelope
return false;
}
- $text = base64_url_decode($env['data']);
+ $text = Magicsig::base64_url_decode($env['data']);
$signer_uri = $this->getAuthor($text);
try {
@@ -207,13 +210,13 @@ class MagicEnvelope
}
$data_element = $env_element->getElementsByTagNameNS(MagicEnvelope::NS, 'data')->item(0);
-
+ $sig_element = $env_element->getElementsByTagNameNS(MagicEnvelope::NS, 'sig')->item(0);
return array(
- 'data' => trim($data_element->nodeValue),
+ 'data' => preg_replace('/\s/', '', $data_element->nodeValue),
'data_type' => $data_element->getAttribute('type'),
'encoding' => $env_element->getElementsByTagNameNS(MagicEnvelope::NS, 'encoding')->item(0)->nodeValue,
'alg' => $env_element->getElementsByTagNameNS(MagicEnvelope::NS, 'alg')->item(0)->nodeValue,
- 'sig' => $env_element->getElementsByTagNameNS(MagicEnvelope::NS, 'sig')->item(0)->nodeValue,
+ 'sig' => preg_replace('/\s/', '', $sig_element->nodeValue),
);
}
diff --git a/plugins/OStatus/lib/ostatusqueuehandler.php b/plugins/OStatus/lib/ostatusqueuehandler.php
index d1e58f1d6..8905d2e21 100644
--- a/plugins/OStatus/lib/ostatusqueuehandler.php
+++ b/plugins/OStatus/lib/ostatusqueuehandler.php
@@ -25,6 +25,18 @@
*/
class OStatusQueueHandler extends QueueHandler
{
+ // If we have more than this many subscribing sites on a single feed,
+ // break up the PuSH distribution into smaller batches which will be
+ // rolled into the queue progressively. This reduces disruption to
+ // other, shorter activities being enqueued while we work.
+ const MAX_UNBATCHED = 50;
+
+ // Each batch (a 'hubprep' entry) will have this many items.
+ // Selected to provide a balance between queue packet size
+ // and number of batches that will end up getting processed.
+ // For 20,000 target sites, 1000 should work acceptably.
+ const BATCH_SIZE = 1000;
+
function transport()
{
return 'ostatus';
@@ -147,14 +159,31 @@ class OStatusQueueHandler extends QueueHandler
/**
* Queue up direct feed update pushes to subscribers on our internal hub.
+ * If there are a large number of subscriber sites, intermediate bulk
+ * distribution triggers may be queued.
+ *
* @param string $atom update feed, containing only new/changed items
* @param HubSub $sub open query of subscribers
*/
function pushFeedInternal($atom, $sub)
{
common_log(LOG_INFO, "Preparing $sub->N PuSH distribution(s) for $sub->topic");
+ $n = 0;
+ $batch = array();
while ($sub->fetch()) {
- $sub->distribute($atom);
+ $n++;
+ if ($n < self::MAX_UNBATCHED) {
+ $sub->distribute($atom);
+ } else {
+ $batch[] = $sub->callback;
+ if (count($batch) >= self::BATCH_SIZE) {
+ $sub->bulkDistribute($atom, $batch);
+ $batch = array();
+ }
+ }
+ }
+ if (count($batch) >= 0) {
+ $sub->bulkDistribute($atom, $batch);
}
}
diff --git a/plugins/OStatus/lib/salmon.php b/plugins/OStatus/lib/salmon.php
index 3d3341bc6..ef7719a40 100644
--- a/plugins/OStatus/lib/salmon.php
+++ b/plugins/OStatus/lib/salmon.php
@@ -28,9 +28,11 @@
*/
class Salmon
{
+ const REL_SALMON = 'salmon';
+ const REL_MENTIONED = 'mentioned';
+ // XXX: these are deprecated
const NS_REPLIES = "http://salmon-protocol.org/ns/salmon-replies";
-
const NS_MENTIONS = "http://salmon-protocol.org/ns/salmon-mention";
/**
diff --git a/plugins/OStatus/lib/xrd.php b/plugins/OStatus/lib/xrd.php
index aa13ef024..a10b9f427 100644
--- a/plugins/OStatus/lib/xrd.php
+++ b/plugins/OStatus/lib/xrd.php
@@ -53,7 +53,14 @@ class XRD
$xrd = new XRD();
$dom = new DOMDocument();
- if (!$dom->loadXML($xml)) {
+
+ // Don't spew XML warnings to output
+ $old = error_reporting();
+ error_reporting($old & ~E_WARNING);
+ $ok = $dom->loadXML($xml);
+ error_reporting($old);
+
+ if (!$ok) {
throw new Exception("Invalid XML");
}
$xrd_element = $dom->getElementsByTagName('XRD')->item(0);
@@ -99,44 +106,43 @@ class XRD
public function toXML()
{
- $dom = new DOMDocument('1.0', 'UTF-8');
- $dom->formatOutput = true;
-
- $xrd_dom = $dom->createElementNS(XRD::XRD_NS, 'XRD');
- $dom->appendChild($xrd_dom);
+ $xs = new XMLStringer();
+
+ $xs->startXML();
+ $xs->elementStart('XRD', array('xmlns' => XRD::XRD_NS));
if ($this->host) {
- $host_dom = $dom->createElement('hm:Host', $this->host);
- $xrd_dom->setAttributeNS(XRD::XML_NS, 'xmlns:hm', XRD::HOST_META_NS);
- $xrd_dom->appendChild($host_dom);
+ $xs->element('hm:Host', array('xmlns:hm' => XRD::HOST_META_NS), $this->host);
+ }
+
+ if ($this->expires) {
+ $xs->element('Expires', null, $this->expires);
+ }
+
+ if ($this->subject) {
+ $xs->element('Subject', null, $this->subject);
+ }
+
+ foreach ($this->alias as $alias) {
+ $xs->element('Alias', null, $alias);
+ }
+
+ foreach ($this->links as $link) {
+ $titles = array();
+ if (isset($link['title'])) {
+ $titles = $link['title'];
+ unset($link['title']);
+ }
+ $xs->elementStart('Link', $link);
+ foreach ($titles as $title) {
+ $xs->element('Title', null, $title);
+ }
+ $xs->elementEnd('Link');
}
- if ($this->expires) {
- $expires_dom = $dom->createElement('Expires', $this->expires);
- $xrd_dom->appendChild($expires_dom);
- }
-
- if ($this->subject) {
- $subject_dom = $dom->createElement('Subject', $this->subject);
- $xrd_dom->appendChild($subject_dom);
- }
-
- foreach ($this->alias as $alias) {
- $alias_dom = $dom->createElement('Alias', $alias);
- $xrd_dom->appendChild($alias_dom);
- }
-
- foreach ($this->types as $type) {
- $type_dom = $dom->createElement('Type', $type);
- $xrd_dom->appendChild($type_dom);
- }
-
- foreach ($this->links as $link) {
- $link_dom = $this->saveLink($dom, $link);
- $xrd_dom->appendChild($link_dom);
- }
-
- return $dom->saveXML();
+ $xs->elementEnd('XRD');
+
+ return $xs->getString();
}
function parseType($element)
@@ -162,32 +168,5 @@ class XRD
return $link;
}
-
- function saveLink($doc, $link)
- {
- $link_element = $doc->createElement('Link');
- if (!empty($link['rel'])) {
- $link_element->setAttribute('rel', $link['rel']);
- }
- if (!empty($link['type'])) {
- $link_element->setAttribute('type', $link['type']);
- }
- if (!empty($link['href'])) {
- $link_element->setAttribute('href', $link['href']);
- }
- if (!empty($link['template'])) {
- $link_element->setAttribute('template', $link['template']);
- }
-
- if (!empty($link['title']) && is_array($link['title'])) {
- foreach($link['title'] as $title) {
- $title = $doc->createElement('Title', $title);
- $link_element->appendChild($title);
- }
- }
-
-
- return $link_element;
- }
}
diff --git a/plugins/OStatus/lib/xrdaction.php b/plugins/OStatus/lib/xrdaction.php
index f1a56e0a8..d8cf648d6 100644
--- a/plugins/OStatus/lib/xrdaction.php
+++ b/plugins/OStatus/lib/xrdaction.php
@@ -76,6 +76,9 @@ class XrdAction extends Action
$salmon_url = common_local_url('usersalmon',
array('id' => $this->user->id));
+ $xrd->links[] = array('rel' => Salmon::REL_SALMON,
+ 'href' => $salmon_url);
+ // XXX : Deprecated - to be removed.
$xrd->links[] = array('rel' => Salmon::NS_REPLIES,
'href' => $salmon_url);
@@ -98,7 +101,7 @@ class XrdAction extends Action
$xrd->links[] = array('rel' => 'http://ostatus.org/schema/1.0/subscribe',
'template' => $url );
- header('Content-type: text/xml');
+ header('Content-type: application/xrd+xml');
print $xrd->toXML();
}
diff --git a/plugins/OStatus/locale/OStatus.po b/plugins/OStatus/locale/OStatus.pot
index 7e33a0eed..97d593ead 100644
--- a/plugins/OStatus/locale/OStatus.po
+++ b/plugins/OStatus/locale/OStatus.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,297 +16,316 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: actions/groupsalmon.php:51
-msgid "Can't accept remote posts for a remote group."
-msgstr ""
-
-#: actions/groupsalmon.php:123
-msgid "Can't read profile to set up group membership."
+#: OStatusPlugin.php:210 OStatusPlugin.php:913 actions/ostatusinit.php:99
+msgid "Subscribe"
msgstr ""
-#: actions/groupsalmon.php:126 actions/groupsalmon.php:169
-msgid "Groups can't join groups."
+#: OStatusPlugin.php:228 OStatusPlugin.php:635 actions/ostatussub.php:105
+#: actions/ostatusinit.php:96
+msgid "Join"
msgstr ""
-#: actions/groupsalmon.php:153
+#: OStatusPlugin.php:451
#, php-format
-msgid "Could not join remote user %1$s to group %2$s."
+msgid "Sent from %s via OStatus"
msgstr ""
-#: actions/groupsalmon.php:166
-msgid "Can't read profile to cancel group membership."
+#: OStatusPlugin.php:503
+msgid "Could not set up remote subscription."
msgstr ""
-#: actions/groupsalmon.php:182
-#, php-format
-msgid "Could not remove remote user %1$s from group %2$s."
+#: OStatusPlugin.php:619
+msgid "Could not set up remote group membership."
msgstr ""
-#: actions/ostatusinit.php:40
-msgid "You can use the local subscription!"
+#: OStatusPlugin.php:636
+#, php-format
+msgid "%s has joined group %s."
msgstr ""
-#: actions/ostatusinit.php:61
-msgid "There was a problem with your session token. Try again, please."
+#: OStatusPlugin.php:644
+msgid "Failed joining remote group."
msgstr ""
-#: actions/ostatusinit.php:79 actions/ostatussub.php:439
-msgid "Subscribe to user"
+#: OStatusPlugin.php:684
+msgid "Leave"
msgstr ""
-#: actions/ostatusinit.php:97
+#: OStatusPlugin.php:685
#, php-format
-msgid "Subscribe to %s"
+msgid "%s has left group %s."
msgstr ""
-#: actions/ostatusinit.php:102
-msgid "User nickname"
+#: OStatusPlugin.php:844
+msgid "Remote"
msgstr ""
-#: actions/ostatusinit.php:103
-msgid "Nickname of the user you want to follow"
+#: OStatusPlugin.php:883
+msgid "Profile update"
msgstr ""
-#: actions/ostatusinit.php:106
-msgid "Profile Account"
+#: OStatusPlugin.php:884
+#, php-format
+msgid "%s has updated their profile page."
msgstr ""
-#: actions/ostatusinit.php:107
-msgid "Your account id (i.e. user@identi.ca)"
+#: OStatusPlugin.php:928
+msgid ""
+"Follow people across social networks that implement <a href=\"http://ostatus."
+"org/\">OStatus</a>."
msgstr ""
-#: actions/ostatusinit.php:110 actions/ostatussub.php:115
-#: OStatusPlugin.php:205
-msgid "Subscribe"
+#: classes/Ostatus_profile.php:566
+msgid "Show more"
msgstr ""
-#: actions/ostatusinit.php:128
-msgid "Must provide a remote profile."
+#: classes/Ostatus_profile.php:1004
+#, php-format
+msgid "Invalid avatar URL %s"
msgstr ""
-#: actions/ostatusinit.php:138
-msgid "Couldn't look up OStatus account profile."
+#: classes/Ostatus_profile.php:1014
+#, php-format
+msgid "Tried to update avatar for unsaved remote profile %s"
msgstr ""
-#: actions/ostatusinit.php:153
-msgid "Couldn't confirm remote profile address."
+#: classes/Ostatus_profile.php:1022
+#, php-format
+msgid "Unable to fetch avatar from %s"
msgstr ""
-#: actions/ostatusinit.php:171
-msgid "OStatus Connect"
+#: lib/salmonaction.php:41
+msgid "This method requires a POST."
msgstr ""
-#: actions/ostatussub.php:68
-msgid "Address or profile URL"
+#: lib/salmonaction.php:45
+msgid "Salmon requires application/magic-envelope+xml"
msgstr ""
-#: actions/ostatussub.php:70
-msgid "Enter the profile URL of a PubSubHubbub-enabled feed"
+#: lib/salmonaction.php:55
+msgid "Salmon signature verification failed."
msgstr ""
-#: actions/ostatussub.php:74
-msgid "Continue"
+#: lib/salmonaction.php:67
+msgid "Salmon post must be an Atom entry."
msgstr ""
-#: actions/ostatussub.php:112 OStatusPlugin.php:503
-msgid "Join"
+#: lib/salmonaction.php:115
+msgid "Unrecognized activity type."
msgstr ""
-#: actions/ostatussub.php:113
-msgid "Join this group"
+#: lib/salmonaction.php:123
+msgid "This target doesn't understand posts."
msgstr ""
-#: actions/ostatussub.php:116
-msgid "Subscribe to this user"
+#: lib/salmonaction.php:128
+msgid "This target doesn't understand follows."
msgstr ""
-#: actions/ostatussub.php:137
-msgid "You are already subscribed to this user."
+#: lib/salmonaction.php:133
+msgid "This target doesn't understand unfollows."
msgstr ""
-#: actions/ostatussub.php:165
-msgid "You are already a member of this group."
+#: lib/salmonaction.php:138
+msgid "This target doesn't understand favorites."
msgstr ""
-#: actions/ostatussub.php:286
-msgid "Empty remote profile URL!"
+#: lib/salmonaction.php:143
+msgid "This target doesn't understand unfavorites."
msgstr ""
-#: actions/ostatussub.php:297
-msgid "Invalid address format."
+#: lib/salmonaction.php:148
+msgid "This target doesn't understand share events."
msgstr ""
-#: actions/ostatussub.php:302
-msgid "Invalid URL or could not reach server."
+#: lib/salmonaction.php:153
+msgid "This target doesn't understand joins."
msgstr ""
-#: actions/ostatussub.php:304
-msgid "Cannot read feed; server returned error."
+#: lib/salmonaction.php:158
+msgid "This target doesn't understand leave events."
msgstr ""
-#: actions/ostatussub.php:306
-msgid "Cannot read feed; server returned an empty page."
+#: tests/gettext-speedtest.php:57
+msgid "Feeds"
msgstr ""
-#: actions/ostatussub.php:308
-msgid "Bad HTML, could not find feed link."
+#: actions/ostatusgroup.php:75
+msgid "Join group"
msgstr ""
-#: actions/ostatussub.php:310
-msgid "Could not find a feed linked from this URL."
+#: actions/ostatusgroup.php:77
+msgid "OStatus group's address, like http://example.net/group/nickname"
msgstr ""
-#: actions/ostatussub.php:312
-msgid "Not a recognized feed type."
+#: actions/ostatusgroup.php:81 actions/ostatussub.php:71
+msgid "Continue"
msgstr ""
-#: actions/ostatussub.php:315
-#, php-format
-msgid "Bad feed URL: %s %s"
+#: actions/ostatusgroup.php:100
+msgid "You are already a member of this group."
msgstr ""
#. TRANS: OStatus remote group subscription dialog error.
-#: actions/ostatussub.php:336
+#: actions/ostatusgroup.php:135
msgid "Already a member!"
msgstr ""
#. TRANS: OStatus remote group subscription dialog error.
-#: actions/ostatussub.php:346
+#: actions/ostatusgroup.php:146
msgid "Remote group join failed!"
msgstr ""
#. TRANS: OStatus remote group subscription dialog error.
-#: actions/ostatussub.php:350
+#: actions/ostatusgroup.php:150
msgid "Remote group join aborted!"
msgstr ""
-#. TRANS: OStatus remote subscription dialog error.
-#: actions/ostatussub.php:356
-msgid "Already subscribed!"
+#. TRANS: Page title for OStatus remote group join form
+#: actions/ostatusgroup.php:163
+msgid "Confirm joining remote group"
msgstr ""
-#. TRANS: OStatus remote subscription dialog error.
-#: actions/ostatussub.php:361
-msgid "Remote subscription failed!"
+#: actions/ostatusgroup.php:174
+msgid ""
+"You can subscribe to groups from other supported sites. Paste the group's "
+"profile URI below:"
msgstr ""
-#. TRANS: Page title for OStatus remote subscription form
-#: actions/ostatussub.php:459
-msgid "Authorize subscription"
+#: actions/groupsalmon.php:51
+msgid "Can't accept remote posts for a remote group."
msgstr ""
-#: actions/ostatussub.php:470
-msgid ""
-"You can subscribe to users from other supported sites. Paste their address "
-"or profile URI below:"
+#: actions/groupsalmon.php:124
+msgid "Can't read profile to set up group membership."
msgstr ""
-#: classes/Ostatus_profile.php:789
-#, php-format
-msgid "Tried to update avatar for unsaved remote profile %s"
+#: actions/groupsalmon.php:127 actions/groupsalmon.php:170
+msgid "Groups can't join groups."
msgstr ""
-#: classes/Ostatus_profile.php:797
+#: actions/groupsalmon.php:154
#, php-format
-msgid "Unable to fetch avatar from %s"
+msgid "Could not join remote user %1$s to group %2$s."
msgstr ""
-#: lib/salmonaction.php:41
-msgid "This method requires a POST."
+#: actions/groupsalmon.php:167
+msgid "Can't read profile to cancel group membership."
msgstr ""
-#: lib/salmonaction.php:45
-msgid "Salmon requires application/magic-envelope+xml"
+#: actions/groupsalmon.php:183
+#, php-format
+msgid "Could not remove remote user %1$s from group %2$s."
msgstr ""
-#: lib/salmonaction.php:55
-msgid "Salmon signature verification failed."
+#: actions/ostatussub.php:65
+msgid "Subscribe to"
msgstr ""
-#: lib/salmonaction.php:67
-msgid "Salmon post must be an Atom entry."
+#: actions/ostatussub.php:67
+msgid ""
+"OStatus user's address, like nickname@example.com or http://example.net/"
+"nickname"
msgstr ""
-#: lib/salmonaction.php:115
-msgid "Unrecognized activity type."
+#: actions/ostatussub.php:106
+msgid "Join this group"
msgstr ""
-#: lib/salmonaction.php:123
-msgid "This target doesn't understand posts."
+#. TRANS: Page title for OStatus remote subscription form
+#: actions/ostatussub.php:108 actions/ostatussub.php:400
+msgid "Confirm"
msgstr ""
-#: lib/salmonaction.php:128
-msgid "This target doesn't understand follows."
+#: actions/ostatussub.php:109
+msgid "Subscribe to this user"
msgstr ""
-#: lib/salmonaction.php:133
-msgid "This target doesn't understand unfollows."
+#: actions/ostatussub.php:130
+msgid "You are already subscribed to this user."
msgstr ""
-#: lib/salmonaction.php:138
-msgid "This target doesn't understand favorites."
+#: actions/ostatussub.php:247 actions/ostatussub.php:253
+#: actions/ostatussub.php:272
+msgid ""
+"Sorry, we could not reach that address. Please make sure that the OStatus "
+"address is like nickname@example.com or http://example.net/nickname"
msgstr ""
-#: lib/salmonaction.php:143
-msgid "This target doesn't understand unfavorites."
+#: actions/ostatussub.php:256 actions/ostatussub.php:259
+#: actions/ostatussub.php:262 actions/ostatussub.php:265
+#: actions/ostatussub.php:268
+msgid ""
+"Sorry, we could not reach that feed. Please try that OStatus address again "
+"later."
msgstr ""
-#: lib/salmonaction.php:148
-msgid "This target doesn't understand share events."
+#. TRANS: OStatus remote subscription dialog error.
+#: actions/ostatussub.php:301
+msgid "Already subscribed!"
msgstr ""
-#: lib/salmonaction.php:153
-msgid "This target doesn't understand joins."
+#. TRANS: OStatus remote subscription dialog error.
+#: actions/ostatussub.php:306
+msgid "Remote subscription failed!"
msgstr ""
-#: lib/salmonaction.php:158
-msgid "This target doesn't understand leave events."
+#: actions/ostatussub.php:380 actions/ostatusinit.php:81
+msgid "Subscribe to user"
msgstr ""
-#: OStatusPlugin.php:319
-#, php-format
-msgid "Sent from %s via OStatus"
+#: actions/ostatussub.php:411
+msgid ""
+"You can subscribe to users from other supported sites. Paste their address "
+"or profile URI below:"
msgstr ""
-#: OStatusPlugin.php:371
-msgid "Could not set up remote subscription."
+#: actions/ostatusinit.php:41
+msgid "You can use the local subscription!"
msgstr ""
-#: OStatusPlugin.php:487
-msgid "Could not set up remote group membership."
+#: actions/ostatusinit.php:63
+msgid "There was a problem with your session token. Try again, please."
msgstr ""
-#: OStatusPlugin.php:504
+#: actions/ostatusinit.php:95
#, php-format
-msgid "%s has joined group %s."
+msgid "Join group %s"
msgstr ""
-#: OStatusPlugin.php:512
-msgid "Failed joining remote group."
+#: actions/ostatusinit.php:98
+#, php-format
+msgid "Subscribe to %s"
msgstr ""
-#: OStatusPlugin.php:553
-msgid "Leave"
+#: actions/ostatusinit.php:111
+msgid "User nickname"
msgstr ""
-#: OStatusPlugin.php:554
-#, php-format
-msgid "%s has left group %s."
+#: actions/ostatusinit.php:112
+msgid "Nickname of the user you want to follow"
msgstr ""
-#: OStatusPlugin.php:685
-msgid "Subscribe to remote user"
+#: actions/ostatusinit.php:116
+msgid "Profile Account"
msgstr ""
-#: OStatusPlugin.php:726
-msgid "Profile update"
+#: actions/ostatusinit.php:117
+msgid "Your account id (i.e. user@identi.ca)"
msgstr ""
-#: OStatusPlugin.php:727
-#, php-format
-msgid "%s has updated their profile page."
+#: actions/ostatusinit.php:138
+msgid "Must provide a remote profile."
msgstr ""
-#: tests/gettext-speedtest.php:57
-msgid "Feeds"
+#: actions/ostatusinit.php:149
+msgid "Couldn't look up OStatus account profile."
+msgstr ""
+
+#: actions/ostatusinit.php:161
+msgid "Couldn't confirm remote profile address."
+msgstr ""
+
+#: actions/ostatusinit.php:202
+msgid "OStatus Connect"
msgstr ""
diff --git a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po b/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po
deleted file mode 100644
index f17dfa50a..000000000
--- a/plugins/OStatus/locale/fr/LC_MESSAGES/OStatus.po
+++ /dev/null
@@ -1,106 +0,0 @@
-# SOME DESCRIPTIVE TITLE.
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
-# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
-#
-#, fuzzy
-msgid ""
-msgstr ""
-"Project-Id-Version: PACKAGE VERSION\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2009-12-07 14:14-0800\n"
-"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
-"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
-"Language-Team: LANGUAGE <LL@li.org>\n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-
-#: FeedSubPlugin.php:77
-msgid "Feeds"
-msgstr "Flux"
-
-#: FeedSubPlugin.php:78
-msgid "Feed subscription options"
-msgstr "Préférences pour abonnement flux"
-
-#: feedmunger.php:215
-#, php-format
-msgid "New post: \"%1$s\" %2$s"
-msgstr "Nouveau: \"%1$s\" %2$s"
-
-#: actions/feedsubsettings.php:41
-msgid "Feed subscriptions"
-msgstr "Abonnements aux fluxes"
-
-#: actions/feedsubsettings.php:52
-msgid ""
-"You can subscribe to feeds from other sites; updates will appear in your "
-"personal timeline."
-msgstr ""
-"Abonner aux fluxes RSS ou Atom des autres sites web; les temps se trouverair"
-"en votre flux personnel."
-
-#: actions/feedsubsettings.php:96
-msgid "Subscribe"
-msgstr "Abonner"
-
-#: actions/feedsubsettings.php:98
-msgid "Continue"
-msgstr "Prochaine"
-
-#: actions/feedsubsettings.php:151
-msgid "Empty feed URL!"
-msgstr ""
-
-#: actions/feedsubsettings.php:161
-msgid "Invalid URL or could not reach server."
-msgstr ""
-
-#: actions/feedsubsettings.php:164
-msgid "Cannot read feed; server returned error."
-msgstr ""
-
-#: actions/feedsubsettings.php:167
-msgid "Cannot read feed; server returned an empty page."
-msgstr ""
-
-#: actions/feedsubsettings.php:170
-msgid "Bad HTML, could not find feed link."
-msgstr ""
-
-#: actions/feedsubsettings.php:173
-msgid "Could not find a feed linked from this URL."
-msgstr ""
-
-#: actions/feedsubsettings.php:176
-msgid "Not a recognized feed type."
-msgstr ""
-
-#: actions/feedsubsettings.php:180
-msgid "Bad feed URL."
-msgstr ""
-
-#: actions/feedsubsettings.php:188
-msgid "Feed is not PuSH-enabled; cannot subscribe."
-msgstr ""
-
-#: actions/feedsubsettings.php:208
-msgid "Feed subscription failed! Bad response from hub."
-msgstr ""
-
-#: actions/feedsubsettings.php:218
-msgid "Already subscribed!"
-msgstr ""
-
-#: actions/feedsubsettings.php:220
-msgid "Feed subscribed!"
-msgstr ""
-
-#: actions/feedsubsettings.php:222
-msgid "Feed subscription failed!"
-msgstr ""
-
-#: actions/feedsubsettings.php:231
-msgid "Previewing feed:"
-msgstr ""
diff --git a/plugins/OStatus/scripts/fixup-shadow.php b/plugins/OStatus/scripts/fixup-shadow.php
index ec014c787..6522ca240 100644
--- a/plugins/OStatus/scripts/fixup-shadow.php
+++ b/plugins/OStatus/scripts/fixup-shadow.php
@@ -50,20 +50,47 @@ $encGroup = str_replace($marker, '%', $encGroup);
$sql = "SELECT * FROM ostatus_profile WHERE uri LIKE '%s' OR uri LIKE '%s'";
$oprofile->query(sprintf($sql, $encProfile, $encGroup));
-echo "Found $oprofile->N bogus ostatus_profile entries for local users and groups:\n";
+$count = $oprofile->N;
+echo "Found $count bogus ostatus_profile entries shadowing local users and groups:\n";
while ($oprofile->fetch()) {
- echo "$oprofile->uri";
-
+ $uri = $oprofile->uri;
+ if (preg_match('!/group/(\d+)/id!', $oprofile->uri, $matches)) {
+ $id = intval($matches[1]);
+ $group = Local_group::staticGet('group_id', $id);
+ if ($group) {
+ $nick = $group->nickname;
+ } else {
+ $nick = '<deleted>';
+ }
+ echo "group $id ($nick) hidden by $uri";
+ } else if (preg_match('!/user/(\d+)!', $uri, $matches)) {
+ $id = intval($matches[1]);
+ $user = User::staticGet('id', $id);
+ if ($user) {
+ $nick = $user->nickname;
+ } else {
+ $nick = '<deleted>';
+ }
+ echo "user $id ($nick) hidden by $uri";
+ } else {
+ echo "$uri matched query, but we don't recognize it.\n";
+ continue;
+ }
+
if ($dry) {
- echo " (unchanged)\n";
+ echo " - skipping\n";
} else {
- echo " removing bogus ostatus_profile entry...";
+ echo " - removing bogus ostatus_profile entry...";
$evil = clone($oprofile);
$evil->delete();
echo " ok\n";
}
}
-echo "done.\n";
+if ($count && $dry) {
+ echo "NO CHANGES MADE -- To delete the bogus entries, run again without --dry-run option.\n";
+} else {
+ echo "done.\n";
+}
diff --git a/plugins/OStatus/scripts/resub-feed.php b/plugins/OStatus/scripts/resub-feed.php
new file mode 100644
index 000000000..121d12109
--- /dev/null
+++ b/plugins/OStatus/scripts/resub-feed.php
@@ -0,0 +1,74 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
+
+$helptext = <<<END_OF_HELP
+resub-feed.php [options] http://example.com/atom-feed-url
+Reinitialize the PuSH subscription for the given feed. This may help get
+things restarted if we and the hub have gotten our states out of sync.
+
+
+END_OF_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+if (empty($args[0]) || !Validate::uri($args[0])) {
+ print "$helptext";
+ exit(1);
+}
+
+$feedurl = $args[0];
+
+
+$sub = FeedSub::staticGet('topic', $feedurl);
+if (!$sub) {
+ print "Feed $feedurl is not subscribed.\n";
+ exit(1);
+}
+
+print "Old state:\n";
+showSub($sub);
+
+print "\n";
+print "Pinging hub $sub->huburi with new subscription for $sub->uri\n";
+$ok = $sub->subscribe();
+
+if ($ok) {
+ print "ok\n";
+} else {
+ print "Could not confirm.\n";
+}
+
+$sub2 = FeedSub::staticGet('topic', $feedurl);
+
+print "\n";
+print "New state:\n";
+showSub($sub2);
+
+function showSub($sub)
+{
+ print " Subscription state: $sub->sub_state\n";
+ print " Verify token: $sub->verify_token\n";
+ print " Signature secret: $sub->secret\n";
+ print " Sub start date: $sub->sub_start\n";
+ print " Record created: $sub->created\n";
+ print " Record modified: $sub->modified\n";
+}
diff --git a/plugins/OStatus/scripts/update-profile.php b/plugins/OStatus/scripts/update-profile.php
new file mode 100644
index 000000000..64afa0f35
--- /dev/null
+++ b/plugins/OStatus/scripts/update-profile.php
@@ -0,0 +1,147 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
+
+$helptext = <<<END_OF_HELP
+update-profile.php [options] http://example.com/profile/url
+
+Rerun profile and feed info discovery for the given OStatus remote profile,
+and reinitialize its PuSH subscription for the given feed. This may help get
+things restarted if the hub or feed URLs have changed for the profile.
+
+
+END_OF_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+if (empty($args[0]) || !Validate::uri($args[0])) {
+ print "$helptext";
+ exit(1);
+}
+
+$uri = $args[0];
+
+
+$oprofile = Ostatus_profile::staticGet('uri', $uri);
+
+if (!$oprofile) {
+ print "No OStatus remote profile known for URI $uri\n";
+ exit(1);
+}
+
+print "Old profile state for $oprofile->uri\n";
+showProfile($oprofile);
+
+print "\n";
+print "Re-running feed discovery for profile URL $oprofile->uri\n";
+// @fixme will bork where the URI isn't the profile URL for now
+$discover = new FeedDiscovery();
+$feedurl = $discover->discoverFromURL($oprofile->uri);
+$huburi = $discover->getHubLink();
+$salmonuri = $discover->getAtomLink(Salmon::NS_REPLIES);
+
+print " Feed URL: $feedurl\n";
+print " Hub URL: $huburi\n";
+print " Salmon URL: $salmonuri\n";
+
+if ($feedurl != $oprofile->feeduri || $salmonuri != $oprofile->salmonuri) {
+ print "\n";
+ print "Updating...\n";
+ // @fixme update keys :P
+ #$orig = clone($oprofile);
+ #$oprofile->feeduri = $feedurl;
+ #$oprofile->salmonuri = $salmonuri;
+ #$ok = $oprofile->update($orig);
+ $ok = $oprofile->query('UPDATE ostatus_profile SET ' .
+ 'feeduri=\'' . $oprofile->escape($feedurl) . '\',' .
+ 'salmonuri=\'' . $oprofile->escape($salmonuri) . '\' ' .
+ 'WHERE uri=\'' . $oprofile->escape($uri) . '\'');
+
+ if (!$ok) {
+ print "Failed to update profile record...\n";
+ exit(1);
+ }
+
+ $oprofile->decache();
+} else {
+ print "\n";
+ print "Ok, ostatus_profile record unchanged.\n\n";
+}
+
+$sub = FeedSub::ensureFeed($feedurl);
+
+if ($huburi != $sub->huburi) {
+ print "\n";
+ print "Updating hub record for feed; was $sub->huburi\n";
+ $orig = clone($sub);
+ $sub->huburi = $huburi;
+ $ok = $sub->update($orig);
+
+ if (!$ok) {
+ print "Failed to update sub record...\n";
+ exit(1);
+ }
+} else {
+ print "\n";
+ print "Feed record ok, not changing.\n\n";
+}
+
+print "\n";
+print "Pinging hub $sub->huburi with new subscription for $sub->uri\n";
+$ok = $sub->subscribe();
+
+if ($ok) {
+ print "ok\n";
+} else {
+ print "Could not confirm.\n";
+}
+
+$o2 = Ostatus_profile::staticGet('uri', $uri);
+
+print "\n";
+print "New profile state:\n";
+showProfile($o2);
+
+print "\n";
+print "New feed state:\n";
+$sub2 = FeedSub::ensureFeed($feedurl);
+showSub($sub2);
+
+function showProfile($oprofile)
+{
+ print " Feed URL: $oprofile->feeduri\n";
+ print " Salmon URL: $oprofile->salmonuri\n";
+ print " Avatar URL: $oprofile->avatar\n";
+ print " Profile ID: $oprofile->profile_id\n";
+ print " Group ID: $oprofile->group_id\n";
+ print " Record created: $oprofile->created\n";
+ print " Record modified: $oprofile->modified\n";
+}
+
+function showSub($sub)
+{
+ print " Subscription state: $sub->sub_state\n";
+ print " Verify token: $sub->verify_token\n";
+ print " Signature secret: $sub->secret\n";
+ print " Sub start date: $sub->sub_start\n";
+ print " Record created: $sub->created\n";
+ print " Record modified: $sub->modified\n";
+}
diff --git a/plugins/OStatus/tests/FeedDiscoveryTest.php b/plugins/OStatus/tests/FeedDiscoveryTest.php
index 1c5249701..0e6354a86 100644
--- a/plugins/OStatus/tests/FeedDiscoveryTest.php
+++ b/plugins/OStatus/tests/FeedDiscoveryTest.php
@@ -10,7 +10,7 @@ define('STATUSNET', true);
define('LACONICA', true);
require_once INSTALLDIR . '/lib/common.php';
-require_once INSTALLDIR . '/plugins/FeedSub/feedsub.php';
+require_once INSTALLDIR . '/plugins/OStatus/lib/feeddiscovery.php';
class FeedDiscoveryTest extends PHPUnit_Framework_TestCase
{
diff --git a/plugins/OStatus/tests/remote-tests.php b/plugins/OStatus/tests/remote-tests.php
new file mode 100644
index 000000000..24b4b1660
--- /dev/null
+++ b/plugins/OStatus/tests/remote-tests.php
@@ -0,0 +1,555 @@
+<?php
+
+if (php_sapi_name() != 'cli') {
+ die('not for web');
+}
+
+define('INSTALLDIR', dirname(dirname(dirname(dirname(__FILE__)))));
+set_include_path(INSTALLDIR . '/extlib' . PATH_SEPARATOR . get_include_path());
+
+require_once 'PEAR.php';
+require_once 'Net/URL2.php';
+require_once 'HTTP/Request2.php';
+
+
+// ostatus test script, client-side :)
+
+class TestBase
+{
+ function log($str)
+ {
+ $args = func_get_args();
+ array_shift($args);
+
+ $msg = vsprintf($str, $args);
+ print $msg . "\n";
+ }
+
+ function assertEqual($a, $b)
+ {
+ if ($a != $b) {
+ throw new Exception("Failed to assert equality: expected $a, got $b");
+ }
+ return true;
+ }
+
+ function assertNotEqual($a, $b)
+ {
+ if ($a == $b) {
+ throw new Exception("Failed to assert inequality: expected not $a, got $b");
+ }
+ return true;
+ }
+
+ function assertTrue($a)
+ {
+ if (!$a) {
+ throw new Exception("Failed to assert true: got false");
+ }
+ }
+
+ function assertFalse($a)
+ {
+ if ($a) {
+ throw new Exception("Failed to assert false: got true");
+ }
+ }
+}
+
+class OStatusTester extends TestBase
+{
+ /**
+ * @param string $a base URL of test site A (eg http://localhost/mublog)
+ * @param string $b base URL of test site B (eg http://localhost/mublog2)
+ */
+ function __construct($a, $b) {
+ $this->a = $a;
+ $this->b = $b;
+
+ $base = 'test' . mt_rand(1, 1000000);
+ $this->pub = new SNTestClient($this->a, 'pub' . $base, 'pw-' . mt_rand(1, 1000000));
+ $this->sub = new SNTestClient($this->b, 'sub' . $base, 'pw-' . mt_rand(1, 1000000));
+ }
+
+ function run()
+ {
+ $this->setup();
+
+ $methods = get_class_methods($this);
+ foreach ($methods as $method) {
+ if (strtolower(substr($method, 0, 4)) == 'test') {
+ print "\n";
+ print "== $method ==\n";
+ call_user_func(array($this, $method));
+ }
+ }
+
+ print "\n";
+ $this->log("DONE!");
+ }
+
+ function setup()
+ {
+ $this->pub->register();
+ $this->pub->assertRegistered();
+
+ $this->sub->register();
+ $this->sub->assertRegistered();
+ }
+
+ function testLocalPost()
+ {
+ $post = $this->pub->post("Local post, no subscribers yet.");
+ $this->assertNotEqual('', $post);
+
+ $post = $this->sub->post("Local post, no subscriptions yet.");
+ $this->assertNotEqual('', $post);
+ }
+
+ /**
+ * pub posts: @b/sub
+ */
+ function testMentionUrl()
+ {
+ $bits = parse_url($this->b);
+ $base = $bits['host'];
+ if (isset($bits['path'])) {
+ $base .= $bits['path'];
+ }
+ $name = $this->sub->username;
+
+ $post = $this->pub->post("@$base/$name should have this in home and replies");
+ $this->sub->assertReceived($post);
+ }
+
+ function testSubscribe()
+ {
+ $this->assertFalse($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertFalse($this->pub->hasSubscriber($this->sub->getProfileUri()));
+ $this->sub->subscribe($this->pub->getProfileLink());
+ $this->assertTrue($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertTrue($this->pub->hasSubscriber($this->sub->getProfileUri()));
+ }
+
+ function testPush()
+ {
+ $this->assertTrue($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertTrue($this->pub->hasSubscriber($this->sub->getProfileUri()));
+
+ $name = $this->sub->username;
+ $post = $this->pub->post("Regular post, which $name should get via PuSH");
+ $this->sub->assertReceived($post);
+ }
+
+ function testMentionSubscribee()
+ {
+ $this->assertTrue($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertFalse($this->pub->hasSubscription($this->sub->getProfileUri()));
+
+ $name = $this->pub->username;
+ $post = $this->sub->post("Just a quick note back to my remote subscribee @$name");
+ $this->pub->assertReceived($post);
+ }
+
+ function testUnsubscribe()
+ {
+ $this->assertTrue($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertTrue($this->pub->hasSubscriber($this->sub->getProfileUri()));
+ $this->sub->unsubscribe($this->pub->getProfileLink());
+ $this->assertFalse($this->sub->hasSubscription($this->pub->getProfileUri()));
+ $this->assertFalse($this->pub->hasSubscriber($this->sub->getProfileUri()));
+ }
+
+}
+
+class SNTestClient extends TestBase
+{
+ function __construct($base, $username, $password)
+ {
+ $this->basepath = $base;
+ $this->username = $username;
+ $this->password = $password;
+
+ $this->fullname = ucfirst($username) . ' Smith';
+ $this->homepage = 'http://example.org/' . $username;
+ $this->bio = 'Stub account for OStatus tests.';
+ $this->location = 'Montreal, QC';
+ }
+
+ /**
+ * Make a low-level web hit to this site, with authentication.
+ * @param string $path URL fragment for something under the base path
+ * @param array $params POST parameters to send
+ * @param boolean $auth whether to include auth data
+ * @return string
+ * @throws Exception on low-level error conditions
+ */
+ protected function hit($path, $params=array(), $auth=false, $cookies=array())
+ {
+ $url = $this->basepath . '/' . $path;
+
+ $http = new HTTP_Request2($url, 'POST');
+ if ($auth) {
+ $http->setAuth($this->username, $this->password, HTTP_Request2::AUTH_BASIC);
+ }
+ foreach ($cookies as $name => $val) {
+ $http->addCookie($name, $val);
+ }
+ $http->addPostParameter($params);
+ $response = $http->send();
+
+ $code = $response->getStatus();
+ if ($code < '200' || $code >= '400') {
+ throw new Exception("Failed API hit to $url: $code\n" . $response->getBody());
+ }
+
+ return $response;
+ }
+
+ /**
+ * Make a hit to a web form, without authentication but with a session.
+ * @param string $path URL fragment relative to site base
+ * @param string $form id of web form to pull initial parameters from
+ * @param array $params POST parameters, will be merged with defaults in form
+ */
+ protected function web($path, $form, $params=array())
+ {
+ $url = $this->basepath . '/' . $path;
+ $http = new HTTP_Request2($url, 'GET');
+ $response = $http->send();
+
+ $dom = $this->checkWeb($url, 'GET', $response);
+ $cookies = array();
+ foreach ($response->getCookies() as $cookie) {
+ // @fixme check for expirations etc
+ $cookies[$cookie['name']] = $cookie['value'];
+ }
+
+ $form = $dom->getElementById($form);
+ if (!$form) {
+ throw new Exception("Form $form not found on $url");
+ }
+ $inputs = $form->getElementsByTagName('input');
+ foreach ($inputs as $item) {
+ $type = $item->getAttribute('type');
+ if ($type != 'check') {
+ $name = $item->getAttribute('name');
+ $val = $item->getAttribute('value');
+ if ($name && $val && !isset($params[$name])) {
+ $params[$name] = $val;
+ }
+ }
+ }
+
+ $response = $this->hit($path, $params, false, $cookies);
+ $dom = $this->checkWeb($url, 'POST', $response);
+
+ return $dom;
+ }
+
+ protected function checkWeb($url, $method, $response)
+ {
+ $dom = new DOMDocument();
+ if (!$dom->loadHTML($response->getBody())) {
+ throw new Exception("Invalid HTML from $method to $url");
+ }
+
+ $xpath = new DOMXPath($dom);
+ $error = $xpath->query('//p[@class="error"]');
+ if ($error && $error->length) {
+ throw new Exception("Error on $method to $url: " .
+ $error->item(0)->textContent);
+ }
+
+ return $dom;
+ }
+
+ protected function parseXml($path, $body)
+ {
+ $dom = new DOMDocument();
+ if ($dom->loadXML($body)) {
+ return $dom;
+ } else {
+ throw new Exception("Bogus XML data from $path:\n$body");
+ }
+ }
+
+ /**
+ * Make a hit to a REST-y XML page on the site, without authentication.
+ * @param string $path URL fragment for something relative to base
+ * @param array $params POST parameters to send
+ * @return DOMDocument
+ * @throws Exception on low-level error conditions
+ */
+ protected function xml($path, $params=array())
+ {
+ $response = $this->hit($path, $params, true);
+ $body = $response->getBody();
+ return $this->parseXml($path, $body);
+ }
+
+ protected function parseJson($path, $body)
+ {
+ $data = json_decode($body, true);
+ if ($data !== null) {
+ if (!empty($data['error'])) {
+ throw new Exception("JSON API returned error: " . $data['error']);
+ }
+ return $data;
+ } else {
+ throw new Exception("Bogus JSON data from $path:\n$body");
+ }
+ }
+
+ /**
+ * Make an API hit to this site, with authentication.
+ * @param string $path URL fragment for something under 'api' folder
+ * @param string $style one of 'json', 'xml', or 'atom'
+ * @param array $params POST parameters to send
+ * @return mixed associative array for JSON, DOMDocument for XML/Atom
+ * @throws Exception on low-level error conditions
+ */
+ protected function api($path, $style, $params=array())
+ {
+ $response = $this->hit("api/$path.$style", $params, true);
+ $body = $response->getBody();
+ if ($style == 'json') {
+ return $this->parseJson($path, $body);
+ } else if ($style == 'xml' || $style == 'atom') {
+ return $this->parseXml($path, $body);
+ } else {
+ throw new Exception("API needs to be JSON, XML, or Atom");
+ }
+ }
+
+ /**
+ * Register the account.
+ *
+ * Unfortunately there's not an API method for registering, so we fake it.
+ */
+ function register()
+ {
+ $this->log("Registering user %s on %s",
+ $this->username,
+ $this->basepath);
+ $ret = $this->web('main/register', 'form_register',
+ array('nickname' => $this->username,
+ 'password' => $this->password,
+ 'confirm' => $this->password,
+ 'fullname' => $this->fullname,
+ 'homepage' => $this->homepage,
+ 'bio' => $this->bio,
+ 'license' => 1,
+ 'submit' => 'Register'));
+ }
+
+ /**
+ * @return string canonical URI/URL to profile page
+ */
+ function getProfileUri()
+ {
+ $data = $this->api('account/verify_credentials', 'json');
+ $id = $data['id'];
+ return $this->basepath . '/user/' . $id;
+ }
+
+ /**
+ * @return string human-friendly URL to profile page
+ */
+ function getProfileLink()
+ {
+ return $this->basepath . '/' . $this->username;
+ }
+
+ /**
+ * Check that the account has been registered and can be used.
+ * On failure, throws a test failure exception.
+ */
+ function assertRegistered()
+ {
+ $this->log("Confirming %s is registered on %s",
+ $this->username,
+ $this->basepath);
+ $data = $this->api('account/verify_credentials', 'json');
+ $this->assertEqual($this->username, $data['screen_name']);
+ $this->assertEqual($this->fullname, $data['name']);
+ $this->assertEqual($this->homepage, $data['url']);
+ $this->assertEqual($this->bio, $data['description']);
+ $this->log(" looks good!");
+ }
+
+ /**
+ * Post a given message from this account
+ * @param string $message
+ * @return string URL/URI of notice
+ * @todo reply, location options
+ */
+ function post($message)
+ {
+ $this->log("Posting notice as %s on %s: %s",
+ $this->username,
+ $this->basepath,
+ $message);
+ $data = $this->api('statuses/update', 'json',
+ array('status' => $message));
+
+ $url = $this->basepath . '/notice/' . $data['id'];
+ return $url;
+ }
+
+ /**
+ * Check that this account has received the notice.
+ * @param string $notice_uri URI for the notice to check for
+ */
+ function assertReceived($notice_uri)
+ {
+ $timeout = 5;
+ $tries = 6;
+ while ($tries) {
+ $ok = $this->checkReceived($notice_uri);
+ if ($ok) {
+ return true;
+ }
+ $tries--;
+ if ($tries) {
+ $this->log(" didn't see it yet, waiting $timeout seconds");
+ sleep($timeout);
+ }
+ }
+ throw new Exception(" message $notice_uri not received by $this->username");
+ }
+
+ /**
+ * Pull the user's home timeline to check if a notice with the given
+ * source URL has been received recently.
+ * If we don't see it, we'll try a couple more times up to 10 seconds.
+ *
+ * @param string $notice_uri
+ */
+ function checkReceived($notice_uri)
+ {
+ $this->log("Checking if %s on %s received notice %s",
+ $this->username,
+ $this->basepath,
+ $notice_uri);
+ $params = array();
+ $dom = $this->api('statuses/home_timeline', 'atom', $params);
+
+ $xml = simplexml_import_dom($dom);
+ if (!$xml->entry) {
+ return false;
+ }
+ if (is_array($xml->entry)) {
+ $entries = $xml->entry;
+ } else {
+ $entries = array($xml->entry);
+ }
+ foreach ($entries as $entry) {
+ if ($entry->id == $notice_uri) {
+ $this->log(" found it $notice_uri");
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ * @param string $profile user page link or webfinger
+ */
+ function subscribe($profile)
+ {
+ // This uses the command interface, since there's not currently
+ // a friendly Twit-API way to do a fresh remote subscription and
+ // the web form's a pain to use.
+ $this->post('follow ' . $profile);
+ }
+
+ /**
+ * @param string $profile user page link or webfinger
+ */
+ function unsubscribe($profile)
+ {
+ // This uses the command interface, since there's not currently
+ // a friendly Twit-API way to do a fresh remote subscription and
+ // the web form's a pain to use.
+ $this->post('leave ' . $profile);
+ }
+
+ /**
+ * Check that this account is subscribed to the given profile.
+ * @param string $profile_uri URI for the profile to check for
+ * @return boolean
+ */
+ function hasSubscription($profile_uri)
+ {
+ $this->log("Checking if $this->username has a subscription to $profile_uri");
+
+ $me = $this->getProfileUri();
+ return $this->checkSubscription($me, $profile_uri);
+ }
+
+ /**
+ * Check that this account is subscribed to by the given profile.
+ * @param string $profile_uri URI for the profile to check for
+ * @return boolean
+ */
+ function hasSubscriber($profile_uri)
+ {
+ $this->log("Checking if $this->username is subscribed to by $profile_uri");
+
+ $me = $this->getProfileUri();
+ return $this->checkSubscription($profile_uri, $me);
+ }
+
+ protected function checkSubscription($subscriber, $subscribed)
+ {
+ // Using FOAF as the API methods for checking the social graph
+ // currently are unfriendly to remote profiles
+ $ns_foaf = 'http://xmlns.com/foaf/0.1/';
+ $ns_sioc = 'http://rdfs.org/sioc/ns#';
+ $ns_rdf = 'http://www.w3.org/1999/02/22-rdf-syntax-ns#';
+
+ $dom = $this->xml($this->username . '/foaf');
+ $agents = $dom->getElementsByTagNameNS($ns_foaf, 'Agent');
+ foreach ($agents as $agent) {
+ $agent_uri = $agent->getAttributeNS($ns_rdf, 'about');
+ if ($agent_uri == $subscriber) {
+ $follows = $agent->getElementsByTagNameNS($ns_sioc, 'follows');
+ foreach ($follows as $follow) {
+ $target = $follow->getAttributeNS($ns_rdf, 'resource');
+ if ($target == ($subscribed . '#acct')) {
+ $this->log(" confirmed $subscriber subscribed to $subscribed");
+ return true;
+ }
+ }
+ $this->log(" we found $subscriber but they don't follow $subscribed");
+ return false;
+ }
+ }
+ $this->log(" can't find $subscriber in {$this->username}'s social graph.");
+ return false;
+ }
+
+}
+
+$args = array_slice($_SERVER['argv'], 1);
+if (count($args) < 2) {
+ print <<<END_HELP
+remote-tests.php <url1> <url2>
+ url1: base URL of a StatusNet instance
+ url2: base URL of another StatusNet instance
+
+This will register user accounts on the two given StatusNet instances
+and run some tests to confirm that OStatus subscription and posting
+between the two sites works correctly.
+
+END_HELP;
+exit(1);
+}
+
+$a = $args[0];
+$b = $args[1];
+
+$tester = new OStatusTester($a, $b);
+$tester->run();
+
diff --git a/plugins/OpenExternalLinkTarget/OpenExternalLinkTargetPlugin.php b/plugins/OpenExternalLinkTarget/OpenExternalLinkTargetPlugin.php
index ebb0189e0..6756f1993 100644
--- a/plugins/OpenExternalLinkTarget/OpenExternalLinkTargetPlugin.php
+++ b/plugins/OpenExternalLinkTarget/OpenExternalLinkTargetPlugin.php
@@ -45,7 +45,7 @@ class OpenExternalLinkTargetPlugin extends Plugin
{
function onEndShowScripts($action)
{
- $action->inlineScript('$("a[rel~=external]").click(function(){ window.open(this.href); return false; });');
+ $action->inlineScript('$("a[rel~=external]:not([class~=attachment])").live("click", function(){ window.open(this.href); return false; });');
return true;
}
diff --git a/plugins/OpenExternalLinkTarget/locale/OpenExternalLinkTarget.pot b/plugins/OpenExternalLinkTarget/locale/OpenExternalLinkTarget.pot
new file mode 100644
index 000000000..f9bd4af10
--- /dev/null
+++ b/plugins/OpenExternalLinkTarget/locale/OpenExternalLinkTarget.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: OpenExternalLinkTargetPlugin.php:60
+msgid "Opens external links (i.e., with rel=external) on a new window or tab"
+msgstr ""
diff --git a/plugins/OpenID/OpenIDPlugin.php b/plugins/OpenID/OpenIDPlugin.php
index 6b35ec3e1..7d6a5dc00 100644
--- a/plugins/OpenID/OpenIDPlugin.php
+++ b/plugins/OpenID/OpenIDPlugin.php
@@ -20,7 +20,9 @@
* @category Plugin
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
- * @copyright 2009 StatusNet, Inc.
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009-2010 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -38,6 +40,8 @@ if (!defined('STATUSNET')) {
* @category Plugin
* @package StatusNet
* @author Evan Prodromou <evan@status.net>
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
* @link http://openid.net/
@@ -45,13 +49,18 @@ if (!defined('STATUSNET')) {
class OpenIDPlugin extends Plugin
{
- /**
- * Initializer for the plugin.
- */
+ // Plugin parameter: set true to disallow non-OpenID logins
+ // If set, overrides the setting in database or $config['site']['openidonly']
+ public $openidOnly = null;
- function __construct()
+ function initialize()
{
- parent::__construct();
+ parent::initialize();
+ if ($this->openidOnly !== null) {
+ global $config;
+ $config['site']['openidonly'] = (bool)$this->openidOnly;
+ }
+
}
/**
@@ -59,6 +68,8 @@ class OpenIDPlugin extends Plugin
*
* Hook for RouterInitialized event.
*
+ * @param Net_URL_Mapper $m URL mapper
+ *
* @return boolean hook return
*/
@@ -67,140 +78,374 @@ class OpenIDPlugin extends Plugin
$m->connect('main/openid', array('action' => 'openidlogin'));
$m->connect('main/openidtrust', array('action' => 'openidtrust'));
$m->connect('settings/openid', array('action' => 'openidsettings'));
- $m->connect('index.php?action=finishopenidlogin', array('action' => 'finishopenidlogin'));
- $m->connect('index.php?action=finishaddopenid', array('action' => 'finishaddopenid'));
+ $m->connect('index.php?action=finishopenidlogin',
+ array('action' => 'finishopenidlogin'));
+ $m->connect('index.php?action=finishaddopenid',
+ array('action' => 'finishaddopenid'));
$m->connect('main/openidserver', array('action' => 'openidserver'));
+ $m->connect('admin/openid', array('action' => 'openidadminpanel'));
+
+ return true;
+ }
+
+ /**
+ * In OpenID-only mode, disable paths for password stuff
+ *
+ * @param string $path path to connect
+ * @param array $defaults path defaults
+ * @param array $rules path rules
+ * @param array $result unused
+ *
+ * @return boolean hook return
+ */
+
+ function onStartConnectPath(&$path, &$defaults, &$rules, &$result)
+ {
+ if (common_config('site', 'openidonly')) {
+ static $block = array('main/login',
+ 'main/register',
+ 'main/recoverpassword',
+ 'settings/password');
+
+ if (in_array($path, $block)) {
+ return false;
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * If we've been hit with password-login args, redirect
+ *
+ * @param array $args args (URL, Get, post)
+ *
+ * @return boolean hook return
+ */
+ function onArgsInitialize($args)
+ {
+ if (common_config('site', 'openidonly')) {
+ if (array_key_exists('action', $args)) {
+ $action = trim($args['action']);
+ if (in_array($action, array('login', 'register'))) {
+ common_redirect(common_local_url('openidlogin'));
+ exit(0);
+ } else if ($action == 'passwordsettings') {
+ common_redirect(common_local_url('openidsettings'));
+ exit(0);
+ } else if ($action == 'recoverpassword') {
+ throw new ClientException('Unavailable action');
+ }
+ }
+ }
return true;
}
+ /**
+ * Public XRDS output hook
+ *
+ * Puts the bits of code needed by some OpenID providers to show
+ * we're good citizens.
+ *
+ * @param Action $action Action being executed
+ * @param XMLOutputter &$xrdsOutputter Output channel
+ *
+ * @return boolean hook return
+ */
+
function onEndPublicXRDS($action, &$xrdsOutputter)
{
$xrdsOutputter->elementStart('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
- 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
- 'version' => '2.0'));
+ 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
+ 'version' => '2.0'));
$xrdsOutputter->element('Type', null, 'xri://$xrds*simple');
//consumer
foreach (array('finishopenidlogin', 'finishaddopenid') as $finish) {
$xrdsOutputter->showXrdsService(Auth_OpenID_RP_RETURN_TO_URL_TYPE,
- common_local_url($finish));
+ common_local_url($finish));
}
//provider
$xrdsOutputter->showXrdsService('http://specs.openid.net/auth/2.0/server',
- common_local_url('openidserver'),
- null,
- null,
- 'http://specs.openid.net/auth/2.0/identifier_select');
+ common_local_url('openidserver'),
+ null,
+ null,
+ 'http://specs.openid.net/auth/2.0/identifier_select');
$xrdsOutputter->elementEnd('XRD');
}
+ /**
+ * User XRDS output hook
+ *
+ * Puts the bits of code needed to discover OpenID endpoints.
+ *
+ * @param Action $action Action being executed
+ * @param XMLOutputter &$xrdsOutputter Output channel
+ *
+ * @return boolean hook return
+ */
+
function onEndUserXRDS($action, &$xrdsOutputter)
{
$xrdsOutputter->elementStart('XRD', array('xmlns' => 'xri://$xrd*($v*2.0)',
- 'xml:id' => 'openid',
- 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
- 'version' => '2.0'));
+ 'xml:id' => 'openid',
+ 'xmlns:simple' => 'http://xrds-simple.net/core/1.0',
+ 'version' => '2.0'));
$xrdsOutputter->element('Type', null, 'xri://$xrds*simple');
//consumer
$xrdsOutputter->showXrdsService('http://specs.openid.net/auth/2.0/return_to',
- common_local_url('finishopenidlogin'));
+ common_local_url('finishopenidlogin'));
//provider
$xrdsOutputter->showXrdsService('http://specs.openid.net/auth/2.0/signon',
- common_local_url('openidserver'),
- null,
- null,
- common_profile_url($action->user->nickname));
+ common_local_url('openidserver'),
+ null,
+ null,
+ common_profile_url($action->user->nickname));
$xrdsOutputter->elementEnd('XRD');
}
+ /**
+ * If we're in OpenID-only mode, hide all the main menu except OpenID login.
+ *
+ * @param Action $action Action being run
+ *
+ * @return boolean hook return
+ */
+
+ function onStartPrimaryNav($action)
+ {
+ if (common_config('site', 'openidonly') && !common_logged_in()) {
+ // TRANS: Tooltip for main menu option "Login"
+ $tooltip = _m('TOOLTIP', 'Login to the site');
+ $action->menuItem(common_local_url('openidlogin'),
+ // TRANS: Main menu option when not logged in to log in
+ _m('MENU', 'Login'),
+ $tooltip,
+ false,
+ 'nav_login');
+ // TRANS: Tooltip for main menu option "Help"
+ $tooltip = _m('TOOLTIP', 'Help me!');
+ $action->menuItem(common_local_url('doc', array('title' => 'help')),
+ // TRANS: Main menu option for help on the StatusNet site
+ _m('MENU', 'Help'),
+ $tooltip,
+ false,
+ 'nav_help');
+ if (!common_config('site', 'private')) {
+ // TRANS: Tooltip for main menu option "Search"
+ $tooltip = _m('TOOLTIP', 'Search for people or text');
+ $action->menuItem(common_local_url('peoplesearch'),
+ // TRANS: Main menu option when logged in or when the StatusNet instance is not private
+ _m('MENU', 'Search'), $tooltip, false, 'nav_search');
+ }
+ Event::handle('EndPrimaryNav', array($action));
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * Menu for login
+ *
+ * If we're in openidOnly mode, we disable the menu for all other login.
+ *
+ * @param Action &$action Action being executed
+ *
+ * @return boolean hook return
+ */
+
+ function onStartLoginGroupNav(&$action)
+ {
+ if (common_config('site', 'openidonly')) {
+ $this->showOpenIDLoginTab($action);
+ // Even though we replace this code, we
+ // DON'T run the End* hook, to keep others from
+ // adding tabs. Not nice, but.
+ return false;
+ }
+
+ return true;
+ }
+
+ /**
+ * Menu item for login
+ *
+ * @param Action &$action Action being executed
+ *
+ * @return boolean hook return
+ */
+
function onEndLoginGroupNav(&$action)
{
+ $this->showOpenIDLoginTab($action);
+
+ return true;
+ }
+
+ /**
+ * Show menu item for login
+ *
+ * @param Action $action Action being executed
+ *
+ * @return void
+ */
+
+ function showOpenIDLoginTab($action)
+ {
$action_name = $action->trimmed('action');
$action->menuItem(common_local_url('openidlogin'),
- _m('OpenID'),
+ // TRANS: OpenID plugin menu item on site logon page.
+ _m('MENU', 'OpenID'),
+ // TRANS: OpenID plugin tooltip for logon menu item.
_m('Login or register with OpenID'),
$action_name === 'openidlogin');
+ }
+ /**
+ * Show menu item for password
+ *
+ * We hide it in openID-only mode
+ *
+ * @param Action $menu Widget for menu
+ * @param void &$unused Unused value
+ *
+ * @return void
+ */
+
+ function onStartAccountSettingsPasswordMenuItem($menu, &$unused) {
+ if (common_config('site', 'openidonly')) {
+ return false;
+ }
return true;
}
+ /**
+ * Menu item for OpenID settings
+ *
+ * @param Action &$action Action being executed
+ *
+ * @return boolean hook return
+ */
+
function onEndAccountSettingsNav(&$action)
{
$action_name = $action->trimmed('action');
$action->menuItem(common_local_url('openidsettings'),
- _m('OpenID'),
+ // TRANS: OpenID plugin menu item on user settings page.
+ _m('MENU', 'OpenID'),
+ // TRANS: OpenID plugin tooltip for user settings menu item.
_m('Add or remove OpenIDs'),
$action_name === 'openidsettings');
return true;
}
+ /**
+ * Autoloader
+ *
+ * Loads our classes if they're requested.
+ *
+ * @param string $cls Class requested
+ *
+ * @return boolean hook return
+ */
+
function onAutoload($cls)
{
switch ($cls)
{
- case 'OpenidloginAction':
- case 'FinishopenidloginAction':
- case 'FinishaddopenidAction':
- case 'XrdsAction':
- case 'PublicxrdsAction':
- case 'OpenidsettingsAction':
- case 'OpenidserverAction':
- case 'OpenidtrustAction':
- require_once(INSTALLDIR.'/plugins/OpenID/' . strtolower(mb_substr($cls, 0, -6)) . '.php');
+ case 'OpenidloginAction':
+ case 'FinishopenidloginAction':
+ case 'FinishaddopenidAction':
+ case 'XrdsAction':
+ case 'PublicxrdsAction':
+ case 'OpenidsettingsAction':
+ case 'OpenidserverAction':
+ case 'OpenidtrustAction':
+ case 'OpenidadminpanelAction':
+ require_once dirname(__FILE__) . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php';
+ return false;
+ case 'User_openid':
+ require_once dirname(__FILE__) . '/User_openid.php';
return false;
- case 'User_openid':
- require_once(INSTALLDIR.'/plugins/OpenID/User_openid.php');
+ case 'User_openid_trustroot':
+ require_once dirname(__FILE__) . '/User_openid_trustroot.php';
return false;
- case 'User_openid_trustroot':
- require_once(INSTALLDIR.'/plugins/OpenID/User_openid_trustroot.php');
+ case 'Auth_OpenID_TeamsExtension':
+ case 'Auth_OpenID_TeamsRequest':
+ case 'Auth_OpenID_TeamsResponse':
+ require_once dirname(__FILE__) . '/extlib/teams-extension.php';
return false;
- default:
+ default:
return true;
}
}
+ /**
+ * Sensitive actions
+ *
+ * These actions should use https when SSL support is 'sometimes'
+ *
+ * @param Action $action Action to form an URL for
+ * @param boolean &$ssl Whether to mark it for SSL
+ *
+ * @return boolean hook return
+ */
+
function onSensitiveAction($action, &$ssl)
{
switch ($action)
{
- case 'finishopenidlogin':
- case 'finishaddopenid':
+ case 'finishopenidlogin':
+ case 'finishaddopenid':
$ssl = true;
return false;
- default:
+ default:
return true;
}
}
+ /**
+ * Login actions
+ *
+ * These actions should be visible even when the site is marked private
+ *
+ * @param Action $action Action to show
+ * @param boolean &$login Whether it's a login action
+ *
+ * @return boolean hook return
+ */
+
function onLoginAction($action, &$login)
{
switch ($action)
{
- case 'openidlogin':
- case 'finishopenidlogin':
- case 'openidserver':
+ case 'openidlogin':
+ case 'finishopenidlogin':
+ case 'openidserver':
$login = true;
return false;
- default:
+ default:
return true;
}
}
/**
- * We include a <meta> element linking to the publicxrds page, for OpenID
+ * We include a <meta> element linking to the userxrds page, for OpenID
* client-side authentication.
*
+ * @param Action $action Action being shown
+ *
* @return void
*/
function onEndShowHeadElements($action)
{
- if($action instanceof ShowstreamAction){
+ if ($action instanceof ShowstreamAction) {
$action->element('link', array('rel' => 'openid2.provider',
'href' => common_local_url('openidserver')));
$action->element('link', array('rel' => 'openid2.local_id',
@@ -216,25 +461,36 @@ class OpenIDPlugin extends Plugin
/**
* Redirect to OpenID login if they have an OpenID
*
+ * @param Action $action Action being executed
+ * @param User $user User doing the action
+ *
* @return boolean whether to continue
*/
function onRedirectToLogin($action, $user)
{
- if (!empty($user) && User_openid::hasOpenID($user->id)) {
+ if (common_config('site', 'openid_only') || (!empty($user) && User_openid::hasOpenID($user->id))) {
common_redirect(common_local_url('openidlogin'), 303);
return false;
}
return true;
}
+ /**
+ * Show some extra instructions for using OpenID
+ *
+ * @param Action $action Action being executed
+ *
+ * @return boolean hook value
+ */
+
function onEndShowPageNotice($action)
{
$name = $action->trimmed('action');
switch ($name)
{
- case 'register':
+ case 'register':
if (common_logged_in()) {
$instr = '(Have an [OpenID](http://openid.net/)? ' .
'[Add an OpenID to your account](%%action.openidsettings%%)!';
@@ -244,12 +500,12 @@ class OpenIDPlugin extends Plugin
'(%%action.openidlogin%%)!)';
}
break;
- case 'login':
+ case 'login':
$instr = '(Have an [OpenID](http://openid.net/)? ' .
'Try our [OpenID login]'.
'(%%action.openidlogin%%)!)';
break;
- default:
+ default:
return true;
}
@@ -258,13 +514,21 @@ class OpenIDPlugin extends Plugin
return true;
}
+ /**
+ * Load our document if requested
+ *
+ * @param string &$title Title to fetch
+ * @param string &$output HTML to output
+ *
+ * @return boolean hook value
+ */
+
function onStartLoadDoc(&$title, &$output)
{
- if ($title == 'openid')
- {
+ if ($title == 'openid') {
$filename = INSTALLDIR.'/plugins/OpenID/doc-src/openid';
- $c = file_get_contents($filename);
+ $c = file_get_contents($filename);
$output = common_markup_to_html($c);
return false; // success!
}
@@ -272,10 +536,18 @@ class OpenIDPlugin extends Plugin
return true;
}
+ /**
+ * Add our document to the global menu
+ *
+ * @param string $title Title being fetched
+ * @param string &$output HTML being output
+ *
+ * @return boolean hook value
+ */
+
function onEndLoadDoc($title, &$output)
{
- if ($title == 'help')
- {
+ if ($title == 'help') {
$menuitem = '* [OpenID](%%doc.openid%%) - what OpenID is and how to use it with this service';
$output .= common_markup_to_html($menuitem);
@@ -284,7 +556,16 @@ class OpenIDPlugin extends Plugin
return true;
}
- function onCheckSchema() {
+ /**
+ * Data definitions
+ *
+ * Assure that our data objects are available in the DB
+ *
+ * @return boolean hook value
+ */
+
+ function onCheckSchema()
+ {
$schema = Schema::get();
$schema->ensureTable('user_openid',
array(new ColumnDef('canonical', 'varchar',
@@ -307,6 +588,15 @@ class OpenIDPlugin extends Plugin
return true;
}
+ /**
+ * Add our tables to be deleted when a user is deleted
+ *
+ * @param User $user User being deleted
+ * @param array &$tables Array of table names
+ *
+ * @return boolean hook value
+ */
+
function onUserDeleteRelated($user, &$tables)
{
$tables[] = 'User_openid';
@@ -314,6 +604,40 @@ class OpenIDPlugin extends Plugin
return true;
}
+ /**
+ * Add an OpenID tab to the admin panel
+ *
+ * @param Widget $nav Admin panel nav
+ *
+ * @return boolean hook value
+ */
+
+ function onEndAdminPanelNav($nav)
+ {
+ if (AdminPanelAction::canAdmin('openid')) {
+
+ $action_name = $nav->action->trimmed('action');
+
+ $nav->out->menuItem(
+ common_local_url('openidadminpanel'),
+ _m('OpenID'),
+ _m('OpenID configuration'),
+ $action_name == 'openidadminpanel',
+ 'nav_openid_admin_panel'
+ );
+ }
+
+ return true;
+ }
+
+ /**
+ * Add our version information to output
+ *
+ * @param array &$versions Array of version-data arrays
+ *
+ * @return boolean hook value
+ */
+
function onPluginVersion(&$versions)
{
$versions[] = array('name' => 'OpenID',
@@ -321,6 +645,7 @@ class OpenIDPlugin extends Plugin
'author' => 'Evan Prodromou, Craig Andrews',
'homepage' => 'http://status.net/wiki/Plugin:OpenID',
'rawdescription' =>
+ // TRANS: OpenID plugin description.
_m('Use <a href="http://openid.net/">OpenID</a> to login to the site.'));
return true;
}
diff --git a/plugins/OpenID/extlib/README b/plugins/OpenID/extlib/README
new file mode 100644
index 000000000..1fe80d79b
--- /dev/null
+++ b/plugins/OpenID/extlib/README
@@ -0,0 +1,6 @@
+team-extension.php
+ Support for Launchpad's OpenID Teams extension
+ Maintainer: Canonical
+ Source: https://code.edge.launchpad.net/wordpress-teams-integration
+ r27 2010-04-27
+ License: AGPLv3
diff --git a/plugins/OpenID/extlib/teams-extension.php b/plugins/OpenID/extlib/teams-extension.php
new file mode 100644
index 000000000..451f2fb19
--- /dev/null
+++ b/plugins/OpenID/extlib/teams-extension.php
@@ -0,0 +1,175 @@
+<?php
+/*
+ * Wordpress Teams plugin
+ * Copyright (C) 2009-2010 Canonical Ltd.
+ *
+ * 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/>.
+ */
+
+/**
+ * Provides an example OpenID extension to query user team/group membership
+ *
+ * This code is based on code supplied with the openid library for simple
+ * registration data.
+ */
+
+/**
+ * Require the Message implementation.
+ */
+require_once 'Auth/OpenID/Message.php';
+require_once 'Auth/OpenID/Extension.php';
+
+/**
+ * The team/group extension base class
+ */
+class Auth_OpenID_TeamsExtension extends Auth_OpenID_Extension {
+ var $ns_uri = 'http://ns.launchpad.net/2007/openid-teams';
+ var $ns_alias = 'lp';
+ var $request_field = 'query_membership';
+ var $response_field = 'is_member';
+
+ /**
+ * Get the string arguments that should be added to an OpenID
+ * message for this extension.
+ */
+ function getExtensionArgs() {
+ $args = array();
+
+ if ($this->_teams) {
+ $args[$this->request_field] = implode(',', $this->_teams);
+ }
+
+ return $args;
+ }
+
+ /**
+ * Add the arguments from this extension to the provided message.
+ *
+ * Returns the message with the extension arguments added.
+ */
+ function toMessage(&$message) {
+ if ($message->namespaces->addAlias($this->ns_uri, $this->ns_alias) === null) {
+ if ($message->namespaces->getAlias($this->ns_uri) != $this->ns_alias) {
+ return null;
+ }
+ }
+
+ $message->updateArgs($this->ns_uri, $this->getExtensionArgs());
+ return $message;
+ }
+
+ /**
+ * Extract the team/group namespace URI from the given OpenID message.
+ * Handles OpenID 1 and 2.
+ *
+ * $message: The OpenID message from which to parse team/group data.
+ * This may be a request or response message.
+ *
+ * Returns the sreg namespace URI for the supplied message.
+ *
+ * @access private
+ */
+ function _getExtensionNS(&$message) {
+ $alias = null;
+ $found_ns_uri = null;
+
+ // See if there exists an alias for the namespace
+ $alias = $message->namespaces->getAlias($this->ns_uri);
+
+ if ($alias !== null) {
+ $found_ns_uri = $this->ns_uri;
+ }
+
+ if ($alias === null) {
+ // There is no alias for this extension, so try to add one.
+ $found_ns_uri = Auth_OpenID_TYPE_1_0;
+
+ if ($message->namespaces->addAlias($this->ns_uri, $this->ns_alias) === null) {
+ // An alias for the string 'lp' already exists, but
+ // it's defined for something other than team/group membership
+ return null;
+ }
+ }
+
+ return $found_ns_uri;
+ }
+}
+
+/**
+ * The team/group extension request class
+ */
+class Auth_OpenID_TeamsRequest extends Auth_OpenID_TeamsExtension {
+ function __init($teams) {
+ if (!is_array($teams)) {
+ if (!empty($teams)) {
+ $teams = explode(',', $teams);
+ } else {
+ $teams = Array();
+ }
+ }
+
+ $this->_teams = $teams;
+ }
+
+ function Auth_OpenID_TeamsRequest($teams) {
+ $this->__init($teams);
+ }
+}
+
+/**
+ * The team/group extension response class
+ */
+class Auth_OpenID_TeamsResponse extends Auth_OpenID_TeamsExtension {
+ var $_teams = array();
+
+ function __init(&$resp, $signed_only=true) {
+ $this->ns_uri = $this->_getExtensionNS($resp->message);
+
+ if ($signed_only) {
+ $args = $resp->getSignedNS($this->ns_uri);
+ } else {
+ $args = $resp->message->getArgs($this->ns_uri);
+ }
+
+ if ($args === null) {
+ return null;
+ }
+
+ // An OpenID 2.0 response will handle the namespaces
+ if (in_array($this->response_field, array_keys($args)) && !empty($args[$this->response_field])) {
+ $this->_teams = explode(',', $args[$this->response_field]);
+ }
+
+ // Piggybacking on a 1.x request, however, won't so the field name will
+ // be different
+ elseif (in_array($this->ns_alias.'.'.$this->response_field, array_keys($args)) && !empty($args[$this->ns_alias.'.'.$this->response_field])) {
+ $this->_teams = explode(',', $args[$this->ns_alias.'.'.$this->response_field]);
+ }
+ }
+
+ function Auth_OpenID_TeamsResponse(&$resp, $signed_only=true) {
+ $this->__init($resp, $signed_only);
+ }
+
+ /**
+ * Get the array of teams the user is a member of
+ *
+ * @return array
+ */
+ function getTeams() {
+ return $this->_teams;
+ }
+}
+
+?>
diff --git a/plugins/OpenID/finishaddopenid.php b/plugins/OpenID/finishaddopenid.php
index 991e6584e..47b3f7fb1 100644
--- a/plugins/OpenID/finishaddopenid.php
+++ b/plugins/OpenID/finishaddopenid.php
@@ -64,6 +64,7 @@ class FinishaddopenidAction extends Action
{
parent::handle($args);
if (!common_logged_in()) {
+ // TRANS: Client error message
$this->clientError(_m('Not logged in.'));
} else {
$this->tryLogin();
@@ -85,10 +86,12 @@ class FinishaddopenidAction extends Action
$response = $consumer->complete(common_local_url('finishaddopenid'));
if ($response->status == Auth_OpenID_CANCEL) {
+ // TRANS: Status message in case the response from the OpenID provider is that the logon attempt was cancelled.
$this->message(_m('OpenID authentication cancelled.'));
return;
} else if ($response->status == Auth_OpenID_FAILURE) {
- // Authentication failed; display the error message.
+ // TRANS: OpenID authentication failed; display the error message.
+ // TRANS: %s is the error message.
$this->message(sprintf(_m('OpenID authentication failed: %s'),
$response->message));
} else if ($response->status == Auth_OpenID_SUCCESS) {
@@ -103,14 +106,22 @@ class FinishaddopenidAction extends Action
$sreg = $sreg_resp->contents();
}
+ // Launchpad teams extension
+ if (!oid_check_teams($response)) {
+ $this->message(_m('OpenID authentication aborted: you are not allowed to login to this site.'));
+ return;
+ }
+
$cur = common_current_user();
$other = oid_get_user($canonical);
if ($other) {
if ($other->id == $cur->id) {
+ // TRANS: message in case a user tries to add an OpenID that is already connected to them.
$this->message(_m('You already have this OpenID!'));
} else {
+ // TRANS: message in case a user tries to add an OpenID that is already used by another user.
$this->message(_m('Someone else already has this OpenID.'));
}
return;
@@ -123,15 +134,20 @@ class FinishaddopenidAction extends Action
$result = oid_link_user($cur->id, $canonical, $display);
if (!$result) {
+ // TRANS: message in case the OpenID object cannot be connected to the user.
$this->message(_m('Error connecting user.'));
return;
}
- if ($sreg) {
- if (!oid_update_user($cur, $sreg)) {
- $this->message(_m('Error updating profile'));
- return;
+ if (Event::handle('StartOpenIDUpdateUser', array($cur, $canonical, &$sreg))) {
+ if ($sreg) {
+ if (!oid_update_user($cur, $sreg)) {
+ // TRANS: message in case the user or the user profile cannot be saved in StatusNet.
+ $this->message(_m('Error updating profile'));
+ return;
+ }
}
}
+ Event::handle('EndOpenIDUpdateUser', array($cur, $canonical, $sreg));
// success!
@@ -167,6 +183,7 @@ class FinishaddopenidAction extends Action
function title()
{
+ // TRANS: Title after getting the status of the OpenID authorisation request.
return _m('OpenID Login');
}
diff --git a/plugins/OpenID/finishopenidlogin.php b/plugins/OpenID/finishopenidlogin.php
index 438a728d8..0c03b5c4d 100644
--- a/plugins/OpenID/finishopenidlogin.php
+++ b/plugins/OpenID/finishopenidlogin.php
@@ -31,15 +31,18 @@ class FinishopenidloginAction extends Action
{
parent::handle($args);
if (common_is_real_login()) {
+ // TRANS: Client error message trying to log on with OpenID while already logged on.
$this->clientError(_m('Already logged in.'));
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$token = $this->trimmed('token');
if (!$token || $token != common_session_token()) {
+ // TRANS: Message given when there is a problem with the user's session token.
$this->showForm(_m('There was a problem with your session token. Try again, please.'));
return;
}
if ($this->arg('create')) {
if (!$this->boolean('license')) {
+ // TRANS: Message given if user does not agree with the site's license.
$this->showForm(_m('You can\'t register if you don\'t agree to the license.'),
$this->trimmed('newname'));
return;
@@ -48,8 +51,8 @@ class FinishopenidloginAction extends Action
} else if ($this->arg('connect')) {
$this->connectUser();
} else {
- common_debug(print_r($this->args, true), __FILE__);
- $this->showForm(_m('Something weird happened.'),
+ // TRANS: Messag given on an unknown error.
+ $this->showForm(_m('An unknown error has occured.'),
$this->trimmed('newname'));
}
} else {
@@ -63,12 +66,15 @@ class FinishopenidloginAction extends Action
$this->element('div', array('class' => 'error'), $this->error);
} else {
$this->element('div', 'instructions',
+ // TRANS: Instructions given after a first successful logon using OpenID.
+ // TRANS: %s is the site name.
sprintf(_m('This is the first time you\'ve logged into %s so we must connect your OpenID to a local account. You can either create a new account, or connect with your existing account, if you have one.'), common_config('site', 'name')));
}
}
function title()
{
+ // TRANS: Title
return _m('OpenID Account Setup');
}
@@ -80,6 +86,11 @@ class FinishopenidloginAction extends Action
$this->showPage();
}
+ /**
+ * @fixme much of this duplicates core code, which is very fragile.
+ * Should probably be replaced with an extensible mini version of
+ * the core registration form.
+ */
function showContent()
{
if (!empty($this->message_text)) {
@@ -111,30 +122,43 @@ class FinishopenidloginAction extends Action
'value' => 'true'));
$this->elementStart('label', array('for' => 'license',
'class' => 'checkbox'));
- $this->text(_m('My text and files are available under '));
- $this->element('a', array('href' => common_config('license', 'url')),
- common_config('license', 'title'));
- $this->text(_m(' except this private data: password, email address, IM address, phone number.'));
+ // TRANS: OpenID plugin link text.
+ // TRANS: %s is a link to a licese with the license name as link text.
+ $message = _('My text and files are available under %s ' .
+ 'except this private data: password, ' .
+ 'email address, IM address, and phone number.');
+ $link = '<a href="' .
+ htmlspecialchars(common_config('license', 'url')) .
+ '">' .
+ htmlspecialchars(common_config('license', 'title')) .
+ '</a>';
+ $this->raw(sprintf(htmlspecialchars($message), $link));
$this->elementEnd('label');
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('create', _m('Create'));
+ // TRANS: Button label in form in which to create a new user on the site for an OpenID.
+ $this->submit('create', _m('BUTTON', 'Create'));
$this->elementEnd('fieldset');
$this->elementStart('fieldset', array('id' => 'form_openid_createaccount'));
$this->element('legend', null,
+ // TRANS: Used as form legend for form in which to connect an OpenID to an existing user on the site.
_m('Connect existing account'));
$this->element('p', null,
+ // TRANS: User instructions for form in which to connect an OpenID to an existing user on the site.
_m('If you already have an account, login with your username and password to connect it to your OpenID.'));
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
+ // TRANS: Field label in form in which to connect an OpenID to an existing user on the site.
$this->input('nickname', _m('Existing nickname'));
$this->elementEnd('li');
$this->elementStart('li');
+ // TRANS: Field label in form in which to connect an OpenID to an existing user on the site.
$this->password('password', _m('Password'));
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('connect', _m('Connect'));
+ // TRANS: Button label in form in which to connect an OpenID to an existing user on the site.
+ $this->submit('connect', _m('BUTTON', 'Connect'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
@@ -146,10 +170,11 @@ class FinishopenidloginAction extends Action
$response = $consumer->complete(common_local_url('finishopenidlogin'));
if ($response->status == Auth_OpenID_CANCEL) {
+ // TRANS: Status message in case the response from the OpenID provider is that the logon attempt was cancelled.
$this->message(_m('OpenID authentication cancelled.'));
return;
} else if ($response->status == Auth_OpenID_FAILURE) {
- // Authentication failed; display the error message.
+ // TRANS: OpenID authentication failed; display the error message. %s is the error message.
$this->message(sprintf(_m('OpenID authentication failed: %s'), $response->message));
} else if ($response->status == Auth_OpenID_SUCCESS) {
// This means the authentication succeeded; extract the
@@ -159,12 +184,21 @@ class FinishopenidloginAction extends Action
$canonical = ($response->endpoint->canonicalID) ?
$response->endpoint->canonicalID : $response->getDisplayIdentifier();
+ oid_assert_allowed($display);
+ oid_assert_allowed($canonical);
+
$sreg_resp = Auth_OpenID_SRegResponse::fromSuccessResponse($response);
if ($sreg_resp) {
$sreg = $sreg_resp->contents();
}
+ // Launchpad teams extension
+ if (!oid_check_teams($response)) {
+ $this->message(_m('OpenID authentication aborted: you are not allowed to login to this site.'));
+ return;
+ }
+
$user = oid_get_user($canonical);
if ($user) {
@@ -212,6 +246,7 @@ class FinishopenidloginAction extends Action
# FIXME: save invite code before redirect, and check here
if (common_config('site', 'closed')) {
+ // TRANS: OpenID plugin message. No new user registration is allowed on the site.
$this->clientError(_m('Registration not allowed.'));
return;
}
@@ -221,6 +256,7 @@ class FinishopenidloginAction extends Action
if (common_config('site', 'inviteonly')) {
$code = $_SESSION['invitecode'];
if (empty($code)) {
+ // TRANS: OpenID plugin message. No new user registration is allowed on the site without an invitation code, and none was provided.
$this->clientError(_m('Registration not allowed.'));
return;
}
@@ -228,6 +264,7 @@ class FinishopenidloginAction extends Action
$invite = Invitation::staticGet($code);
if (empty($invite)) {
+ // TRANS: OpenID plugin message. No new user registration is allowed on the site without an invitation code, and the one provided was not valid.
$this->clientError(_m('Not a valid invitation code.'));
return;
}
@@ -238,16 +275,19 @@ class FinishopenidloginAction extends Action
if (!Validate::string($nickname, array('min_length' => 1,
'max_length' => 64,
'format' => NICKNAME_FMT))) {
+ // TRANS: OpenID plugin message. The entered new user name did not conform to the requirements.
$this->showForm(_m('Nickname must have only lowercase letters and numbers and no spaces.'));
return;
}
if (!User::allowed_nickname($nickname)) {
+ // TRANS: OpenID plugin message. The entered new user name is blacklisted.
$this->showForm(_m('Nickname not allowed.'));
return;
}
if (User::staticGet('nickname', $nickname)) {
+ // TRANS: OpenID plugin message. The entered new user name is already used.
$this->showForm(_m('Nickname already in use. Try another one.'));
return;
}
@@ -255,6 +295,7 @@ class FinishopenidloginAction extends Action
list($display, $canonical, $sreg) = $this->getSavedValues();
if (!$display || !$canonical) {
+ // TRANS: OpenID plugin server error. A stored OpenID cannot be retrieved.
$this->serverError(_m('Stored OpenID not found.'));
return;
}
@@ -264,10 +305,13 @@ class FinishopenidloginAction extends Action
$other = oid_get_user($canonical);
if ($other) {
+ // TRANS: OpenID plugin server error.
$this->serverError(_m('Creating new account for OpenID that already has a user.'));
return;
}
+ Event::handle('StartOpenIDCreateNewUser', array($canonical, &$sreg));
+
$location = '';
if (!empty($sreg['country'])) {
if ($sreg['postcode']) {
@@ -307,6 +351,8 @@ class FinishopenidloginAction extends Action
$result = oid_link_user($user->id, $canonical, $display);
+ Event::handle('EndOpenIDCreateNewUser', array($user, $canonical, $sreg));
+
oid_set_last($display);
common_set_user($user);
common_real_login(true);
@@ -324,6 +370,7 @@ class FinishopenidloginAction extends Action
$password = $this->trimmed('password');
if (!common_check_user($nickname, $password)) {
+ // TRANS: OpenID plugin message.
$this->showForm(_m('Invalid username or password.'));
return;
}
@@ -335,6 +382,7 @@ class FinishopenidloginAction extends Action
list($display, $canonical, $sreg) = $this->getSavedValues();
if (!$display || !$canonical) {
+ // TRANS: OpenID plugin server error. A stored OpenID cannot be found.
$this->serverError(_m('Stored OpenID not found.'));
return;
}
@@ -342,11 +390,16 @@ class FinishopenidloginAction extends Action
$result = oid_link_user($user->id, $canonical, $display);
if (!$result) {
+ // TRANS: OpenID plugin server error. The user or user profile could not be saved.
$this->serverError(_m('Error connecting user to OpenID.'));
return;
}
- oid_update_user($user, $sreg);
+ if (Event::handle('StartOpenIDUpdateUser', array($user, $canonical, &$sreg))) {
+ oid_update_user($user, $sreg);
+ }
+ Event::handle('EndOpenIDUpdateUser', array($user, $canonical, $sreg));
+
oid_set_last($display);
common_set_user($user);
common_real_login(true);
diff --git a/plugins/OpenID/locale/OpenID.po b/plugins/OpenID/locale/OpenID.pot
index 7ed879835..70908422e 100644
--- a/plugins/OpenID/locale/OpenID.po
+++ b/plugins/OpenID/locale/OpenID.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,311 +16,347 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: finishaddopenid.php:67
-msgid "Not logged in."
+#: openidsettings.php:59
+msgid "OpenID settings"
msgstr ""
-#: finishaddopenid.php:88 finishopenidlogin.php:149
-msgid "OpenID authentication cancelled."
+#: openidsettings.php:70
+#, php-format
+msgid ""
+"[OpenID](%%doc.openid%%) lets you log into many sites with the same user "
+"account. Manage your associated OpenIDs from here."
msgstr ""
-#: finishaddopenid.php:92 finishopenidlogin.php:153
-#, php-format
-msgid "OpenID authentication failed: %s"
+#: openidsettings.php:99
+msgid "Add OpenID"
msgstr ""
-#: finishaddopenid.php:112
-msgid "You already have this OpenID!"
+#: openidsettings.php:102
+msgid ""
+"If you want to add an OpenID to your account, enter it in the box below and "
+"click \"Add\"."
msgstr ""
-#: finishaddopenid.php:114
-msgid "Someone else already has this OpenID."
+#: openidsettings.php:107 openidlogin.php:119
+msgid "OpenID URL"
msgstr ""
-#: finishaddopenid.php:126
-msgid "Error connecting user."
+#: openidsettings.php:117
+msgid "Add"
msgstr ""
-#: finishaddopenid.php:131
-msgid "Error updating profile"
+#: openidsettings.php:129
+msgid "Remove OpenID"
msgstr ""
-#: finishaddopenid.php:170 openidlogin.php:95
-msgid "OpenID Login"
+#: openidsettings.php:134
+msgid ""
+"Removing your only OpenID would make it impossible to log in! If you need to "
+"remove it, add another OpenID first."
msgstr ""
-#: finishopenidlogin.php:34 openidlogin.php:30
-msgid "Already logged in."
+#: openidsettings.php:149
+msgid ""
+"You can remove an OpenID from your account by clicking the button marked "
+"\"Remove\"."
msgstr ""
-#: finishopenidlogin.php:38 openidlogin.php:37 openidsettings.php:194
-msgid "There was a problem with your session token. Try again, please."
+#: openidsettings.php:172 openidsettings.php:213
+msgid "Remove"
msgstr ""
-#: finishopenidlogin.php:43
-msgid "You can't register if you don't agree to the license."
+#: openidsettings.php:186
+msgid "OpenID Trusted Sites"
+msgstr ""
+
+#: openidsettings.php:189
+msgid ""
+"The following sites are allowed to access your identity and log you in. You "
+"can remove a site from this list to deny it access to your OpenID."
msgstr ""
-#: finishopenidlogin.php:52 openidsettings.php:208
+#: openidsettings.php:231 finishopenidlogin.php:38 openidlogin.php:39
+msgid "There was a problem with your session token. Try again, please."
+msgstr ""
+
+#: openidsettings.php:247 finishopenidlogin.php:51
msgid "Something weird happened."
msgstr ""
-#: finishopenidlogin.php:66
-#, php-format
-msgid ""
-"This is the first time you've logged into %s so we must connect your OpenID "
-"to a local account. You can either create a new account, or connect with "
-"your existing account, if you have one."
+#: openidsettings.php:271
+msgid "No such OpenID trustroot."
msgstr ""
-#: finishopenidlogin.php:72
-msgid "OpenID Account Setup"
+#: openidsettings.php:275
+msgid "Trustroots removed"
msgstr ""
-#: finishopenidlogin.php:97
-msgid "Create new account"
+#: openidsettings.php:298
+msgid "No such OpenID."
msgstr ""
-#: finishopenidlogin.php:99
-msgid "Create a new user with this nickname."
+#: openidsettings.php:303
+msgid "That OpenID does not belong to you."
msgstr ""
-#: finishopenidlogin.php:102
-msgid "New nickname"
+#: openidsettings.php:307
+msgid "OpenID removed."
msgstr ""
-#: finishopenidlogin.php:104
-msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+#: openid.php:137
+msgid "Cannot instantiate OpenID consumer object."
msgstr ""
-#: finishopenidlogin.php:114
-msgid "My text and files are available under "
+#: openid.php:147
+msgid "Not a valid OpenID."
msgstr ""
-#: finishopenidlogin.php:117
-msgid ""
-" except this private data: password, email address, IM address, phone number."
+#: openid.php:149
+#, php-format
+msgid "OpenID failure: %s"
msgstr ""
-#: finishopenidlogin.php:121
-msgid "Create"
+#: openid.php:176
+#, php-format
+msgid "Could not redirect to server: %s"
msgstr ""
-#: finishopenidlogin.php:126
-msgid "Connect existing account"
+#: openid.php:194
+#, php-format
+msgid "Could not create OpenID form: %s"
msgstr ""
-#: finishopenidlogin.php:128
+#: openid.php:210
msgid ""
-"If you already have an account, login with your username and password to "
-"connect it to your OpenID."
+"This form should automatically submit itself. If not, click the submit "
+"button to go to your OpenID provider."
msgstr ""
-#: finishopenidlogin.php:131
-msgid "Existing nickname"
+#: openid.php:242
+msgid "Error saving the profile."
msgstr ""
-#: finishopenidlogin.php:134
-msgid "Password"
+#: openid.php:253
+msgid "Error saving the user."
msgstr ""
-#: finishopenidlogin.php:137
-msgid "Connect"
+#: openid.php:282
+msgid "Unauthorized URL used for OpenID login."
msgstr ""
-#: finishopenidlogin.php:215 finishopenidlogin.php:224
-msgid "Registration not allowed."
+#: openid.php:302
+msgid "OpenID Login Submission"
msgstr ""
-#: finishopenidlogin.php:231
-msgid "Not a valid invitation code."
+#: openid.php:312
+msgid "Requesting authorization from your login provider..."
msgstr ""
-#: finishopenidlogin.php:241
-msgid "Nickname must have only lowercase letters and numbers and no spaces."
+#: openid.php:315
+msgid ""
+"If you are not redirected to your login provider in a few seconds, try "
+"pushing the button below."
msgstr ""
-#: finishopenidlogin.php:246
-msgid "Nickname not allowed."
+#. TRANS: Tooltip for main menu option "Login"
+#: OpenIDPlugin.php:204
+msgctxt "TOOLTIP"
+msgid "Login to the site"
msgstr ""
-#: finishopenidlogin.php:251
-msgid "Nickname already in use. Try another one."
+#: OpenIDPlugin.php:207
+msgctxt "MENU"
+msgid "Login"
msgstr ""
-#: finishopenidlogin.php:258 finishopenidlogin.php:338
-msgid "Stored OpenID not found."
+#. TRANS: Tooltip for main menu option "Help"
+#: OpenIDPlugin.php:212
+msgctxt "TOOLTIP"
+msgid "Help me!"
msgstr ""
-#: finishopenidlogin.php:267
-msgid "Creating new account for OpenID that already has a user."
+#: OpenIDPlugin.php:215
+msgctxt "MENU"
+msgid "Help"
msgstr ""
-#: finishopenidlogin.php:327
-msgid "Invalid username or password."
+#. TRANS: Tooltip for main menu option "Search"
+#: OpenIDPlugin.php:221
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
msgstr ""
-#: finishopenidlogin.php:345
-msgid "Error connecting user to OpenID."
+#: OpenIDPlugin.php:224
+msgctxt "MENU"
+msgid "Search"
msgstr ""
-#: openid.php:141
-msgid "Cannot instantiate OpenID consumer object."
+#: OpenIDPlugin.php:283 OpenIDPlugin.php:319
+msgid "OpenID"
msgstr ""
-#: openid.php:151
-msgid "Not a valid OpenID."
+#: OpenIDPlugin.php:284
+msgid "Login or register with OpenID"
msgstr ""
-#: openid.php:153
-#, php-format
-msgid "OpenID failure: %s"
+#: OpenIDPlugin.php:320
+msgid "Add or remove OpenIDs"
msgstr ""
-#: openid.php:180
-#, php-format
-msgid "Could not redirect to server: %s"
+#: OpenIDPlugin.php:595
+msgid "Use <a href=\"http://openid.net/\">OpenID</a> to login to the site."
msgstr ""
-#: openid.php:198
+#: openidserver.php:106
#, php-format
-msgid "Could not create OpenID form: %s"
-msgstr ""
-
-#: openid.php:214
-msgid ""
-"This form should automatically submit itself. If not, click the submit "
-"button to go to your OpenID provider."
+msgid "You are not authorized to use the identity %s."
msgstr ""
-#: openid.php:246
-msgid "Error saving the profile."
+#: openidserver.php:126
+msgid "Just an OpenID provider. Nothing to see here, move along..."
msgstr ""
-#: openid.php:257
-msgid "Error saving the user."
+#: finishopenidlogin.php:34 openidlogin.php:30
+msgid "Already logged in."
msgstr ""
-#: openid.php:277
-msgid "OpenID Auto-Submit"
+#: finishopenidlogin.php:43
+msgid "You can't register if you don't agree to the license."
msgstr ""
-#: openidlogin.php:66
+#: finishopenidlogin.php:65
#, php-format
msgid ""
-"For security reasons, please re-login with your [OpenID](%%doc.openid%%) "
-"before changing your settings."
+"This is the first time you've logged into %s so we must connect your OpenID "
+"to a local account. You can either create a new account, or connect with "
+"your existing account, if you have one."
msgstr ""
-#: openidlogin.php:70
-#, php-format
-msgid "Login with an [OpenID](%%doc.openid%%) account."
+#: finishopenidlogin.php:71
+msgid "OpenID Account Setup"
msgstr ""
-#: openidlogin.php:112
-msgid "OpenID login"
+#: finishopenidlogin.php:101
+msgid "Create new account"
msgstr ""
-#: openidlogin.php:117 openidsettings.php:107
-msgid "OpenID URL"
+#: finishopenidlogin.php:103
+msgid "Create a new user with this nickname."
msgstr ""
-#: openidlogin.php:119
-msgid "Your OpenID URL"
+#: finishopenidlogin.php:106
+msgid "New nickname"
msgstr ""
-#: openidlogin.php:122
-msgid "Remember me"
+#: finishopenidlogin.php:108
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
msgstr ""
-#: openidlogin.php:123
-msgid "Automatically login in the future; not for shared computers!"
+#: finishopenidlogin.php:130
+msgid "Create"
msgstr ""
-#: openidlogin.php:127
-msgid "Login"
+#: finishopenidlogin.php:135
+msgid "Connect existing account"
msgstr ""
-#: OpenIDPlugin.php:123 OpenIDPlugin.php:135
-msgid "OpenID"
+#: finishopenidlogin.php:137
+msgid ""
+"If you already have an account, login with your username and password to "
+"connect it to your OpenID."
msgstr ""
-#: OpenIDPlugin.php:124
-msgid "Login or register with OpenID"
+#: finishopenidlogin.php:140
+msgid "Existing nickname"
msgstr ""
-#: OpenIDPlugin.php:136
-msgid "Add or remove OpenIDs"
+#: finishopenidlogin.php:143
+msgid "Password"
msgstr ""
-#: OpenIDPlugin.php:324
-msgid "Use <a href=\"http://openid.net/\">OpenID</a> to login to the site."
+#: finishopenidlogin.php:146
+msgid "Connect"
msgstr ""
-#: openidserver.php:106
+#: finishopenidlogin.php:158 finishaddopenid.php:88
+msgid "OpenID authentication cancelled."
+msgstr ""
+
+#: finishopenidlogin.php:162 finishaddopenid.php:92
#, php-format
-msgid "You are not authorized to use the identity %s."
+msgid "OpenID authentication failed: %s"
msgstr ""
-#: openidserver.php:126
-msgid "Just an OpenID provider. Nothing to see here, move along..."
+#: finishopenidlogin.php:227 finishopenidlogin.php:236
+msgid "Registration not allowed."
msgstr ""
-#: openidsettings.php:59
-msgid "OpenID settings"
+#: finishopenidlogin.php:243
+msgid "Not a valid invitation code."
msgstr ""
-#: openidsettings.php:70
-#, php-format
-msgid ""
-"[OpenID](%%doc.openid%%) lets you log into many sites with the same user "
-"account. Manage your associated OpenIDs from here."
+#: finishopenidlogin.php:253
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
msgstr ""
-#: openidsettings.php:99
-msgid "Add OpenID"
+#: finishopenidlogin.php:258
+msgid "Nickname not allowed."
msgstr ""
-#: openidsettings.php:102
-msgid ""
-"If you want to add an OpenID to your account, enter it in the box below and "
-"click \"Add\"."
+#: finishopenidlogin.php:263
+msgid "Nickname already in use. Try another one."
msgstr ""
-#: openidsettings.php:117
-msgid "Add"
+#: finishopenidlogin.php:270 finishopenidlogin.php:350
+msgid "Stored OpenID not found."
msgstr ""
-#: openidsettings.php:129
-msgid "Remove OpenID"
+#: finishopenidlogin.php:279
+msgid "Creating new account for OpenID that already has a user."
msgstr ""
-#: openidsettings.php:134
-msgid ""
-"Removing your only OpenID would make it impossible to log in! If you need to "
-"remove it, add another OpenID first."
+#: finishopenidlogin.php:339
+msgid "Invalid username or password."
msgstr ""
-#: openidsettings.php:149
+#: finishopenidlogin.php:357
+msgid "Error connecting user to OpenID."
+msgstr ""
+
+#: openidlogin.php:68
+#, php-format
msgid ""
-"You can remove an OpenID from your account by clicking the button marked "
-"\"Remove\"."
+"For security reasons, please re-login with your [OpenID](%%doc.openid%%) "
+"before changing your settings."
msgstr ""
-#: openidsettings.php:172
-msgid "Remove"
+#: openidlogin.php:72
+#, php-format
+msgid "Login with an [OpenID](%%doc.openid%%) account."
msgstr ""
-#: openidsettings.php:228
-msgid "No such OpenID."
+#: openidlogin.php:97 finishaddopenid.php:170
+msgid "OpenID Login"
msgstr ""
-#: openidsettings.php:233
-msgid "That OpenID does not belong to you."
+#: openidlogin.php:114
+msgid "OpenID login"
msgstr ""
-#: openidsettings.php:237
-msgid "OpenID removed."
+#: openidlogin.php:121
+msgid "Your OpenID URL"
+msgstr ""
+
+#: openidlogin.php:124
+msgid "Remember me"
+msgstr ""
+
+#: openidlogin.php:125
+msgid "Automatically login in the future; not for shared computers!"
+msgstr ""
+
+#: openidlogin.php:129
+msgid "Login"
msgstr ""
#: openidtrust.php:51
@@ -332,17 +368,37 @@ msgid ""
"This page should only be reached during OpenID processing, not directly."
msgstr ""
-#: openidtrust.php:118
+#: openidtrust.php:117
#, php-format
msgid ""
"%s has asked to verify your identity. Click Continue to verify your "
"identity and login without creating a new password."
msgstr ""
-#: openidtrust.php:136
+#: openidtrust.php:135
msgid "Continue"
msgstr ""
-#: openidtrust.php:137
+#: openidtrust.php:136
msgid "Cancel"
msgstr ""
+
+#: finishaddopenid.php:67
+msgid "Not logged in."
+msgstr ""
+
+#: finishaddopenid.php:112
+msgid "You already have this OpenID!"
+msgstr ""
+
+#: finishaddopenid.php:114
+msgid "Someone else already has this OpenID."
+msgstr ""
+
+#: finishaddopenid.php:126
+msgid "Error connecting user."
+msgstr ""
+
+#: finishaddopenid.php:131
+msgid "Error updating profile"
+msgstr ""
diff --git a/plugins/OpenID/locale/nl/LC_MESSAGES/OpenID.po b/plugins/OpenID/locale/nl/LC_MESSAGES/OpenID.po
new file mode 100644
index 000000000..5cda9b129
--- /dev/null
+++ b/plugins/OpenID/locale/nl/LC_MESSAGES/OpenID.po
@@ -0,0 +1,395 @@
+# Translation of StatusNet plugin OpenID to Dutch
+#
+# Author@translatewiki.net: Siebrand
+# --
+# This file is distributed under the same license as the StatusNet package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: StatusNet\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: 2010-04-30 02:16+0100\n"
+"Last-Translator: Siebrand Mazeland <s.mazeland@xs4all.nl>\n"
+"Language-Team: Dutch\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: openidsettings.php:59
+msgid "OpenID settings"
+msgstr "OpenID-instellingen"
+
+#: openidsettings.php:70
+#, php-format
+msgid "[OpenID](%%doc.openid%%) lets you log into many sites with the same user account. Manage your associated OpenIDs from here."
+msgstr "Met [OpenID](%%doc.openid%%) kunt u aanmelden bij veel websites met dezelfde gebruiker. U kunt hier uw gekoppelde OpenID's beheren."
+
+#: openidsettings.php:99
+msgid "Add OpenID"
+msgstr "OpenID toevoegen"
+
+#: openidsettings.php:102
+msgid "If you want to add an OpenID to your account, enter it in the box below and click \"Add\"."
+msgstr "Als u een OpenID aan uw gebruiker wilt toevoegen, voer deze dan hieronder in en klik op \"Toevoegen\"."
+
+#: openidsettings.php:107
+#: openidlogin.php:119
+msgid "OpenID URL"
+msgstr "OpenID-URL"
+
+#: openidsettings.php:117
+msgid "Add"
+msgstr "Toevoegen"
+
+#: openidsettings.php:129
+msgid "Remove OpenID"
+msgstr "OpenID verwijderen"
+
+#: openidsettings.php:134
+msgid "Removing your only OpenID would make it impossible to log in! If you need to remove it, add another OpenID first."
+msgstr "Door uw enige OpenID te verwijderen zou het niet meer mogelijk zijn om aan te melden. Als u het wilt verwijderen, voeg dan eerst een andere OpenID toe."
+
+#: openidsettings.php:149
+msgid "You can remove an OpenID from your account by clicking the button marked \"Remove\"."
+msgstr "U kunt een OpenID van uw gebruiker verwijderen door te klikken op de knop \"Verwijderen\"."
+
+#: openidsettings.php:172
+#: openidsettings.php:213
+msgid "Remove"
+msgstr "Verwijderen"
+
+#: openidsettings.php:186
+msgid "OpenID Trusted Sites"
+msgstr "Vertrouwde OpenID-sites"
+
+#: openidsettings.php:189
+msgid "The following sites are allowed to access your identity and log you in. You can remove a site from this list to deny it access to your OpenID."
+msgstr "De volgende sites hebben toegang tot uw indentiteit en kunnen u aanmelden. U kunt een site verwijderen uit deze lijst zodat deze niet langer toegang heeft tot uw OpenID."
+
+#: openidsettings.php:231
+#: finishopenidlogin.php:38
+#: openidlogin.php:39
+msgid "There was a problem with your session token. Try again, please."
+msgstr "Er was een probleem met uw sessietoken. Probeer het opnieuw."
+
+#: openidsettings.php:247
+#: finishopenidlogin.php:51
+msgid "Something weird happened."
+msgstr "Er is iets vreemds gebeurd."
+
+#: openidsettings.php:271
+msgid "No such OpenID trustroot."
+msgstr "Die OpenID trustroot bestaat niet."
+
+#: openidsettings.php:275
+msgid "Trustroots removed"
+msgstr "De trustroots zijn verwijderd"
+
+#: openidsettings.php:298
+msgid "No such OpenID."
+msgstr "De OpenID bestaat niet."
+
+#: openidsettings.php:303
+msgid "That OpenID does not belong to you."
+msgstr "Die OpenID is niet van u."
+
+#: openidsettings.php:307
+msgid "OpenID removed."
+msgstr "OpenID verwijderd."
+
+#: openid.php:137
+msgid "Cannot instantiate OpenID consumer object."
+msgstr "Het was niet mogelijk een OpenID-object aan te maken."
+
+#: openid.php:147
+msgid "Not a valid OpenID."
+msgstr "Geen geldige OpenID."
+
+#: openid.php:149
+#, php-format
+msgid "OpenID failure: %s"
+msgstr "OpenID-fout: %s"
+
+#: openid.php:176
+#, php-format
+msgid "Could not redirect to server: %s"
+msgstr "Het was niet mogelijk door te verwijzen naar de server: %s"
+
+#: openid.php:194
+#, php-format
+msgid "Could not create OpenID form: %s"
+msgstr "Het was niet mogelijk het OpenID-formulier aan te maken: %s"
+
+#: openid.php:210
+msgid "This form should automatically submit itself. If not, click the submit button to go to your OpenID provider."
+msgstr "Dit formulier hoort zichzelf automatisch op te slaan. Als dat niet gebeurt, klik dan op de knop \"Aanmelden\" om naar uw OpenID-provider te gaan."
+
+#: openid.php:242
+msgid "Error saving the profile."
+msgstr "Fout bij het opslaan van het profiel."
+
+#: openid.php:253
+msgid "Error saving the user."
+msgstr "Fout bij het opslaan van de gebruiker."
+
+#: openid.php:282
+msgid "Unauthorized URL used for OpenID login."
+msgstr "Ongeautoriseerde URL gebruikt voor aanmelden via OpenID"
+
+#: openid.php:302
+#, fuzzy
+msgid "OpenID Login Submission"
+msgstr "Aanmelden via OpenID"
+
+#: openid.php:312
+msgid "Requesting authorization from your login provider..."
+msgstr "Bezig met het vragen van autorisatie van uw aanmeldprovider..."
+
+#: openid.php:315
+msgid "If you are not redirected to your login provider in a few seconds, try pushing the button below."
+msgstr "Als u binnen een aantal seconden niet wordt doorverwezen naar uw aanmeldprovider, klik dan op de onderstaande knop."
+
+#. TRANS: Tooltip for main menu option "Login"
+#: OpenIDPlugin.php:204
+msgctxt "TOOLTIP"
+msgid "Login to the site"
+msgstr "Aanmelden bij de site"
+
+#: OpenIDPlugin.php:207
+#, fuzzy
+msgctxt "MENU"
+msgid "Login"
+msgstr "Aanmelden"
+
+#. TRANS: Tooltip for main menu option "Help"
+#: OpenIDPlugin.php:212
+msgctxt "TOOLTIP"
+msgid "Help me!"
+msgstr "Help me"
+
+#: OpenIDPlugin.php:215
+msgctxt "MENU"
+msgid "Help"
+msgstr "Hulp"
+
+#. TRANS: Tooltip for main menu option "Search"
+#: OpenIDPlugin.php:221
+msgctxt "TOOLTIP"
+msgid "Search for people or text"
+msgstr "Zoeken naar mensen of tekst"
+
+#: OpenIDPlugin.php:224
+msgctxt "MENU"
+msgid "Search"
+msgstr "Zoeken"
+
+#: OpenIDPlugin.php:283
+#: OpenIDPlugin.php:319
+msgid "OpenID"
+msgstr "OpenID"
+
+#: OpenIDPlugin.php:284
+msgid "Login or register with OpenID"
+msgstr "Aanmelden of registreren met OpenID"
+
+#: OpenIDPlugin.php:320
+msgid "Add or remove OpenIDs"
+msgstr "OpenID's toevoegen of verwijderen"
+
+#: OpenIDPlugin.php:595
+msgid "Use <a href=\"http://openid.net/\">OpenID</a> to login to the site."
+msgstr "Gebruik <a href=\"http://openid.net/\">OpenID</a> om aan te melden bij de site."
+
+#: openidserver.php:106
+#, php-format
+msgid "You are not authorized to use the identity %s."
+msgstr "U mag de identiteit %s niet gebruiken."
+
+#: openidserver.php:126
+msgid "Just an OpenID provider. Nothing to see here, move along..."
+msgstr "Gewoon een OpenID-provider. Niets te zien hier..."
+
+#: finishopenidlogin.php:34
+#: openidlogin.php:30
+msgid "Already logged in."
+msgstr "U bent al aangemeld."
+
+#: finishopenidlogin.php:43
+msgid "You can't register if you don't agree to the license."
+msgstr "U kunt niet registreren als u niet akkoord gaat met de licentie."
+
+#: finishopenidlogin.php:65
+#, php-format
+msgid "This is the first time you've logged into %s so we must connect your OpenID to a local account. You can either create a new account, or connect with your existing account, if you have one."
+msgstr "Dit is de eerste keer dat u aameldt bij %s en uw OpenID moet gekoppeld worden aan uw lokale gebruiker. U kunt een nieuwe gebruiker aanmaken of koppelen met uw bestaande gebruiker als u die al hebt."
+
+#: finishopenidlogin.php:71
+msgid "OpenID Account Setup"
+msgstr "Instellingen OpenID"
+
+#: finishopenidlogin.php:101
+msgid "Create new account"
+msgstr "Nieuwe gebruiker aanmaken"
+
+#: finishopenidlogin.php:103
+msgid "Create a new user with this nickname."
+msgstr "Nieuwe gebruiker met deze naam aanmaken."
+
+#: finishopenidlogin.php:106
+msgid "New nickname"
+msgstr "Nieuwe gebruiker"
+
+#: finishopenidlogin.php:108
+msgid "1-64 lowercase letters or numbers, no punctuation or spaces"
+msgstr "1-64 kleine letters of getallen; geen leestekens of spaties"
+
+#: finishopenidlogin.php:130
+msgid "Create"
+msgstr "Aanmaken"
+
+#: finishopenidlogin.php:135
+msgid "Connect existing account"
+msgstr "Koppelen met bestaande gebruiker"
+
+#: finishopenidlogin.php:137
+msgid "If you already have an account, login with your username and password to connect it to your OpenID."
+msgstr "Als u al een gebruiker hebt, meld u dan aan met uw gebruikersnaam en wachtwoord om de gebruiker te koppelen met uw OpenID."
+
+#: finishopenidlogin.php:140
+msgid "Existing nickname"
+msgstr "Bestaande gebruiker"
+
+#: finishopenidlogin.php:143
+msgid "Password"
+msgstr "Wachtwoord"
+
+#: finishopenidlogin.php:146
+msgid "Connect"
+msgstr "Koppelen"
+
+#: finishopenidlogin.php:158
+#: finishaddopenid.php:88
+msgid "OpenID authentication cancelled."
+msgstr "De authenticatie via OpenID is afgebroken."
+
+#: finishopenidlogin.php:162
+#: finishaddopenid.php:92
+#, php-format
+msgid "OpenID authentication failed: %s"
+msgstr "De authenticatie via OpenID is mislukt: %s"
+
+#: finishopenidlogin.php:227
+#: finishopenidlogin.php:236
+msgid "Registration not allowed."
+msgstr "Registreren is niet mogelijk."
+
+#: finishopenidlogin.php:243
+msgid "Not a valid invitation code."
+msgstr "De uitnodigingscode is niet geldig."
+
+#: finishopenidlogin.php:253
+msgid "Nickname must have only lowercase letters and numbers and no spaces."
+msgstr "De gebruikersnaam mag alleen uit kleine letters en cijfers bestaan, en geen spaties bevatten."
+
+#: finishopenidlogin.php:258
+msgid "Nickname not allowed."
+msgstr "Deze gebruikersnaam is niet toegestaan."
+
+#: finishopenidlogin.php:263
+msgid "Nickname already in use. Try another one."
+msgstr "Deze gebruikersnaam wordt al gebruikt. Kies een andere."
+
+#: finishopenidlogin.php:270
+#: finishopenidlogin.php:350
+msgid "Stored OpenID not found."
+msgstr "Het opgeslagen OpenID is niet aangetroffen."
+
+#: finishopenidlogin.php:279
+msgid "Creating new account for OpenID that already has a user."
+msgstr "Bezig met het aanmaken van een gebruiker voor OpenID die al een gebruiker heeft."
+
+#: finishopenidlogin.php:339
+msgid "Invalid username or password."
+msgstr "Ongeldige gebruikersnaam of wachtwoord."
+
+#: finishopenidlogin.php:357
+msgid "Error connecting user to OpenID."
+msgstr "Fout bij het koppelen met OpenID."
+
+#: openidlogin.php:68
+#, php-format
+msgid "For security reasons, please re-login with your [OpenID](%%doc.openid%%) before changing your settings."
+msgstr "Om veiligheidsreden moet u opnieuw aanmelden met uw [OpenID](%%doc.openid%%) voordat u uw instellingen kunt wijzigen."
+
+#: openidlogin.php:72
+#, php-format
+msgid "Login with an [OpenID](%%doc.openid%%) account."
+msgstr "Aanmelden met een [OpenID](%%doc.openid%%)-gebruiker."
+
+#: openidlogin.php:97
+#: finishaddopenid.php:170
+msgid "OpenID Login"
+msgstr "Aanmelden via OpenID"
+
+#: openidlogin.php:114
+msgid "OpenID login"
+msgstr "Aanmelden via OpenID"
+
+#: openidlogin.php:121
+msgid "Your OpenID URL"
+msgstr "Uw OpenID-URL"
+
+#: openidlogin.php:124
+msgid "Remember me"
+msgstr "Aanmeldgegevens onthouden"
+
+#: openidlogin.php:125
+msgid "Automatically login in the future; not for shared computers!"
+msgstr "In het vervolg automatisch aanmelden. Niet gebruiken op gedeelde computers!"
+
+#: openidlogin.php:129
+msgid "Login"
+msgstr "Aanmelden"
+
+#: openidtrust.php:51
+msgid "OpenID Identity Verification"
+msgstr "OpenID-identiteitscontrole"
+
+#: openidtrust.php:69
+msgid "This page should only be reached during OpenID processing, not directly."
+msgstr "Deze pagina hoort alleen bezocht te worden tijdens het verwerken van een OpenID, en niet direct."
+
+#: openidtrust.php:117
+#, php-format
+msgid "%s has asked to verify your identity. Click Continue to verify your identity and login without creating a new password."
+msgstr "%s heeft gevraagd uw identiteit te bevestigen. Klik op \"Doorgaan\" om uw indentiteit te controleren en aan te melden zonder een wachtwoord te hoeven invoeren."
+
+#: openidtrust.php:135
+msgid "Continue"
+msgstr "Doorgaan"
+
+#: openidtrust.php:136
+msgid "Cancel"
+msgstr "Annuleren"
+
+#: finishaddopenid.php:67
+msgid "Not logged in."
+msgstr "Niet aangemeld."
+
+#: finishaddopenid.php:112
+msgid "You already have this OpenID!"
+msgstr "U hebt deze OpenID al!"
+
+#: finishaddopenid.php:114
+msgid "Someone else already has this OpenID."
+msgstr "Iemand anders gebruikt deze OpenID al."
+
+#: finishaddopenid.php:126
+msgid "Error connecting user."
+msgstr "Fout bij het verbinden met de gebruiker."
+
+#: finishaddopenid.php:131
+msgid "Error updating profile"
+msgstr "Fout bij het bijwerken van het profiel."
diff --git a/plugins/OpenID/openid.php b/plugins/OpenID/openid.php
index 9e02c7a88..4ce350f77 100644
--- a/plugins/OpenID/openid.php
+++ b/plugins/OpenID/openid.php
@@ -94,7 +94,6 @@ function oid_link_user($id, $canonical, $display)
if (!$oid->insert()) {
$err = PEAR::getStaticProperty('DB_DataObject','lastError');
- common_debug('DB error ' . $err->code . ': ' . $err->message, __FILE__);
return false;
}
@@ -119,13 +118,10 @@ function oid_check_immediate($openid_url, $backto=null)
unset($args['action']);
$backto = common_local_url($action, $args);
}
- common_debug('going back to "' . $backto . '"', __FILE__);
common_ensure_session();
$_SESSION['openid_immediate_backto'] = $backto;
- common_debug('passed-in variable is "' . $backto . '"', __FILE__);
- common_debug('session variable is "' . $_SESSION['openid_immediate_backto'] . '"', __FILE__);
oid_authenticate($openid_url,
'finishimmediate',
@@ -138,6 +134,7 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
$consumer = oid_consumer();
if (!$consumer) {
+ // TRANS: OpenID plugin server error.
common_server_error(_m('Cannot instantiate OpenID consumer object.'));
return false;
}
@@ -148,8 +145,13 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
// Handle failure status return values.
if (!$auth_request) {
+ common_log(LOG_ERR, __METHOD__ . ": mystery fail contacting $openid_url");
+ // TRANS: OpenID plugin message. Given when an OpenID is not valid.
return _m('Not a valid OpenID.');
} else if (Auth_OpenID::isFailure($auth_request)) {
+ common_log(LOG_ERR, __METHOD__ . ": OpenID fail to $openid_url: $auth_request->message");
+ // TRANS: OpenID plugin server error. Given when the OpenID authentication request fails.
+ // TRANS: %s is the failure message.
return sprintf(_m('OpenID failure: %s'), $auth_request->message);
}
@@ -168,6 +170,15 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
$auth_request->addExtension($sreg_request);
}
+ $requiredTeam = common_config('openid', 'required_team');
+ if ($requiredTeam) {
+ // LaunchPad OpenID extension
+ $team_request = new Auth_OpenID_TeamsRequest(array($requiredTeam));
+ if ($team_request) {
+ $auth_request->addExtension($team_request);
+ }
+ }
+
$trust_root = common_root_url(true);
$process_url = common_local_url($returnto);
@@ -177,6 +188,8 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
$immediate);
if (!$redirect_url) {
} else if (Auth_OpenID::isFailure($redirect_url)) {
+ // TRANS: OpenID plugin server error. Given when the OpenID authentication request cannot be redirected.
+ // TRANS: %s is the failure message.
return sprintf(_m('Could not redirect to server: %s'), $redirect_url->message);
} else {
common_redirect($redirect_url, 303);
@@ -195,6 +208,8 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
// Display an error if the form markup couldn't be generated;
// otherwise, render the HTML.
if (Auth_OpenID::isFailure($form_html)) {
+ // TRANS: OpenID plugin server error if the form markup could not be generated.
+ // TRANS: %s is the failure message.
common_server_error(sprintf(_m('Could not create OpenID form: %s'), $form_html->message));
} else {
$action = new AutosubmitAction(); // see below
@@ -211,16 +226,20 @@ function oid_authenticate($openid_url, $returnto, $immediate=false)
function _oid_print_instructions()
{
common_element('div', 'instructions',
+ // TRANS: OpenID plugin user instructions.
_m('This form should automatically submit itself. '.
'If not, click the submit button to go to your '.
'OpenID provider.'));
}
-# update a user from sreg parameters
-
-function oid_update_user(&$user, &$sreg)
+/**
+ * Update a user from sreg parameters
+ * @param User $user
+ * @param array $sreg fields from OpenID sreg response
+ * @access private
+ */
+function oid_update_user($user, $sreg)
{
-
$profile = $user->getProfile();
$orig_profile = clone($profile);
@@ -243,6 +262,7 @@ function oid_update_user(&$user, &$sreg)
# XXX save timezone if it's passed
if (!$profile->update($orig_profile)) {
+ // TRANS: OpenID plugin server error.
common_server_error(_m('Error saving the profile.'));
return false;
}
@@ -254,6 +274,7 @@ function oid_update_user(&$user, &$sreg)
}
if (!$user->update($orig_user)) {
+ // TRANS: OpenID plugin server error.
common_server_error(_m('Error saving the user.'));
return false;
}
@@ -261,6 +282,63 @@ function oid_update_user(&$user, &$sreg)
return true;
}
+function oid_assert_allowed($url)
+{
+ $blacklist = common_config('openid', 'blacklist');
+ $whitelist = common_config('openid', 'whitelist');
+
+ if (empty($blacklist)) {
+ $blacklist = array();
+ }
+
+ if (empty($whitelist)) {
+ $whitelist = array();
+ }
+
+ foreach ($blacklist as $pattern) {
+ if (preg_match("/$pattern/", $url)) {
+ common_log(LOG_INFO, "Matched OpenID blacklist pattern {$pattern} with {$url}");
+ foreach ($whitelist as $exception) {
+ if (preg_match("/$exception/", $url)) {
+ common_log(LOG_INFO, "Matched OpenID whitelist pattern {$exception} with {$url}");
+ return;
+ }
+ }
+ // TRANS: OpenID plugin client exception (403).
+ throw new ClientException(_m("Unauthorized URL used for OpenID login."), 403);
+ }
+ }
+
+ return;
+}
+
+/**
+ * Check the teams available in the given OpenID response
+ * Using Launchpad's OpenID teams extension
+ *
+ * @return boolean whether this user is acceptable
+ */
+function oid_check_teams($response)
+{
+ $requiredTeam = common_config('openid', 'required_team');
+ if ($requiredTeam) {
+ $team_resp = new Auth_OpenID_TeamsResponse($response);
+ if ($team_resp) {
+ $teams = $team_resp->getTeams();
+ } else {
+ $teams = array();
+ }
+
+ $match = in_array($requiredTeam, $teams);
+ $is = $match ? 'is' : 'is not';
+ common_log(LOG_DEBUG, "Remote user $is in required team $requiredTeam: [" . implode(', ', $teams) . "]");
+
+ return $match;
+ }
+
+ return true;
+}
+
class AutosubmitAction extends Action
{
var $form_html = null;
@@ -274,20 +352,31 @@ class AutosubmitAction extends Action
function title()
{
- return _m('OpenID Auto-Submit');
+ // TRANS: Title
+ return _m('OpenID Login Submission');
}
function showContent()
{
+ $this->raw('<p style="margin: 20px 80px">');
+ // @fixme this would be better using standard CSS class, but the present theme's a bit scary.
+ $this->element('img', array('src' => Theme::path('images/icons/icon_processing.gif', 'base'),
+ // for some reason the base CSS sets <img>s as block display?!
+ 'style' => 'display: inline'));
+ // TRANS: OpenID plugin message used while requesting authorization user's OpenID login provider.
+ $this->text(_m('Requesting authorization from your login provider...'));
+ $this->raw('</p>');
+ $this->raw('<p style="margin-top: 60px; font-style: italic">');
+ // TRANS: OpenID plugin message. User instruction while requesting authorization user's OpenID login provider.
+ $this->text(_m('If you are not redirected to your login provider in a few seconds, try pushing the button below.'));
+ $this->raw('</p>');
$this->raw($this->form_html);
}
-
+
function showScripts()
{
parent::showScripts();
$this->element('script', null,
- '$(document).ready(function() { ' .
- ' $(\'#'. $this->form_id .'\').submit(); '.
- '});');
+ 'document.getElementById(\'' . $this->form_id . '\').submit();');
}
}
diff --git a/plugins/OpenID/openidadminpanel.php b/plugins/OpenID/openidadminpanel.php
new file mode 100644
index 000000000..ce4806cc8
--- /dev/null
+++ b/plugins/OpenID/openidadminpanel.php
@@ -0,0 +1,280 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * OpenID bridge administration panel
+ *
+ * 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 Settings
+ * @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);
+}
+
+/**
+ * Administer global OpenID settings
+ *
+ * @category Admin
+ * @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 OpenidadminpanelAction extends AdminPanelAction
+{
+ /**
+ * Returns the page title
+ *
+ * @return string page title
+ */
+
+ function title()
+ {
+ return _m('OpenID');
+ }
+
+ /**
+ * Instructions for using this form.
+ *
+ * @return string instructions
+ */
+
+ function getInstructions()
+ {
+ return _m('OpenID settings');
+ }
+
+ /**
+ * Show the OpenID admin panel form
+ *
+ * @return void
+ */
+
+ function showForm()
+ {
+ $form = new OpenIDAdminPanelForm($this);
+ $form->show();
+ return;
+ }
+
+ /**
+ * Save settings from the form
+ *
+ * @return void
+ */
+
+ function saveSettings()
+ {
+ static $settings = array(
+ 'openid' => array('trusted_provider', 'required_team')
+ );
+
+ static $booleans = array(
+ 'openid' => array('append_username'),
+ 'site' => array('openidonly')
+ );
+
+ $values = array();
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ $values[$section][$setting]
+ = $this->trimmed($setting);
+ }
+ }
+
+ foreach ($booleans as $section => $parts) {
+ foreach ($parts as $setting) {
+ $values[$section][$setting]
+ = ($this->boolean($setting)) ? 1 : 0;
+ }
+ }
+
+ // This throws an exception on validation errors
+
+ $this->validate($values);
+
+ // assert(all values are valid);
+
+ $config = new Config();
+
+ $config->query('BEGIN');
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ Config::save($section, $setting, $values[$section][$setting]);
+ }
+ }
+
+ foreach ($booleans as $section => $parts) {
+ foreach ($parts as $setting) {
+ Config::save($section, $setting, $values[$section][$setting]);
+ }
+ }
+
+ $config->query('COMMIT');
+
+ return;
+ }
+
+ function validate(&$values)
+ {
+ // Validate consumer key and secret (can't be too long)
+
+ if (mb_strlen($values['openid']['trusted_provider']) > 255) {
+ $this->clientError(
+ _m("Invalid provider URL. Max length is 255 characters.")
+ );
+ }
+
+ if (mb_strlen($values['openid']['required_team']) > 255) {
+ $this->clientError(
+ _m("Invalid team name. Max length is 255 characters.")
+ );
+ }
+ }
+}
+
+class OpenIDAdminPanelForm extends AdminForm
+{
+ /**
+ * ID of the form
+ *
+ * @return int ID of the form
+ */
+
+ function id()
+ {
+ return 'openidadminpanel';
+ }
+
+ /**
+ * class of the form
+ *
+ * @return string class of the form
+ */
+
+ function formClass()
+ {
+ return 'form_settings';
+ }
+
+ /**
+ * Action of the form
+ *
+ * @return string URL of the action
+ */
+
+ function action()
+ {
+ return common_local_url('openidadminpanel');
+ }
+
+ /**
+ * Data elements of the form
+ *
+ * @return void
+ *
+ * @todo Some of the options could prevent users from logging in again.
+ * Make sure that the acting administrator has a valid OpenID matching,
+ * or more carefully warn folks.
+ */
+
+ function formData()
+ {
+ $this->out->elementStart(
+ 'fieldset',
+ array('id' => 'settings_openid')
+ );
+ $this->out->element('legend', null, _m('Trusted provider'));
+ $this->out->element('p', 'form_guide',
+ _m('By default, users are allowed to authenticate with any OpenID provider. ' .
+ 'If you are using your own OpenID service for shared sign-in, ' .
+ 'you can restrict access to only your own users here.'));
+ $this->out->elementStart('ul', 'form_data');
+
+ $this->li();
+ $this->input(
+ 'trusted_provider',
+ _m('Provider URL'),
+ _m('All OpenID logins will be sent to this URL; other providers may not be used.'),
+ 'openid'
+ );
+ $this->unli();
+
+ $this->li();
+ $this->out->checkbox(
+ 'append_username', _m('Append a username to base URL'),
+ (bool) $this->value('append_username', 'openid'),
+ _m('Login form will show the base URL and prompt for a username to add at the end. Use when OpenID provider URL should be the profile page for individual users.'),
+ 'true'
+ );
+ $this->unli();
+
+ $this->li();
+ $this->input(
+ 'required_team',
+ _m('Required team'),
+ _m('Only allow logins from users in the given team (Launchpad extension).'),
+ 'openid'
+ );
+ $this->unli();
+
+ $this->out->elementEnd('ul');
+ $this->out->elementEnd('fieldset');
+
+ $this->out->elementStart(
+ 'fieldset',
+ array('id' => 'settings_openid-options')
+ );
+ $this->out->element('legend', null, _m('Options'));
+
+ $this->out->elementStart('ul', 'form_data');
+
+ $this->li();
+
+ $this->out->checkbox(
+ 'openidonly', _m('Enable OpenID-only mode'),
+ (bool) $this->value('openidonly', 'site'),
+ _m('Require all users to login via OpenID. WARNING: disables password authentication for all users!'),
+ 'true'
+ );
+ $this->unli();
+
+ $this->out->elementEnd('ul');
+
+ $this->out->elementEnd('fieldset');
+ }
+
+ /**
+ * Action elements
+ *
+ * @return void
+ */
+
+ function formActions()
+ {
+ $this->out->submit('submit', _('Save'), 'submit', null, _m('Save OpenID settings'));
+ }
+}
diff --git a/plugins/OpenID/openidlogin.php b/plugins/OpenID/openidlogin.php
index 9ba55911c..20d6e070c 100644
--- a/plugins/OpenID/openidlogin.php
+++ b/plugins/OpenID/openidlogin.php
@@ -27,13 +27,25 @@ class OpenidloginAction extends Action
{
parent::handle($args);
if (common_is_real_login()) {
+ // TRANS: Client error message trying to log on with OpenID while already logged on.
$this->clientError(_m('Already logged in.'));
} else if ($_SERVER['REQUEST_METHOD'] == 'POST') {
- $openid_url = $this->trimmed('openid_url');
+ $provider = common_config('openid', 'trusted_provider');
+ if ($provider) {
+ $openid_url = $provider;
+ if (common_config('openid', 'append_username')) {
+ $openid_url .= $this->trimmed('openid_username');
+ }
+ } else {
+ $openid_url = $this->trimmed('openid_url');
+ }
+
+ oid_assert_allowed($openid_url);
# CSRF protection
$token = $this->trimmed('token');
if (!$token || $token != common_session_token()) {
+ // TRANS: Message given when there is a problem with the user's session token.
$this->showForm(_m('There was a problem with your session token. Try again, please.'), $openid_url);
return;
}
@@ -63,10 +75,14 @@ class OpenidloginAction extends Action
common_get_returnto()) {
// rememberme logins have to reauthenticate before
// changing any profile settings (cookie-stealing protection)
+ // TRANS: OpenID plugin message. Rememberme logins have to reauthenticate before changing any profile settings.
+ // TRANS: "OpenID" is the display text for a link with URL "(%%doc.openid%%)".
return _m('For security reasons, please re-login with your ' .
'[OpenID](%%doc.openid%%) ' .
'before changing your settings.');
} else {
+ // TRANS: OpenID plugin message.
+ // TRANS: "OpenID" is the display text for a link with URL "(%%doc.openid%%)".
return _m('Login with an [OpenID](%%doc.openid%%) account.');
}
}
@@ -87,11 +103,20 @@ class OpenidloginAction extends Action
function showScripts()
{
parent::showScripts();
- $this->autofocus('openid_url');
+ if (common_config('openid', 'trusted_provider')) {
+ if (common_config('openid', 'append_username')) {
+ $this->autofocus('openid_username');
+ } else {
+ $this->autofocus('rememberme');
+ }
+ } else {
+ $this->autofocus('openid_url');
+ }
}
function title()
{
+ // TRANS: OpenID plugin message. Title.
return _m('OpenID Login');
}
@@ -109,22 +134,44 @@ class OpenidloginAction extends Action
'class' => 'form_settings',
'action' => $formaction));
$this->elementStart('fieldset');
+ // TRANS: OpenID plugin logon form legend.
$this->element('legend', null, _m('OpenID login'));
$this->hidden('token', common_session_token());
$this->elementStart('ul', 'form_data');
$this->elementStart('li');
- $this->input('openid_url', _m('OpenID URL'),
- $this->openid_url,
- _m('Your OpenID URL'));
+ $provider = common_config('openid', 'trusted_provider');
+ $appendUsername = common_config('openid', 'append_username');
+ if ($provider) {
+ $this->element('label', array(), _m('OpenID provider'));
+ $this->element('span', array(), $provider);
+ if ($appendUsername) {
+ $this->element('input', array('id' => 'openid_username',
+ 'name' => 'openid_username',
+ 'style' => 'float: none'));
+ }
+ $this->element('p', 'form_guide',
+ ($appendUsername ? _m('Enter your username.') . ' ' : '') .
+ _m('You will be sent to the provider\'s site for authentication.'));
+ $this->hidden('openid_url', $provider);
+ } else {
+ // TRANS: OpenID plugin logon form field label.
+ $this->input('openid_url', _m('OpenID URL'),
+ $this->openid_url,
+ // TRANS: OpenID plugin logon form field instructions.
+ _m('Your OpenID URL'));
+ }
$this->elementEnd('li');
$this->elementStart('li', array('id' => 'settings_rememberme'));
+ // TRANS: OpenID plugin logon form checkbox label for setting to put the OpenID information in a cookie.
$this->checkbox('rememberme', _m('Remember me'), false,
+ // TRANS: OpenID plugin logon form field instructions.
_m('Automatically login in the future; ' .
'not for shared computers!'));
$this->elementEnd('li');
$this->elementEnd('ul');
- $this->submit('submit', _m('Login'));
+ // TRANS: OpenID plugin logon form button label to start logon with the data provided in the logon form.
+ $this->submit('submit', _m('BUTTON', 'Login'));
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
diff --git a/plugins/OpenID/openidserver.php b/plugins/OpenID/openidserver.php
index afbca553f..b2cf1f8ac 100644
--- a/plugins/OpenID/openidserver.php
+++ b/plugins/OpenID/openidserver.php
@@ -23,6 +23,7 @@
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
* @copyright 2008-2009 StatusNet, Inc.
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -43,6 +44,7 @@ require_once(INSTALLDIR.'/plugins/OpenID/User_openid_trustroot.php');
* @category Settings
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -69,9 +71,13 @@ class OpenidserverAction extends Action
//cannot prompt the user to login in immediate mode, so answer false
$response = $this->generateDenyResponse($request);
}else{
- /* Go log in, and then come back. */
+ // Go log in, and then come back.
+ //
+ // Note: 303 redirect rather than 307 to avoid
+ // prompting user for form resubmission if we
+ // were POSTed here.
common_set_returnto($_SERVER['REQUEST_URI']);
- common_redirect(common_local_url('login'));
+ common_redirect(common_local_url('login'), 303);
return;
}
}else if(common_profile_url($user->nickname) == $request->identity || $request->idSelect()){
@@ -90,8 +96,13 @@ class OpenidserverAction extends Action
$this->oserver->encodeResponse($denyResponse); //sign the response
$_SESSION['openid_allow_url'] = $allowResponse->encodeToUrl();
$_SESSION['openid_deny_url'] = $denyResponse->encodeToUrl();
- //ask the user to trust this trust root
- common_redirect(common_local_url('openidtrust'));
+
+ // Ask the user to trust this trust root...
+ //
+ // Note: 303 redirect rather than 307 to avoid
+ // prompting user for form resubmission if we
+ // were POSTed here.
+ common_redirect(common_local_url('openidtrust'), 303);
return;
}
}else{
@@ -103,6 +114,7 @@ class OpenidserverAction extends Action
$response = $this->generateDenyResponse($request);
} else {
//invalid
+ // TRANS: OpenID plugin client error given trying to add an unauthorised OpenID to a user (403).
$this->clientError(sprintf(_m('You are not authorized to use the identity %s.'),$request->identity),$code=403);
}
} else {
@@ -123,6 +135,7 @@ class OpenidserverAction extends Action
}
$this->raw($response->body);
}else{
+ // TRANS: OpenID plugin client error given when not getting a response for a given OpenID provider (500).
$this->clientError(_m('Just an OpenID provider. Nothing to see here, move along...'),$code=500);
}
}
diff --git a/plugins/OpenID/openidsettings.php b/plugins/OpenID/openidsettings.php
index 16142cf48..505e7d0ee 100644
--- a/plugins/OpenID/openidsettings.php
+++ b/plugins/OpenID/openidsettings.php
@@ -90,34 +90,36 @@ class OpenidsettingsAction extends AccountSettingsAction
{
$user = common_current_user();
- $this->elementStart('form', array('method' => 'post',
- 'id' => 'form_settings_openid_add',
- 'class' => 'form_settings',
- 'action' =>
- common_local_url('openidsettings')));
- $this->elementStart('fieldset', array('id' => 'settings_openid_add'));
- $this->element('legend', null, _m('Add OpenID'));
- $this->hidden('token', common_session_token());
- $this->element('p', 'form_guide',
- _m('If you want to add an OpenID to your account, ' .
- 'enter it in the box below and click "Add".'));
- $this->elementStart('ul', 'form_data');
- $this->elementStart('li');
- $this->element('label', array('for' => 'openid_url'),
- _m('OpenID URL'));
- $this->element('input', array('name' => 'openid_url',
- 'type' => 'text',
- 'id' => 'openid_url'));
- $this->elementEnd('li');
- $this->elementEnd('ul');
- $this->element('input', array('type' => 'submit',
- 'id' => 'settings_openid_add_action-submit',
- 'name' => 'add',
- 'class' => 'submit',
- 'value' => _m('Add')));
- $this->elementEnd('fieldset');
- $this->elementEnd('form');
-
+ if (!common_config('openid', 'trusted_provider')) {
+ $this->elementStart('form', array('method' => 'post',
+ 'id' => 'form_settings_openid_add',
+ 'class' => 'form_settings',
+ 'action' =>
+ common_local_url('openidsettings')));
+ $this->elementStart('fieldset', array('id' => 'settings_openid_add'));
+
+ $this->element('legend', null, _m('Add OpenID'));
+ $this->hidden('token', common_session_token());
+ $this->element('p', 'form_guide',
+ _m('If you want to add an OpenID to your account, ' .
+ 'enter it in the box below and click "Add".'));
+ $this->elementStart('ul', 'form_data');
+ $this->elementStart('li');
+ $this->element('label', array('for' => 'openid_url'),
+ _m('OpenID URL'));
+ $this->element('input', array('name' => 'openid_url',
+ 'type' => 'text',
+ 'id' => 'openid_url'));
+ $this->elementEnd('li');
+ $this->elementEnd('ul');
+ $this->element('input', array('type' => 'submit',
+ 'id' => 'settings_openid_add_action-submit',
+ 'name' => 'add',
+ 'class' => 'submit',
+ 'value' => _m('Add')));
+ $this->elementEnd('fieldset');
+ $this->elementEnd('form');
+ }
$oid = new User_openid();
$oid->user_id = $user->id;
@@ -234,10 +236,14 @@ class OpenidsettingsAction extends AccountSettingsAction
}
if ($this->arg('add')) {
- $result = oid_authenticate($this->trimmed('openid_url'),
- 'finishaddopenid');
- if (is_string($result)) { // error message
- $this->showForm($result);
+ if (common_config('openid', 'trusted_provider')) {
+ $this->showForm(_m("Can't add new providers."));
+ } else {
+ $result = oid_authenticate($this->trimmed('openid_url'),
+ 'finishaddopenid');
+ if (is_string($result)) { // error message
+ $this->showForm($result);
+ }
}
} else if ($this->arg('remove')) {
$this->removeOpenid();
diff --git a/plugins/OpenID/openidtrust.php b/plugins/OpenID/openidtrust.php
index fa7ea36e2..ed6ca73a4 100644
--- a/plugins/OpenID/openidtrust.php
+++ b/plugins/OpenID/openidtrust.php
@@ -71,7 +71,7 @@ class OpenidtrustAction extends Action
}
return true;
}
-
+
function handle($args)
{
parent::handle($args);
@@ -96,7 +96,6 @@ class OpenidtrustAction extends Action
$user_openid_trustroot->created = DB_DataObject_Cast::dateTime();
if (!$user_openid_trustroot->insert()) {
$err = PEAR::getStaticProperty('DB_DataObject','lastError');
- common_debug('DB error ' . $err->code . ': ' . $err->message, __FILE__);
}
common_redirect($this->allowUrl, $code=302);
}else{
@@ -135,7 +134,7 @@ class OpenidtrustAction extends Action
$this->elementStart('fieldset');
$this->submit('allow', _m('Continue'));
$this->submit('deny', _m('Cancel'));
-
+
$this->elementEnd('fieldset');
$this->elementEnd('form');
}
diff --git a/plugins/PostDebug/locale/PostDebug.pot b/plugins/PostDebug/locale/PostDebug.pot
new file mode 100644
index 000000000..b7107d4c1
--- /dev/null
+++ b/plugins/PostDebug/locale/PostDebug.pot
@@ -0,0 +1,21 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: PostDebugPlugin.php:58
+msgid "Debugging tool to record request details on POST."
+msgstr ""
diff --git a/plugins/PoweredByStatusNet/locale/PoweredByStatusNet.po b/plugins/PoweredByStatusNet/locale/PoweredByStatusNet.pot
index 8f8434a85..bc0e814f2 100644
--- a/plugins/PoweredByStatusNet/locale/PoweredByStatusNet.po
+++ b/plugins/PoweredByStatusNet/locale/PoweredByStatusNet.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/plugins/PtitUrl/PtitUrlPlugin.php b/plugins/PtitUrl/PtitUrlPlugin.php
index ddba942e6..2963e8997 100644
--- a/plugins/PtitUrl/PtitUrlPlugin.php
+++ b/plugins/PtitUrl/PtitUrlPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/PtitUrl/locale/PtitUrl.pot b/plugins/PtitUrl/locale/PtitUrl.pot
new file mode 100644
index 000000000..a888f80e4
--- /dev/null
+++ b/plugins/PtitUrl/locale/PtitUrl.pot
@@ -0,0 +1,22 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: PtitUrlPlugin.php:67
+#, php-format
+msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."
+msgstr ""
diff --git a/plugins/RSSCloud/RSSCloudPlugin.php b/plugins/RSSCloud/RSSCloudPlugin.php
index 9f444c8bb..c1951cdbf 100644
--- a/plugins/RSSCloud/RSSCloudPlugin.php
+++ b/plugins/RSSCloud/RSSCloudPlugin.php
@@ -100,12 +100,12 @@ class RSSCloudPlugin extends Plugin
*
* Hook for RouterInitialized event.
*
- * @param Mapper &$m URL parser and mapper
+ * @param Mapper $m URL parser and mapper
*
* @return boolean hook return
*/
- function onRouterInitialized(&$m)
+ function onRouterInitialized($m)
{
$m->connect('/main/rsscloud/request_notify',
array('action' => 'RSSCloudRequestNotify'));
@@ -192,25 +192,13 @@ class RSSCloudPlugin extends Plugin
function onStartEnqueueNotice($notice, &$transports)
{
- array_push($transports, 'rsscloud');
+ if ($notice->isLocal()) {
+ array_push($transports, 'rsscloud');
+ }
return true;
}
/**
- * Determine whether the notice was locally created
- *
- * @param Notice $notice the notice in question
- *
- * @return boolean locality
- */
-
- function _isLocal($notice)
- {
- return ($notice->is_local == Notice::LOCAL_PUBLIC ||
- $notice->is_local == Notice::LOCAL_NONPUBLIC);
- }
-
- /**
* Create the rsscloud_subscription table if it's not
* already in the DB
*
diff --git a/plugins/RSSCloud/locale/RSSCloud.pot b/plugins/RSSCloud/locale/RSSCloud.pot
new file mode 100644
index 000000000..4078cc749
--- /dev/null
+++ b/plugins/RSSCloud/locale/RSSCloud.pot
@@ -0,0 +1,24 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: RSSCloudPlugin.php:260
+msgid ""
+"The RSSCloud plugin enables your StatusNet instance to publish real-time "
+"updates for profile RSS feeds using the <a href=\"http://rsscloud.org/"
+"\">RSSCloud protocol</a>\"."
+msgstr ""
diff --git a/plugins/Realtime/README b/plugins/Realtime/README
index 524382696..99c79cfab 100644
--- a/plugins/Realtime/README
+++ b/plugins/Realtime/README
@@ -1,6 +1,5 @@
== TODO ==
* i18n
-* Change in context URL to conversation (try not to construct the URL in JS)
* Update mark behaviour (on notice send)
* Pause, Send a notice ~ should not update counter
* Pause ~ retain up to 50-100 most recent notices
diff --git a/plugins/Realtime/RealtimePlugin.php b/plugins/Realtime/RealtimePlugin.php
index b559d80c6..352afcf78 100644
--- a/plugins/Realtime/RealtimePlugin.php
+++ b/plugins/Realtime/RealtimePlugin.php
@@ -250,14 +250,7 @@ class RealtimePlugin extends Plugin
$arr['url'] = $notice->bestUrl();
$arr['html'] = htmlspecialchars($notice->rendered);
$arr['source'] = htmlspecialchars($arr['source']);
-
- if (!empty($notice->reply_to)) {
- $reply_to = Notice::staticGet('id', $notice->reply_to);
- if (!empty($reply_to)) {
- $arr['in_reply_to_status_url'] = $reply_to->bestUrl();
- }
- $reply_to = null;
- }
+ $arr['conversation_url'] = $this->getConversationUrl($notice);
$profile = $notice->getProfile();
$arr['user']['profile_url'] = $profile->profileurl;
@@ -272,10 +265,7 @@ class RealtimePlugin extends Plugin
$arr['retweeted_status']['source'] = htmlspecialchars($original->source);
$originalProfile = $original->getProfile();
$arr['retweeted_status']['user']['profile_url'] = $originalProfile->profileurl;
- if (!empty($original->reply_to)) {
- $originalReply = Notice::staticGet('id', $original->reply_to);
- $arr['retweeted_status']['in_reply_to_status_url'] = $originalReply->bestUrl();
- }
+ $arr['retweeted_status']['conversation_url'] = $this->getConversationUrl($original);
}
$original = null;
}
@@ -303,6 +293,34 @@ class RealtimePlugin extends Plugin
return $tags;
}
+ function getConversationUrl($notice)
+ {
+ $convurl = null;
+
+ if ($notice->hasConversation()) {
+ $conv = Conversation::staticGet(
+ 'id',
+ $notice->conversation
+ );
+ $convurl = $conv->uri;
+
+ if(empty($convurl)) {
+ $msg = sprintf(
+ "Couldn't find Conversation ID %d to make 'in context'"
+ . "link for Notice ID %d",
+ $notice->conversation,
+ $notice->id
+ );
+
+ common_log(LOG_WARNING, $msg);
+ } else {
+ $convurl .= '#notice-' . $notice->id;
+ }
+ }
+
+ return $convurl;
+ }
+
function _getScripts()
{
return array('plugins/Realtime/realtimeupdate.js');
diff --git a/plugins/Realtime/realtimeupdate.js b/plugins/Realtime/realtimeupdate.js
index 0f7a680d7..25dc12d58 100644
--- a/plugins/Realtime/realtimeupdate.js
+++ b/plugins/Realtime/realtimeupdate.js
@@ -130,7 +130,7 @@ RealtimeUpdate = {
user = data['user'];
html = data['html'].replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&quot;/g,'"').replace(/&amp;/g,'&');
source = data['source'].replace(/&lt;/g,'<').replace(/&gt;/g,'>').replace(/&quot;/g,'"').replace(/&amp;/g,'&');
-console.log(data);
+
ni = "<li class=\"hentry notice\" id=\"notice-"+unique+"\">"+
"<div class=\"entry-title\">"+
"<span class=\"vcard author\">"+
@@ -149,8 +149,8 @@ console.log(data);
"from "+
"<span class=\"device\">"+source+"</span>"+ // may have a link
"</span>";
- if (data['in_reply_to_status_id']) {
- ni = ni+" <a class=\"response\" href=\""+data['in_reply_to_status_url']+"\">in context</a>";
+ if (data['conversation_url']) {
+ ni = ni+" <a class=\"response\" href=\""+data['conversation_url']+"\">in context</a>";
}
if (repeat) {
diff --git a/plugins/Recaptcha/RecaptchaPlugin.php b/plugins/Recaptcha/RecaptchaPlugin.php
index c585da43c..7cc34c568 100644
--- a/plugins/Recaptcha/RecaptchaPlugin.php
+++ b/plugins/Recaptcha/RecaptchaPlugin.php
@@ -62,12 +62,32 @@ class RecaptchaPlugin extends Plugin
{
$action->elementStart('li');
$action->raw('<label for="recaptcha">Captcha</label>');
- if($this->checkssl() === true) {
- $action->raw(recaptcha_get_html($this->public_key), null, true);
- } else {
- $action->raw(recaptcha_get_html($this->public_key));
- }
+
+ // AJAX API will fill this div out.
+ // We're calling that instead of the regular one so we stay compatible
+ // with application/xml+xhtml output as for mobile.
+ $action->element('div', array('id' => 'recaptcha'));
$action->elementEnd('li');
+
+ $action->recaptchaPluginNeedsOutput = true;
+ return true;
+ }
+
+ function onEndShowScripts($action)
+ {
+ if (isset($action->recaptchaPluginNeedsOutput) && $action->recaptchaPluginNeedsOutput) {
+ // Load the AJAX API
+ if ($this->checkssl()) {
+ $url = "https://api-secure.recaptcha.net/js/recaptcha_ajax.js";
+ } else {
+ $url = "http://api.recaptcha.net/js/recaptcha_ajax.js";
+ }
+ $action->script($url);
+
+ // And when we're ready, fill out the captcha!
+ $key = json_encode($this->public_key);
+ $action->inlinescript("\$(function(){Recaptcha.create($key, 'recaptcha');});");
+ }
return true;
}
diff --git a/plugins/Recaptcha/locale/Recaptcha.pot b/plugins/Recaptcha/locale/Recaptcha.pot
new file mode 100644
index 000000000..6611ff604
--- /dev/null
+++ b/plugins/Recaptcha/locale/Recaptcha.pot
@@ -0,0 +1,23 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: RecaptchaPlugin.php:97
+msgid ""
+"Uses <a href=\"http://recaptcha.org/\">Recaptcha</a> service to add a "
+"captcha to the registration page."
+msgstr ""
diff --git a/plugins/RegisterThrottle/locale/RegisterThrottle.pot b/plugins/RegisterThrottle/locale/RegisterThrottle.pot
new file mode 100644
index 000000000..834f5fd4a
--- /dev/null
+++ b/plugins/RegisterThrottle/locale/RegisterThrottle.pot
@@ -0,0 +1,29 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: RegisterThrottlePlugin.php:122 RegisterThrottlePlugin.php:161
+msgid "Cannot find IP address."
+msgstr ""
+
+#: RegisterThrottlePlugin.php:167
+msgid "Cannot find user after successful registration."
+msgstr ""
+
+#: RegisterThrottlePlugin.php:200
+msgid "Throttles excessive registration from a single IP."
+msgstr ""
diff --git a/plugins/RequireValidatedEmail/README b/plugins/RequireValidatedEmail/README
index 46ee24d5f..84b1485b2 100644
--- a/plugins/RequireValidatedEmail/README
+++ b/plugins/RequireValidatedEmail/README
@@ -12,6 +12,20 @@ registered prior to that timestamp.
addPlugin('RequireValidatedEmail',
array('grandfatherCutoff' => 'Dec 7, 2009');
+You can also exclude the validation checks from OpenID accounts
+connected to a trusted provider, by providing a list of regular
+expressions to match their provider URLs.
+
+For example, to trust WikiHow and Wikipedia users:
+
+ addPlugin('RequireValidatedEmailPlugin', array(
+ 'trustedOpenIDs' => array(
+ '!^http://\w+\.wikihow\.com/!',
+ '!^http://\w+\.wikipedia\.org/!',
+ ),
+ ));
+
+
Todo:
* add a more visible indicator that validation is still outstanding
diff --git a/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php b/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php
index ccefa14f6..af75b96e0 100644
--- a/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php
+++ b/plugins/RequireValidatedEmail/RequireValidatedEmailPlugin.php
@@ -21,8 +21,9 @@
*
* @category Plugin
* @package StatusNet
- * @author Craig Andrews <candrews@integralblue.com>, Brion Vibber <brion@status.net>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @author Craig Andrews <candrews@integralblue.com>
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
@@ -37,6 +38,20 @@ class RequireValidatedEmailPlugin extends Plugin
// without the validation requirement.
public $grandfatherCutoff=null;
+ // If OpenID plugin is installed, users with a verified OpenID
+ // association whose provider URL matches one of these regexes
+ // will be considered to be sufficiently valid for our needs.
+ //
+ // For example, to trust WikiHow and Wikipedia OpenID users:
+ //
+ // addPlugin('RequireValidatedEmailPlugin', array(
+ // 'trustedOpenIDs' => array(
+ // '!^http://\w+\.wikihow\.com/!',
+ // '!^http://\w+\.wikipedia\.org/!',
+ // ),
+ // ));
+ public $trustedOpenIDs=array();
+
function __construct()
{
parent::__construct();
@@ -90,13 +105,17 @@ class RequireValidatedEmailPlugin extends Plugin
*/
protected function validated($user)
{
- if ($this->grandfathered($user)) {
- return true;
- }
-
// The email field is only stored after validation...
// Until then you'll find them in confirm_address.
- return !empty($user->email);
+ $knownGood = !empty($user->email) ||
+ $this->grandfathered($user) ||
+ $this->hasTrustedOpenID($user);
+
+ // Give other plugins a chance to override, if they can validate
+ // that somebody's ok despite a non-validated email.
+ Event::handle('RequireValidatedEmailPlugin_Override', array($user, &$knownGood));
+
+ return $knownGood;
}
/**
@@ -118,6 +137,28 @@ class RequireValidatedEmailPlugin extends Plugin
return false;
}
+ /**
+ * Override for RequireValidatedEmail plugin. If we have a user who's
+ * not validated an e-mail, but did come from a trusted provider,
+ * we'll consider them ok.
+ */
+ function hasTrustedOpenID($user)
+ {
+ if ($this->trustedOpenIDs && class_exists('User_openid')) {
+ foreach ($this->trustedOpenIDs as $regex) {
+ $oid = new User_openid();
+ $oid->user_id = $user->id;
+ $oid->find();
+ while ($oid->fetch()) {
+ if (preg_match($regex, $oid->canonical)) {
+ return true;
+ }
+ }
+ }
+ }
+ return false;
+ }
+
function onPluginVersion(&$versions)
{
$versions[] = array('name' => 'Require Validated Email',
diff --git a/plugins/RequireValidatedEmail/locale/RequireValidatedEmail.po b/plugins/RequireValidatedEmail/locale/RequireValidatedEmail.pot
index 49ac4f6f4..c8953a1fa 100644
--- a/plugins/RequireValidatedEmail/locale/RequireValidatedEmail.po
+++ b/plugins/RequireValidatedEmail/locale/RequireValidatedEmail.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-10 10:05-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php b/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php
index dac5a1588..8a05a7734 100644
--- a/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php
+++ b/plugins/ReverseUsernameAuthentication/ReverseUsernameAuthenticationPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/ReverseUsernameAuthentication/locale/ReverseUsernameAuthentication.pot b/plugins/ReverseUsernameAuthentication/locale/ReverseUsernameAuthentication.pot
new file mode 100644
index 000000000..6fa18c464
--- /dev/null
+++ b/plugins/ReverseUsernameAuthentication/locale/ReverseUsernameAuthentication.pot
@@ -0,0 +1,24 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: ReverseUsernameAuthenticationPlugin.php:67
+msgid ""
+"The Reverse Username Authentication plugin allows for StatusNet to handle "
+"authentication by checking if the provided password is the same as the "
+"reverse of the username."
+msgstr ""
diff --git a/plugins/Sample/User_greeting_count.php b/plugins/Sample/User_greeting_count.php
index d9a59770d..fc0cbd28f 100644
--- a/plugins/Sample/User_greeting_count.php
+++ b/plugins/Sample/User_greeting_count.php
@@ -94,29 +94,34 @@ class User_greeting_count extends Memcached_DataObject
/**
* return key definitions for DB_DataObject
*
- * DB_DataObject needs to know about keys that the table has; this function
- * defines them.
+ * DB_DataObject needs to know about keys that the table has, since it
+ * won't appear in StatusNet's own keys list. In most cases, this will
+ * simply reference your keyTypes() function.
*
- * @return array key definitions
+ * @return array list of key field names
*/
function keys()
{
- return array('user_id' => 'K');
+ 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.
+ * method to get them. This key information is used to store and clear
+ * cached data, so be sure to list any key that will be used for static
+ * lookups.
*
- * @return array key definitions
+ * @return array associative array of key definitions, field name to type:
+ * 'K' for primary key: for compound keys, add an entry for each component;
+ * 'U' for unique keys: compound keys are not well supported here.
*/
function keyTypes()
{
- return $this->keys();
+ return array('user_id' => 'K');
}
/**
diff --git a/plugins/Sample/locale/Sample.po b/plugins/Sample/locale/Sample.pot
index a52c4ec01..bd21dd3c4 100644
--- a/plugins/Sample/locale/Sample.po
+++ b/plugins/Sample/locale/Sample.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -17,26 +17,20 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=INTEGER; plural=EXPRESSION;\n"
-#: hello.php:115 SamplePlugin.php:266
-msgid "Hello"
+#: User_greeting_count.php:163
+#, php-format
+msgid "Could not save new greeting count for %d"
msgstr ""
-#: hello.php:117 hello.php:141
+#: User_greeting_count.php:176
#, php-format
-msgid "Hello, %s"
+msgid "Could not increment greeting count for %d"
msgstr ""
-#: hello.php:138
-msgid "Hello, stranger!"
+#: SamplePlugin.php:266 hello.php:115
+msgid "Hello"
msgstr ""
-#: hello.php:143
-#, php-format
-msgid "I have greeted you %d time."
-msgid_plural "I have greeted you %d times."
-msgstr[0] ""
-msgstr[1] ""
-
#: SamplePlugin.php:266
msgid "A warm greeting"
msgstr ""
@@ -45,12 +39,18 @@ msgstr ""
msgid "A sample plugin to show basics of development for new hackers."
msgstr ""
-#: User_greeting_count.php:163
+#: hello.php:117 hello.php:141
#, php-format
-msgid "Could not save new greeting count for %d"
+msgid "Hello, %s"
msgstr ""
-#: User_greeting_count.php:176
-#, php-format
-msgid "Could not increment greeting count for %d"
+#: hello.php:138
+msgid "Hello, stranger!"
msgstr ""
+
+#: hello.php:143
+#, php-format
+msgid "I have greeted you %d time."
+msgid_plural "I have greeted you %d times."
+msgstr[0] ""
+msgstr[1] ""
diff --git a/plugins/SimpleUrl/SimpleUrlPlugin.php b/plugins/SimpleUrl/SimpleUrlPlugin.php
index 6eac7dbb1..5e2e85878 100644
--- a/plugins/SimpleUrl/SimpleUrlPlugin.php
+++ b/plugins/SimpleUrl/SimpleUrlPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/SimpleUrl/locale/SimpleUrl.pot b/plugins/SimpleUrl/locale/SimpleUrl.pot
new file mode 100644
index 000000000..e3c241d53
--- /dev/null
+++ b/plugins/SimpleUrl/locale/SimpleUrl.pot
@@ -0,0 +1,22 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: SimpleUrlPlugin.php:58
+#, php-format
+msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."
+msgstr ""
diff --git a/plugins/Sitemap/SitemapPlugin.php b/plugins/Sitemap/SitemapPlugin.php
new file mode 100644
index 000000000..b6d3b1ad3
--- /dev/null
+++ b/plugins/Sitemap/SitemapPlugin.php
@@ -0,0 +1,224 @@
+<?php
+/**
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2010, StatusNet, Inc.
+ *
+ * Creates a dynamic sitemap for a StatusNet site
+ *
+ * PHP version 5
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Sample
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET')) {
+ // This check helps protect against security problems;
+ // your code file can't be executed directly from the web.
+ exit(1);
+}
+
+/**
+ * Sitemap plugin
+ *
+ * @category Sample
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
+ * @link http://status.net/
+ */
+
+class SitemapPlugin extends Plugin
+{
+ const USERS_PER_MAP = 50000;
+ const NOTICES_PER_MAP = 50000;
+
+ /**
+ * Load related modules when needed
+ *
+ * @param string $cls Name of the class to be loaded
+ *
+ * @return boolean hook value; true means continue processing, false means stop.
+ */
+
+ function onAutoload($cls)
+ {
+ $dir = dirname(__FILE__);
+
+ switch ($cls)
+ {
+ case 'Sitemap_user_count':
+ case 'Sitemap_notice_count':
+ require_once $dir . '/' . $cls . '.php';
+ return false;
+ case 'SitemapindexAction':
+ case 'NoticesitemapAction':
+ case 'UsersitemapAction':
+ case 'SitemapadminpanelAction':
+ require_once $dir . '/' . strtolower(mb_substr($cls, 0, -6)) . '.php';
+ return false;
+ case 'SitemapAction':
+ require_once $dir . '/' . strtolower($cls) . '.php';
+ return false;
+ default:
+ return true;
+ }
+ }
+
+ /**
+ * Add sitemap-related information at the end of robots.txt
+ *
+ * @param Action $action Action being run
+ *
+ * @return boolean hook value.
+ */
+
+ function onEndRobotsTxt($action)
+ {
+ $url = common_local_url('sitemapindex');
+
+ print "\nSitemap: $url\n";
+
+ return true;
+ }
+
+ /**
+ * Map URLs to actions
+ *
+ * @param Net_URL_Mapper $m path-to-action mapper
+ *
+ * @return boolean hook value; true means continue processing, false means stop.
+ */
+
+ function onRouterInitialized($m)
+ {
+ $m->connect('sitemapindex.xml',
+ array('action' => 'sitemapindex'));
+
+ $m->connect('/notice-sitemap-:year-:month-:day-:index.xml',
+ array('action' => 'noticesitemap'),
+ array('year' => '[0-9]{4}',
+ 'month' => '[01][0-9]',
+ 'day' => '[0123][0-9]',
+ 'index' => '[1-9][0-9]*'));
+
+ $m->connect('/user-sitemap-:year-:month-:day-:index.xml',
+ array('action' => 'usersitemap'),
+ array('year' => '[0-9]{4}',
+ 'month' => '[01][0-9]',
+ 'day' => '[0123][0-9]',
+ 'index' => '[1-9][0-9]*'));
+
+ $m->connect('admin/sitemap',
+ array('action' => 'sitemapadminpanel'));
+
+ return true;
+ }
+
+ /**
+ * Meta tags for "claiming" a site
+ *
+ * We add extra meta tags that search engines like Yahoo!, Google, and Bing
+ * require to let you claim your site.
+ *
+ * @param Action $action Action being executed
+ *
+ * @return boolean hook value.
+ */
+
+ function onStartShowHeadElements($action)
+ {
+ $actionName = $action->trimmed('action');
+
+ $singleUser = common_config('singleuser', 'enabled');
+
+ // Different "top" pages if it's single user or not
+
+ if (($singleUser && $actionName == 'showstream') ||
+ (!$singleUser && $actionName == 'public')) {
+
+ $keys = array('googlekey' => 'google-site-verification',
+ 'yahookey' => 'y_key',
+ 'bingkey' => 'msvalidate.01'); // XXX: is this the same for all sites?
+
+ foreach ($keys as $config => $metaname) {
+ $content = common_config('sitemap', $config);
+
+ if (!empty($content)) {
+ $action->element('meta', array('name' => $metaname,
+ 'content' => $content));
+ }
+ }
+ }
+
+ return true;
+ }
+
+ /**
+ * Database schema setup
+ *
+ * We cache some data persistently to avoid overlong queries.
+ *
+ * @see Sitemap_user_count
+ * @see Sitemap_notice_count
+ *
+ * @return boolean hook value; true means continue processing, false means stop.
+ */
+
+ function onCheckSchema()
+ {
+ $schema = Schema::get();
+
+ $schema->ensureTable('sitemap_user_count',
+ array(new ColumnDef('registration_date', 'date', null,
+ true, 'PRI'),
+ new ColumnDef('user_count', 'integer'),
+ new ColumnDef('created', 'datetime',
+ null, false),
+ new ColumnDef('modified', 'timestamp')));
+
+ $schema->ensureTable('sitemap_notice_count',
+ array(new ColumnDef('notice_date', 'date', null,
+ true, 'PRI'),
+ new ColumnDef('notice_count', 'integer'),
+ new ColumnDef('created', 'datetime',
+ null, false),
+ new ColumnDef('modified', 'timestamp')));
+
+ $userCreated = $schema->getColumnDef('user', 'created');
+
+ if (empty($userCreated) || $userCreated->key != 'MUL') {
+ $schema->createIndex('user', 'created');
+ }
+
+ return true;
+ }
+
+ function onEndAdminPanelNav($menu) {
+ if (AdminPanelAction::canAdmin('sitemap')) {
+ // TRANS: Menu item title/tooltip
+ $menu_title = _('Sitemap configuration');
+ // TRANS: Menu item for site administration
+ $menu->out->menuItem(common_local_url('sitemapadminpanel'), _('Sitemap'),
+ $menu_title, $action_name == 'sitemapadminpanel', 'nav_sitemap_admin_panel');
+ }
+ return true;
+ }
+}
diff --git a/plugins/Sitemap/Sitemap_notice_count.php b/plugins/Sitemap/Sitemap_notice_count.php
new file mode 100644
index 000000000..6e0061e97
--- /dev/null
+++ b/plugins/Sitemap/Sitemap_notice_count.php
@@ -0,0 +1,290 @@
+<?php
+/**
+ * Data class for counting notice postings by date
+ *
+ * PHP version 5
+ *
+ * @category Data
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 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/>.
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
+
+/**
+ * Data class for counting notices by date
+ *
+ * We make a separate sitemap for each notice posted by date.
+ * To save ourselves some (not inconsiderable) processing effort,
+ * we cache this data in the sitemap_notice_count table. Each
+ * row represents a day since the site has been started, with a count
+ * of notices posted on that day. Since, after the end of the day,
+ * this number doesn't change, it's a good candidate for persistent caching.
+ *
+ * @category Data
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * @see DB_DataObject
+ */
+
+class Sitemap_notice_count extends Memcached_DataObject
+{
+ public $__table = 'sitemap_notice_count'; // table name
+
+ public $notice_date; // date primary_key not_null
+ public $notice_count; // int(4)
+ public $created;
+ public $modified;
+
+ /**
+ * Get an instance by key
+ *
+ * This is a utility method to get a single instance with a given key value.
+ *
+ * @param string $k Key to use to lookup (usually 'notice_id' for this class)
+ * @param mixed $v Value to lookup
+ *
+ * @return Sitemap_notice_count object found, or null for no hits
+ *
+ */
+
+ function staticGet($k, $v=null)
+ {
+ return Memcached_DataObject::staticGet('Sitemap_notice_count', $k, $v);
+ }
+
+ /**
+ * return table definition for DB_DataObject
+ *
+ * DB_DataObject needs to know something about the table to manipulate
+ * instances. This method provides all the DB_DataObject needs to know.
+ *
+ * @return array array of column definitions
+ */
+
+ function table()
+ {
+ return array('notice_date' => DB_DATAOBJECT_DATE + DB_DATAOBJECT_NOTNULL,
+ 'notice_count' => DB_DATAOBJECT_INT,
+ 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL,
+ 'modified' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL);
+ }
+
+ /**
+ * 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('notice_date' => 'K');
+ }
+
+ /**
+ * return key definitions for Memcached_DataObject
+ *
+ * Our caching system uses the same key definitions, but uses a different
+ * method to get them.
+ *
+ * @return array key definitions
+ */
+
+ function keyTypes()
+ {
+ return $this->keys();
+ }
+
+ static function getAll()
+ {
+ $noticeCounts = self::cacheGet('sitemap:notice:counts');
+
+ if ($noticeCounts === false) {
+
+ $snc = new Sitemap_notice_count();
+ $snc->orderBy('notice_date DESC');
+
+ // Fetch the first one to check up-to-date-itude
+
+ $n = $snc->find(true);
+
+ $today = self::today();
+ $noticeCounts = array();
+
+ if (!$n) { // No counts saved yet
+ $noticeCounts = self::initializeCounts();
+ } else if ($snc->notice_date < $today) { // There are counts but not up to today
+ $noticeCounts = self::fillInCounts($snc->notice_date);
+ } else if ($snc->notice_date == $today) { // Refresh today's
+ $noticeCounts[$today] = self::updateToday();
+ }
+
+ // starts with second-to-last date
+
+ while ($snc->fetch()) {
+ $noticeCounts[$snc->notice_date] = $snc->notice_count;
+ }
+
+ // Cache notice counts for 4 hours.
+
+ self::cacheSet('sitemap:notice:counts', $noticeCounts, null, time() + 4 * 60 * 60);
+ }
+
+ return $noticeCounts;
+ }
+
+ static function initializeCounts()
+ {
+ $firstDate = self::getFirstDate(); // awww
+ $today = self::today();
+
+ $counts = array();
+
+ for ($d = $firstDate; $d <= $today; $d = self::incrementDay($d)) {
+ $n = self::getCount($d);
+ self::insertCount($d, $n);
+ $counts[$d] = $n;
+ }
+
+ return $counts;
+ }
+
+ static function fillInCounts($lastDate)
+ {
+ $today = self::today();
+
+ $counts = array();
+
+ $n = self::getCount($lastDate);
+ self::updateCount($lastDate, $n);
+
+ $counts[$lastDate] = $n;
+
+ for ($d = self::incrementDay($lastDate); $d <= $today; $d = self::incrementDay($d)) {
+ $n = self::getCount($d);
+ self::insertCount($d, $n);
+ }
+
+ return $counts;
+ }
+
+ static function updateToday()
+ {
+ $today = self::today();
+
+ $n = self::getCount($today);
+ self::updateCount($today, $n);
+
+ return $n;
+ }
+
+ static function getCount($d)
+ {
+ $notice = new Notice();
+ $notice->whereAdd('created BETWEEN "'.$d.' 00:00:00" AND "'.self::incrementDay($d).' 00:00:00"');
+ $notice->whereAdd('is_local = ' . Notice::LOCAL_PUBLIC);
+ $n = $notice->count();
+
+ return $n;
+ }
+
+ static function insertCount($d, $n)
+ {
+ $snc = new Sitemap_notice_count();
+
+ $snc->notice_date = DB_DataObject_Cast::date($d);
+
+ $snc->notice_count = $n;
+ $snc->created = common_sql_now();
+ $snc->modified = $snc->created;
+
+ if (!$snc->insert()) {
+ common_log(LOG_WARNING, "Could not save user counts for '$d'");
+ }
+ }
+
+ static function updateCount($d, $n)
+ {
+ $snc = Sitemap_notice_count::staticGet('notice_date', DB_DataObject_Cast::date($d));
+
+ if (empty($snc)) {
+ throw new Exception("No such registration date: $d");
+ }
+
+ $orig = clone($snc);
+
+ $snc->notice_date = DB_DataObject_Cast::date($d);
+
+ $snc->notice_count = $n;
+ $snc->created = common_sql_now();
+ $snc->modified = $snc->created;
+
+ if (!$snc->update($orig)) {
+ common_log(LOG_WARNING, "Could not save user counts for '$d'");
+ }
+ }
+
+ static function incrementDay($d)
+ {
+ $dt = self::dateStrToInt($d);
+ return self::dateIntToStr($dt + 24 * 60 * 60);
+ }
+
+ static function dateStrToInt($d)
+ {
+ return strtotime($d.' 00:00:00');
+ }
+
+ static function dateIntToStr($dt)
+ {
+ return date('Y-m-d', $dt);
+ }
+
+ static function getFirstDate()
+ {
+ $n = new Notice();
+
+ $n->selectAdd();
+ $n->selectAdd('date(min(created)) as first_date');
+
+ if ($n->find(true)) {
+ return $n->first_date;
+ } else {
+ // Is this right?
+ return self::dateIntToStr(time());
+ }
+ }
+
+ static function today()
+ {
+ return self::dateIntToStr(time());
+ }
+}
diff --git a/plugins/Sitemap/Sitemap_user_count.php b/plugins/Sitemap/Sitemap_user_count.php
new file mode 100644
index 000000000..98dd05bfe
--- /dev/null
+++ b/plugins/Sitemap/Sitemap_user_count.php
@@ -0,0 +1,286 @@
+<?php
+/**
+ * Data class for counting user registrations by date
+ *
+ * PHP version 5
+ *
+ * @category Data
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 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/>.
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+require_once INSTALLDIR . '/classes/Memcached_DataObject.php';
+
+/**
+ * Data class for counting users by date
+ *
+ * We make a separate sitemap for each user registered by date.
+ * To save ourselves some processing effort, we cache this data
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl.html AGPLv3
+ * @link http://status.net/
+ *
+ * @see DB_DataObject
+ */
+
+class Sitemap_user_count extends Memcached_DataObject
+{
+ public $__table = 'sitemap_user_count'; // table name
+
+ public $registration_date; // date primary_key not_null
+ public $user_count; // int(4)
+ public $created;
+ public $modified;
+
+ /**
+ * Get an instance by key
+ *
+ * This is a utility method to get a single instance with a given key value.
+ *
+ * @param string $k Key to use to lookup (usually 'user_id' for this class)
+ * @param mixed $v Value to lookup
+ *
+ * @return Sitemap_user_count object found, or null for no hits
+ *
+ */
+
+ function staticGet($k, $v=null)
+ {
+ return Memcached_DataObject::staticGet('Sitemap_user_count', $k, $v);
+ }
+
+ /**
+ * return table definition for DB_DataObject
+ *
+ * DB_DataObject needs to know something about the table to manipulate
+ * instances. This method provides all the DB_DataObject needs to know.
+ *
+ * @return array array of column definitions
+ */
+
+ function table()
+ {
+ return array('registration_date' => DB_DATAOBJECT_DATE + DB_DATAOBJECT_NOTNULL,
+ 'user_count' => DB_DATAOBJECT_INT,
+ 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL,
+ 'modified' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL);
+ }
+
+ /**
+ * 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('registration_date' => 'K');
+ }
+
+ function sequenceKey()
+ {
+ return array(false, false, false);
+ }
+
+ /**
+ * 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();
+ }
+
+ static function getAll()
+ {
+ $userCounts = self::cacheGet('sitemap:user:counts');
+
+ if ($userCounts === false) {
+
+ $suc = new Sitemap_user_count();
+ $suc->orderBy('registration_date DESC');
+
+ // Fetch the first one to check up-to-date-itude
+
+ $n = $suc->find(true);
+
+ $today = self::today();
+ $userCounts = array();
+
+ if (!$n) { // No counts saved yet
+ $userCounts = self::initializeCounts();
+ } else if ($suc->registration_date < $today) { // There are counts but not up to today
+ $userCounts = self::fillInCounts($suc->registration_date);
+ } else if ($suc->registration_date == $today) { // Refresh today's
+ $userCounts[$today] = self::updateToday();
+ }
+
+ // starts with second-to-last date
+
+ while ($suc->fetch()) {
+ $userCounts[$suc->registration_date] = $suc->user_count;
+ }
+
+ // Cache user counts for 4 hours.
+
+ self::cacheSet('sitemap:user:counts', $userCounts, null, time() + 4 * 60 * 60);
+ }
+
+ return $userCounts;
+ }
+
+ static function initializeCounts()
+ {
+ $firstDate = self::getFirstDate(); // awww
+ $today = self::today();
+
+ $counts = array();
+
+ for ($d = $firstDate; $d <= $today; $d = self::incrementDay($d)) {
+ $n = self::getCount($d);
+ self::insertCount($d, $n);
+ $counts[$d] = $n;
+ }
+
+ return $counts;
+ }
+
+ static function fillInCounts($lastDate)
+ {
+ $today = self::today();
+
+ $counts = array();
+
+ $n = self::getCount($lastDate);
+ self::updateCount($lastDate, $n);
+
+ $counts[$lastDate] = $n;
+
+ for ($d = self::incrementDay($lastDate); $d <= $today; $d = self::incrementDay($d)) {
+ $n = self::getCount($d);
+ self::insertCount($d, $n);
+ }
+
+ return $counts;
+ }
+
+ static function updateToday()
+ {
+ $today = self::today();
+
+ $n = self::getCount($today);
+ self::updateCount($today, $n);
+
+ return $n;
+ }
+
+ static function getCount($d)
+ {
+ $user = new User();
+ $user->whereAdd('created BETWEEN "'.$d.' 00:00:00" AND "'.self::incrementDay($d).' 00:00:00"');
+ $n = $user->count();
+
+ return $n;
+ }
+
+ static function insertCount($d, $n)
+ {
+ $suc = new Sitemap_user_count();
+
+ $suc->registration_date = DB_DataObject_Cast::date($d);
+ $suc->user_count = $n;
+ $suc->created = common_sql_now();
+ $suc->modified = $suc->created;
+
+ if (!$suc->insert()) {
+ common_log(LOG_WARNING, "Could not save user counts for '$d'");
+ }
+ }
+
+ static function updateCount($d, $n)
+ {
+ $suc = Sitemap_user_count::staticGet('registration_date', DB_DataObject_Cast::date($d));
+
+ if (empty($suc)) {
+ throw new Exception("No such registration date: $d");
+ }
+
+ $orig = clone($suc);
+
+ $suc->registration_date = DB_DataObject_Cast::date($d);
+ $suc->user_count = $n;
+ $suc->created = common_sql_now();
+ $suc->modified = $suc->created;
+
+ if (!$suc->update($orig)) {
+ common_log(LOG_WARNING, "Could not save user counts for '$d'");
+ }
+ }
+
+ static function incrementDay($d)
+ {
+ $dt = self::dateStrToInt($d);
+ return self::dateIntToStr($dt + 24 * 60 * 60);
+ }
+
+ static function dateStrToInt($d)
+ {
+ return strtotime($d.' 00:00:00');
+ }
+
+ static function dateIntToStr($dt)
+ {
+ return date('Y-m-d', $dt);
+ }
+
+ static function getFirstDate()
+ {
+ $u = new User();
+ $u->selectAdd();
+ $u->selectAdd('date(min(created)) as first_date');
+ if ($u->find(true)) {
+ return $u->first_date;
+ } else {
+ // Is this right?
+ return self::dateIntToStr(time());
+ }
+ }
+
+ static function today()
+ {
+ return self::dateIntToStr(time());
+ }
+}
diff --git a/plugins/Sitemap/noticesitemap.php b/plugins/Sitemap/noticesitemap.php
new file mode 100644
index 000000000..7d9d2e5d6
--- /dev/null
+++ b/plugins/Sitemap/noticesitemap.php
@@ -0,0 +1,137 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Show list of user pages
+ *
+ * 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 Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * sitemap for users
+ *
+ * @category Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class NoticesitemapAction extends SitemapAction
+{
+ var $notices = null;
+ var $j = 0;
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+
+ $y = $this->trimmed('year');
+
+ $m = $this->trimmed('month');
+ $d = $this->trimmed('day');
+
+ $i = $this->trimmed('index');
+
+ $y += 0;
+ $m += 0;
+ $d += 0;
+ $i += 0;
+
+ $this->notices = $this->getNotices($y, $m, $d, $i);
+ $this->j = 0;
+
+ return true;
+ }
+
+ function nextUrl()
+ {
+ if ($this->j < count($this->notices)) {
+ $n = $this->notices[$this->j];
+ $this->j++;
+ return array(common_local_url('shownotice', array('notice' => $n[0])),
+ common_date_w3dtf($n[1]),
+ 'never',
+ null);
+ } else {
+ return null;
+ }
+ }
+
+ function getNotices($y, $m, $d, $i)
+ {
+ $n = Notice::cacheGet("sitemap:notice:$y:$m:$d:$i");
+
+ if ($n === false) {
+
+ $notice = new Notice();
+
+ $begindt = sprintf('%04d-%02d-%02d 00:00:00', $y, $m, $d);
+
+ // XXX: estimates 1d == 24h, which screws up days
+ // with leap seconds (1d == 24h + 1s). Thankfully they're
+ // few and far between.
+
+ $theend = strtotime($begindt) + (24 * 60 * 60);
+ $enddt = common_sql_date($theend);
+
+ $notice->selectAdd();
+ $notice->selectAdd('id, created');
+
+ $notice->whereAdd("created >= '$begindt'");
+ $notice->whereAdd("created < '$enddt'");
+
+ $notice->whereAdd('is_local = ' . Notice::LOCAL_PUBLIC);
+
+ $notice->orderBy('created');
+
+ $offset = ($i-1) * SitemapPlugin::NOTICES_PER_MAP;
+ $limit = SitemapPlugin::NOTICES_PER_MAP;
+
+ $notice->limit($offset, $limit);
+
+ $notice->find();
+
+ $n = array();
+
+ while ($notice->fetch()) {
+ $n[] = array($notice->id, $notice->created);
+ }
+
+ $c = Cache::instance();
+
+ if (!empty($c)) {
+ $c->set(Cache::key("sitemap:notice:$y:$m:$d:$i"),
+ $n,
+ Cache::COMPRESSED,
+ ((time() > $theend) ? (time() + 90 * 24 * 60 * 60) : (time() + 5 * 60)));
+ }
+ }
+
+ return $n;
+ }
+}
diff --git a/plugins/Sitemap/scripts/updatecounts.php b/plugins/Sitemap/scripts/updatecounts.php
new file mode 100644
index 000000000..91bc0ac4e
--- /dev/null
+++ b/plugins/Sitemap/scripts/updatecounts.php
@@ -0,0 +1,36 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/../../..'));
+
+$helptext = <<<END_OF_UPDATECOUNTS_HELP
+updatecounts.php [options]
+Update the notice and user counts cached in the database.
+
+END_OF_UPDATECOUNTS_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+// Will fill the cache
+
+$userCounts = Sitemap_user_count::getAll();
+$noticeCounts = Sitemap_notice_count::getAll();
+
+echo "Done.\n";
diff --git a/plugins/Sitemap/sitemapaction.php b/plugins/Sitemap/sitemapaction.php
new file mode 100644
index 000000000..45edfccc5
--- /dev/null
+++ b/plugins/Sitemap/sitemapaction.php
@@ -0,0 +1,95 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Superclass for sitemap-generating actions
+ *
+ * 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 Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * superclass for sitemap actions
+ *
+ * @category Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class SitemapAction extends Action
+{
+ /**
+ * handle the action
+ *
+ * @param array $args unused.
+ *
+ * @return void
+ */
+
+ function handle($args)
+ {
+ header('Content-Type: text/xml; charset=UTF-8');
+ $this->startXML();
+
+ $this->elementStart('urlset', array('xmlns' => 'http://www.sitemaps.org/schemas/sitemap/0.9'));
+
+ while (list($url, $lm, $cf, $p) = $this->nextUrl()) {
+ $this->showUrl($url, $lm, $cf, $p);
+ }
+
+ $this->elementEnd('urlset');
+
+ $this->endXML();
+ }
+
+ function showUrl($url, $lastMod=null, $changeFreq=null, $priority=null)
+ {
+ $this->elementStart('url');
+ $this->element('loc', null, $url);
+ if (!is_null($lastMod)) {
+ $this->element('lastmod', null, $lastMod);
+ }
+ if (!is_null($changeFreq)) {
+ $this->element('changefreq', null, $changeFreq);
+ }
+ if (!is_null($priority)) {
+ $this->element('priority', null, $priority);
+ }
+ $this->elementEnd('url');
+ }
+
+ function nextUrl()
+ {
+ return null;
+ }
+
+ function isReadOnly()
+ {
+ return true;
+ }
+}
diff --git a/plugins/Sitemap/sitemapadminpanel.php b/plugins/Sitemap/sitemapadminpanel.php
new file mode 100644
index 000000000..3c295b08e
--- /dev/null
+++ b/plugins/Sitemap/sitemapadminpanel.php
@@ -0,0 +1,205 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Sitemap administration panel
+ *
+ * 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 Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * Administer sitemap settings
+ *
+ * @category Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class SitemapadminpanelAction extends AdminPanelAction
+{
+ /**
+ * Returns the page title
+ *
+ * @return string page title
+ */
+
+ function title()
+ {
+ return _('Sitemap');
+ }
+
+ /**
+ * Instructions for using this form.
+ *
+ * @return string instructions
+ */
+
+ function getInstructions()
+ {
+ return _('Sitemap settings for this StatusNet site');
+ }
+
+ /**
+ * Show the site admin panel form
+ *
+ * @return void
+ */
+
+ function showForm()
+ {
+ $form = new SitemapAdminPanelForm($this);
+ $form->show();
+ return;
+ }
+
+ /**
+ * Save settings from the form
+ *
+ * @return void
+ */
+
+ function saveSettings()
+ {
+ static $settings = array('sitemap' => array('googlekey', 'yahookey', 'bingkey'));
+
+ $values = array();
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ $values[$section][$setting] = $this->trimmed($setting);
+ }
+ }
+
+ // This throws an exception on validation errors
+
+ $this->validate($values);
+
+ // assert(all values are valid);
+
+ $config = new Config();
+
+ $config->query('BEGIN');
+
+ foreach ($settings as $section => $parts) {
+ foreach ($parts as $setting) {
+ Config::save($section, $setting, $values[$section][$setting]);
+ }
+ }
+
+ $config->query('COMMIT');
+
+ return;
+ }
+
+ function validate(&$values)
+ {
+ }
+}
+
+/**
+ * Form for the sitemap admin panel
+ */
+
+class SitemapAdminPanelForm extends AdminForm
+{
+ /**
+ * ID of the form
+ *
+ * @return int ID of the form
+ */
+
+ function id()
+ {
+ return 'form_sitemap_admin_panel';
+ }
+
+ /**
+ * class of the form
+ *
+ * @return string class of the form
+ */
+
+ function formClass()
+ {
+ return 'form_sitemap';
+ }
+
+ /**
+ * Action of the form
+ *
+ * @return string URL of the action
+ */
+
+ function action()
+ {
+ return common_local_url('sitemapadminpanel');
+ }
+
+ /**
+ * Data elements of the form
+ *
+ * @return void
+ */
+
+ function formData()
+ {
+ $this->out->elementStart('fieldset', array('id' => 'sitemap_admin'));
+ $this->out->elementStart('ul', 'form_data');
+ $this->li();
+ $this->input('googlekey',
+ _('Google key'),
+ _('Google Webmaster Tools verification key'),
+ 'sitemap');
+ $this->unli();
+ $this->li();
+ $this->input('yahookey',
+ _('Yahoo key'),
+ _('Yahoo! Site Explorer verification key'),
+ 'sitemap');
+ $this->unli();
+ $this->li();
+ $this->input('bingkey',
+ _('Bing key'),
+ _('Bing Webmaster Tools verification key'),
+ 'sitemap');
+ $this->unli();
+ $this->out->elementEnd('ul');
+ }
+
+ /**
+ * Action elements
+ *
+ * @return void
+ */
+
+ function formActions()
+ {
+ $this->out->submit('submit', _('Save'), 'submit', null, _('Save sitemap settings'));
+ }
+}
diff --git a/plugins/Sitemap/sitemapindex.php b/plugins/Sitemap/sitemapindex.php
new file mode 100644
index 000000000..169e3031c
--- /dev/null
+++ b/plugins/Sitemap/sitemapindex.php
@@ -0,0 +1,128 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Generate sitemap index
+ *
+ * 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 Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * Show the sitemap index
+ *
+ * @category Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class SitemapindexAction extends Action
+{
+ /**
+ * handle the action
+ *
+ * @param array $args unused.
+ *
+ * @return void
+ */
+
+ function handle($args)
+ {
+ header('Content-Type: text/xml; charset=UTF-8');
+ $this->startXML();
+
+ $this->elementStart('sitemapindex', array('xmlns' => 'http://www.sitemaps.org/schemas/sitemap/0.9'));
+
+ $this->showNoticeSitemaps();
+ $this->showUserSitemaps();
+
+ $this->elementEnd('sitemapindex');
+
+ $this->endXML();
+ }
+
+ function showUserSitemaps()
+ {
+ $userCounts = Sitemap_user_count::getAll();
+
+ foreach ($userCounts as $dt => $cnt) {
+ $cnt = $cnt+0;
+
+ if ($cnt == 0) {
+ continue;
+ }
+
+ $n = (int)$cnt / (int)SitemapPlugin::USERS_PER_MAP;
+ if (($cnt % SitemapPlugin::USERS_PER_MAP) != 0) {
+ $n++;
+ }
+ for ($i = 1; $i <= $n; $i++) {
+ $this->showSitemap('user', $dt, $i);
+ }
+ }
+ }
+
+ function showNoticeSitemaps()
+ {
+ $noticeCounts = Sitemap_notice_count::getAll();
+
+ foreach ($noticeCounts as $dt => $cnt) {
+ if ($cnt == 0) {
+ continue;
+ }
+ $n = $cnt / SitemapPlugin::NOTICES_PER_MAP;
+ if ($cnt % SitemapPlugin::NOTICES_PER_MAP) {
+ $n++;
+ }
+ for ($i = 1; $i <= $n; $i++) {
+ $this->showSitemap('notice', $dt, $i);
+ }
+ }
+ }
+
+ function showSitemap($prefix, $dt, $i)
+ {
+ list($y, $m, $d) = explode('-', $dt);
+
+ $this->elementStart('sitemap');
+ $this->element('loc', null, common_local_url($prefix.'sitemap',
+ array('year' => $y,
+ 'month' => $m,
+ 'day' => $d,
+ 'index' => $i)));
+
+ $begdate = strtotime("$y-$m-$d 00:00:00");
+ $enddate = $begdate + (24 * 60 * 60);
+
+ if ($enddate < time()) {
+ $this->element('lastmod', null, date(DATE_W3C, $enddate));
+ }
+
+ $this->elementEnd('sitemap');
+ }
+}
diff --git a/plugins/Sitemap/usersitemap.php b/plugins/Sitemap/usersitemap.php
new file mode 100644
index 000000000..de1200715
--- /dev/null
+++ b/plugins/Sitemap/usersitemap.php
@@ -0,0 +1,128 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Show list of user pages
+ *
+ * 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 Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@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);
+}
+
+/**
+ * sitemap for users
+ *
+ * @category Sitemap
+ * @package StatusNet
+ * @author Evan Prodromou <evan@status.net>
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ */
+
+class UsersitemapAction extends SitemapAction
+{
+ var $users = null;
+ var $j = 0;
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+
+ $y = $this->trimmed('year');
+
+ $m = $this->trimmed('month');
+ $d = $this->trimmed('day');
+
+ $i = $this->trimmed('index');
+
+ $y += 0;
+ $m += 0;
+ $d += 0;
+ $i += 0;
+
+ $this->users = $this->getUsers($y, $m, $d, $i);
+ $this->j = 0;
+ return true;
+ }
+
+ function nextUrl()
+ {
+ if ($this->j < count($this->users)) {
+ $nickname = $this->users[$this->j];
+ $this->j++;
+ return array(common_profile_url($nickname), null, null, '1.0');
+ } else {
+ return null;
+ }
+ }
+
+ function getUsers($y, $m, $d, $i)
+ {
+ $u = User::cacheGet("sitemap:user:$y:$m:$d:$i");
+
+ if ($u === false) {
+
+ $user = new User();
+
+ $begindt = sprintf('%04d-%02d-%02d 00:00:00', $y, $m, $d);
+
+ // XXX: estimates 1d == 24h, which screws up days
+ // with leap seconds (1d == 24h + 1s). Thankfully they're
+ // few and far between.
+
+ $theend = strtotime($begindt) + (24 * 60 * 60);
+ $enddt = common_sql_date($theend);
+
+ $user->selectAdd();
+ $user->selectAdd('nickname');
+ $user->whereAdd("created >= '$begindt'");
+ $user->whereAdd("created < '$enddt'");
+
+ $user->orderBy('created');
+
+ $offset = ($i-1) * SitemapPlugin::USERS_PER_MAP;
+ $limit = SitemapPlugin::USERS_PER_MAP;
+
+ $user->limit($offset, $limit);
+
+ $user->find();
+
+ while ($user->fetch()) {
+ $u[] = $user->nickname;
+ }
+
+ $c = Cache::instance();
+
+ if (!empty($c)) {
+ $c->set(Cache::key("sitemap:user:$y:$m:$d:$i"),
+ $u,
+ Cache::COMPRESSED,
+ ((time() > $theend) ? (time() + 90 * 24 * 60 * 60) : (time() + 5 * 60)));
+ }
+ }
+
+ return $u;
+ }
+}
diff --git a/plugins/SpotifyPlugin.php b/plugins/SpotifyPlugin.php
new file mode 100644
index 000000000..e7a5a5382
--- /dev/null
+++ b/plugins/SpotifyPlugin.php
@@ -0,0 +1,113 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * Plugin to create pretty Spotify URLs
+ *
+ * PHP version 5
+ *
+ * LICENCE: This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Nick Holliday <n.g.holliday@gmail.com>
+ * @copyright Nick Holliday
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ *
+ * @see Event
+ */
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+define('SPOTIFYPLUGIN_VERSION', '0.1');
+
+/**
+ * Plugin to create pretty Spotify URLs
+ *
+ * The Spotify API is called before the notice is saved to gather artist and track information.
+ *
+ * @category Plugin
+ * @package StatusNet
+ * @author Nick Holliday <n.g.holliday@gmail.com>
+ * @copyright Nick Holliday
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
+ * @link http://status.net/
+ *
+ * @see Event
+ */
+
+class SpotifyPlugin extends Plugin
+{
+
+ function __construct()
+ {
+ parent::__construct();
+ }
+
+ function onStartNoticeSave($notice)
+ {
+ $notice->rendered = preg_replace_callback('/spotify:[a-z]{5,6}:[a-z0-9]{22}/i',
+ "renderSpotifyURILink",
+ $notice->rendered);
+
+ $notice->rendered = preg_replace_callback('/<a href="http:\/\/open.spotify.com\/[a-z]{5,6}\/[a-z0-9]{22}" title="http:\/\/open.spotify.com\/[a-z]{5,6}\/[a-z0-9]{22}" rel="external">http:\/\/open.spotify.com\/[a-z]{5,6}\/[a-z0-9]{22}<\/a>/i',
+ "renderSpotifyHTTPLink",
+ $notice->rendered);
+
+ return true;
+ }
+
+ function userAgent()
+ {
+ return 'SpotifyPlugin/'.SPOTIFYPLUGIN_VERSION .
+ ' StatusNet/' . STATUSNET_VERSION;
+ }
+}
+
+function doSpotifyLookup($uri, $isArtist)
+{
+ $request = HTTPClient::start();
+ $response = $request->get('http://ws.spotify.com/lookup/1/?uri=' . $uri);
+ if ($response->isOk()) {
+ $xml = simplexml_load_string($response->getBody());
+
+ if($isArtist)
+ return $xml->name;
+ else
+ return $xml->artist->name . ' - ' . $xml->name;
+ }
+}
+
+function renderSpotifyURILink($match)
+{
+ $isArtist = false;
+ if(preg_match('/artist/', $match[0]) > 0) $isArtist = true;
+
+ $name = doSpotifyLookup($match[0], $isArtist);
+ return "<a href=\"{$match[0]}\">" . $name . "</a>";
+}
+
+function renderSpotifyHTTPLink($match)
+{
+ $match[0] = preg_replace('/<a href="http:\/\/open.spotify.com\/[a-z]{5,6}\/[a-z0-9]{22}" title="http:\/\/open.spotify.com\/[a-z]{5,6}\/[a-z0-9]{22}" rel="external">http:\/\/open.spotify.com\//i', 'spotify:', $match[0]);
+ $match[0] = preg_replace('/<\/a>/', '', $match[0]);
+ $match[0] = preg_replace('/\//', ':', $match[0]);
+
+ $isArtist = false;
+ if(preg_match('/artist/', $match[0]) > 0) $isArtist = true;
+
+ $name = doSpotifyLookup($match[0], $isArtist);
+ return "<a href=\"{$match[0]}\">" . $name . "</a>";
+}
diff --git a/plugins/SubMirror/SubMirrorPlugin.php b/plugins/SubMirror/SubMirrorPlugin.php
new file mode 100644
index 000000000..80c6c5a88
--- /dev/null
+++ b/plugins/SubMirror/SubMirrorPlugin.php
@@ -0,0 +1,168 @@
+<?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 SubMirrorPlugin
+ * @maintainer Brion Vibber <brion@status.net>
+ */
+
+if (!defined('STATUSNET') && !defined('LACONICA')) { exit(1); }
+
+
+class SubMirrorPlugin extends Plugin
+{
+ /**
+ * Hook for RouterInitialized event.
+ *
+ * @param Net_URL_Mapper $m path-to-action mapper
+ * @return boolean hook return
+ */
+ function onRouterInitialized($m)
+ {
+ $m->connect('settings/mirror',
+ array('action' => 'mirrorsettings'));
+ $m->connect('settings/mirror/add',
+ array('action' => 'addmirror'));
+ $m->connect('settings/mirror/edit',
+ array('action' => 'editmirror'));
+ 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/lib/$lower.php",
+ "$base/classes/$cls.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 handle($notice)
+ {
+ // Is anybody mirroring?
+ $mirror = new SubMirror();
+ $mirror->subscribed = $notice->profile_id;
+ if ($mirror->find()) {
+ while ($mirror->fetch()) {
+ $mirror->repeat($notice);
+ }
+ }
+ }
+
+ function onPluginVersion(&$versions)
+ {
+ $versions[] = array('name' => 'SubMirror',
+ 'version' => STATUSNET_VERSION,
+ 'author' => 'Brion Vibber',
+ 'homepage' => 'http://status.net/wiki/Plugin:SubMirror',
+ 'rawdescription' =>
+ _m('Pull feeds into your timeline!'));
+
+ return true;
+ }
+
+ /**
+ * Menu item for settings
+ *
+ * @param Action &$action Action being executed
+ *
+ * @return boolean hook return
+ */
+
+ function onEndAccountSettingsNav(&$action)
+ {
+ $action_name = $action->trimmed('action');
+
+ $action->menuItem(common_local_url('mirrorsettings'),
+ // TRANS: SubMirror plugin menu item on user settings page.
+ _m('MENU', 'Mirroring'),
+ // TRANS: SubMirror plugin tooltip for user settings menu item.
+ _m('Configure mirroring of posts from other feeds'),
+ $action_name === 'mirrorsettings');
+
+ return true;
+ }
+
+ function onCheckSchema()
+ {
+ $schema = Schema::get();
+ $schema->ensureTable('submirror', SubMirror::schemaDef());
+
+ // @hack until key definition support is merged
+ SubMirror::fixIndexes($schema);
+ return true;
+ }
+
+ /**
+ * Set up queue handlers for outgoing hub pushes
+ * @param QueueManager $qm
+ * @return boolean hook return
+ */
+ function onEndInitializeQueueManager(QueueManager $qm)
+ {
+ // After each notice save, check if there's any repeat mirrors.
+ $qm->connect('mirror', 'MirrorQueueHandler');
+ return true;
+ }
+
+ function onStartEnqueueNotice($notice, &$transports)
+ {
+ $transports[] = 'mirror';
+ }
+
+ /**
+ * Let the OStatus subscription garbage collection know if we're
+ * making use of a remote feed, so it doesn't get dropped out
+ * from under us.
+ *
+ * @param Ostatus_profile $oprofile
+ * @param int $count in/out
+ * @return mixed hook return value
+ */
+ function onOstatus_profileSubscriberCount($oprofile, &$count)
+ {
+ if ($oprofile->profile_id) {
+ $mirror = new SubMirror();
+ $mirror->subscribed = $oprofile->profile_id;
+ if ($mirror->find()) {
+ while ($mirror->fetch()) {
+ $count++;
+ }
+ }
+ }
+ return true;
+ }
+}
diff --git a/plugins/SubMirror/actions/addmirror.php b/plugins/SubMirror/actions/addmirror.php
new file mode 100644
index 000000000..5acdf1dfe
--- /dev/null
+++ b/plugins/SubMirror/actions/addmirror.php
@@ -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/>.
+ *
+ * PHP version 5
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+/**
+ * Takes parameters:
+ *
+ * - feed: a profile ID
+ * - token: session token to prevent CSRF attacks
+ * - ajax: boolean; whether to return Ajax or full-browser results
+ *
+ * Only works if the current user is logged in.
+ *
+ * @category Action
+ * @package StatusNet
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+class AddMirrorAction extends BaseMirrorAction
+{
+ var $feedurl;
+
+ /**
+ * Check pre-requisites and instantiate attributes
+ *
+ * @param Array $args array of arguments (URL, GET, POST)
+ *
+ * @return boolean success flag
+ */
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+ $this->feedurl = $this->validateFeedUrl($this->trimmed('feedurl'));
+ $this->profile = $this->profileForFeed($this->feedurl);
+ return true;
+ }
+
+ function saveMirror()
+ {
+ if ($this->oprofile->subscribe()) {
+ SubMirror::saveMirror($this->user, $this->profile);
+ } else {
+ $this->serverError(_m("Could not subscribe to feed."));
+ }
+ }
+}
diff --git a/plugins/SubMirror/actions/basemirror.php b/plugins/SubMirror/actions/basemirror.php
new file mode 100644
index 000000000..5be0699f0
--- /dev/null
+++ b/plugins/SubMirror/actions/basemirror.php
@@ -0,0 +1,169 @@
+<?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/>.
+ *
+ * PHP version 5
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+/**
+ * Takes parameters:
+ *
+ * - feed: a profile ID
+ * - token: session token to prevent CSRF attacks
+ * - ajax: boolean; whether to return Ajax or full-browser results
+ *
+ * Only works if the current user is logged in.
+ *
+ * @category Action
+ * @package StatusNet
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+abstract class BaseMirrorAction extends Action
+{
+ var $user;
+ var $profile;
+
+ /**
+ * Check pre-requisites and instantiate attributes
+ *
+ * @param Array $args array of arguments (URL, GET, POST)
+ *
+ * @return boolean success flag
+ */
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+ return $this->sharedBoilerplate();
+ }
+
+ protected function validateFeedUrl($url)
+ {
+ if (common_valid_http_url($url)) {
+ return $url;
+ } else {
+ $this->clientError(_m("Invalid feed URL."));
+ }
+ }
+
+ protected function validateProfile($id)
+ {
+ $id = intval($id);
+ $profile = Profile::staticGet('id', $id);
+ if ($profile && $profile->id != $this->user->id) {
+ return $profile;
+ }
+ // TRANS: Error message returned to user when setting up feed mirroring, but we were unable to resolve the given URL to a working feed.
+ $this->clientError(_m("Invalid profile for mirroring."));
+ }
+
+ /**
+ *
+ * @param string $url
+ * @return Profile
+ */
+ protected function profileForFeed($url)
+ {
+ $oprofile = Ostatus_profile::ensureProfileURL($url);
+ if ($oprofile->isGroup()) {
+ $this->clientError(_m("Can't mirror a StatusNet group at this time."));
+ }
+ $this->oprofile = $oprofile; // @fixme ugly side effect :D
+ return $oprofile->localProfile();
+ }
+
+ /**
+ * @fixme none of this belongs in end classes
+ * this stuff belongs in shared code!
+ */
+ function sharedBoilerplate()
+ {
+ // Only allow POST requests
+
+ if ($_SERVER['REQUEST_METHOD'] != 'POST') {
+ $this->clientError(_('This action only accepts POST requests.'));
+ return false;
+ }
+
+ // CSRF protection
+
+ $token = $this->trimmed('token');
+
+ if (!$token || $token != common_session_token()) {
+ $this->clientError(_('There was a problem with your session token.'.
+ ' Try again, please.'));
+ return false;
+ }
+
+ // Only for logged-in users
+
+ $this->user = common_current_user();
+
+ if (empty($this->user)) {
+ $this->clientError(_('Not logged in.'));
+ return false;
+ }
+ return true;
+ }
+
+ /**
+ * Handle request
+ *
+ * Does the subscription and returns results.
+ *
+ * @param Array $args unused.
+ *
+ * @return void
+ */
+
+ function handle($args)
+ {
+ // Throws exception on error
+ $this->saveMirror();
+
+ if ($this->boolean('ajax')) {
+ $this->startHTML('text/xml;charset=utf-8');
+ $this->elementStart('head');
+ $this->element('title', null, _('Subscribed'));
+ $this->elementEnd('head');
+ $this->elementStart('body');
+ $unsubscribe = new EditMirrorForm($this, $this->profile);
+ $unsubscribe->show();
+ $this->elementEnd('body');
+ $this->elementEnd('html');
+ } else {
+ $url = common_local_url('mirrorsettings');
+ common_redirect($url, 303);
+ }
+ }
+
+ abstract function saveMirror();
+}
diff --git a/plugins/SubMirror/actions/editmirror.php b/plugins/SubMirror/actions/editmirror.php
new file mode 100644
index 000000000..c7fdab0d6
--- /dev/null
+++ b/plugins/SubMirror/actions/editmirror.php
@@ -0,0 +1,112 @@
+<?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/>.
+ *
+ * PHP version 5
+ *
+ * @category Action
+ * @package StatusNet
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET')) {
+ exit(1);
+}
+
+/**
+ * Takes parameters:
+ *
+ * - feed: a profile ID
+ * - token: session token to prevent CSRF attacks
+ * - ajax: boolean; whether to return Ajax or full-browser results
+ *
+ * Only works if the current user is logged in.
+ *
+ * @category Action
+ * @package StatusNet
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPLv3
+ * @link http://status.net/
+ */
+
+class EditMirrorAction extends BaseMirrorAction
+{
+
+ /**
+ * Check pre-requisites and instantiate attributes
+ *
+ * @param Array $args array of arguments (URL, GET, POST)
+ *
+ * @return boolean success flag
+ */
+
+ function prepare($args)
+ {
+ parent::prepare($args);
+
+ $this->profile = $this->validateProfile($this->trimmed('profile'));
+
+ $this->mirror = SubMirror::pkeyGet(array('subscriber' => $this->user->id,
+ 'subscribed' => $this->profile->id));
+
+ if (!$this->mirror) {
+ $this->clientError(_m("Requested invalid profile to edit."));
+ }
+
+ $this->style = $this->validateStyle($this->trimmed('style'));
+
+ // DO NOT change to $this->boolean(), it will be wrong.
+ // We're checking for the presence of the setting, not its value.
+ $this->delete = (bool)$this->arg('delete');
+
+ return true;
+ }
+
+ protected function validateStyle($style)
+ {
+ $allowed = array('repeat', 'copy');
+ if (in_array($style, $allowed)) {
+ return $style;
+ } else {
+ $this->clientError(_m("Bad form data."));
+ }
+ }
+
+ function saveMirror()
+ {
+ $mirror = SubMirror::getMirror($this->user, $this->profile);
+ if (!$mirror) {
+ $this->clientError(_m('Requested edit of missing mirror'));
+ }
+
+ if ($this->delete) {
+ $mirror->delete();
+ $oprofile = Ostatus_profile::staticGet('profile_id', $this->profile->id);
+ if ($oprofile) {
+ $oprofile->garbageCollect();
+ }
+ } else if ($this->style != $mirror->style) {
+ $orig = clone($mirror);
+ $mirror->style = $this->style;
+ $mirror->modified = common_sql_now();
+ $mirror->update($orig);
+ }
+ }
+}
diff --git a/plugins/SubMirror/actions/mirrorsettings.php b/plugins/SubMirror/actions/mirrorsettings.php
new file mode 100644
index 000000000..5463a8dc0
--- /dev/null
+++ b/plugins/SubMirror/actions/mirrorsettings.php
@@ -0,0 +1,106 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ *
+ * 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 Plugins
+ * @package StatusNet
+ * @author Brion Vibber <brion@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') && !defined('LACONICA')) {
+ exit(1);
+}
+
+class MirrorSettingsAction extends AccountSettingsAction
+{
+ /**
+ * Title of the page
+ *
+ * @return string Page title
+ */
+
+ function title()
+ {
+ return _m('Feed mirror settings');
+ }
+
+ /**
+ * Instructions for use
+ *
+ * @return string Instructions for use
+ */
+
+ function getInstructions()
+ {
+ return _m('You can mirror updates from many RSS and Atom feeds ' .
+ 'into your StatusNet timeline!');
+ }
+
+ /**
+ * Show the form for OpenID management
+ *
+ * We have one form with a few different submit buttons to do different things.
+ *
+ * @return void
+ */
+
+ function showContent()
+ {
+ $user = common_current_user();
+
+ $this->showAddFeedForm();
+
+ $mirror = new SubMirror();
+ $mirror->subscriber = $user->id;
+ if ($mirror->find()) {
+ while ($mirror->fetch()) {
+ $this->showFeedForm($mirror);
+ }
+ }
+ }
+
+ function showFeedForm($mirror)
+ {
+ $profile = Profile::staticGet('id', $mirror->subscribed);
+ if ($profile) {
+ $form = new EditMirrorForm($this, $profile);
+ $form->show();
+ }
+ }
+
+ function showAddFeedForm()
+ {
+ $form = new AddMirrorForm($this);
+ $form->show();
+ }
+
+ /**
+ * Handle a POST request
+ *
+ * Muxes to different sub-functions based on which button was pushed
+ *
+ * @return void
+ */
+
+ function handlePost()
+ {
+ }
+}
diff --git a/plugins/SubMirror/classes/SubMirror.php b/plugins/SubMirror/classes/SubMirror.php
new file mode 100644
index 000000000..bd8fc80a5
--- /dev/null
+++ b/plugins/SubMirror/classes/SubMirror.php
@@ -0,0 +1,229 @@
+<?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 SubMirrorPlugin
+ * @maintainer Brion Vibber <brion@status.net>
+ */
+
+class SubMirror extends Memcached_DataObject
+{
+ public $__table = 'submirror';
+
+ public $subscriber;
+ public $subscribed;
+
+ public $style;
+
+ public $created;
+ public $modified;
+
+ 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('subscriber' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL,
+ 'subscribed' => DB_DATAOBJECT_INT + DB_DATAOBJECT_NOTNULL,
+
+ 'style' => DB_DATAOBJECT_STR,
+
+ 'created' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL,
+ 'modified' => DB_DATAOBJECT_STR + DB_DATAOBJECT_DATE + DB_DATAOBJECT_TIME + DB_DATAOBJECT_NOTNULL);
+ }
+
+ static function schemaDef()
+ {
+ // @fixme need a reverse key on (subscribed, subscriber) as well
+ return array(new ColumnDef('subscriber', 'integer',
+ null, false, 'PRI'),
+ new ColumnDef('subscribed', 'integer',
+ null, false, 'PRI'),
+
+ new ColumnDef('style', 'varchar',
+ 16, true),
+
+ new ColumnDef('created', 'datetime',
+ null, false),
+ new ColumnDef('modified', 'datetime',
+ null, false));
+ }
+
+ /**
+ * Temporary hack to set up the compound index, since we can't do
+ * it yet through regular Schema interface. (Coming for 1.0...)
+ *
+ * @param Schema $schema
+ * @return void
+ */
+ static function fixIndexes($schema)
+ {
+ try {
+ $schema->createIndex('submirror', array('subscribed', 'subscriber'));
+ } catch (Exception $e) {
+ common_log(LOG_ERR, __METHOD__ . ': ' . $e->getMessage());
+ }
+ }
+
+ /**
+ * 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()
+ {
+ // @fixme keys
+ // need a sane key for reverse lookup too
+ return array('subscriber' => 'K', 'subscribed' => 'K');
+ }
+
+ function sequenceKey()
+ {
+ return array(false, false, false);
+ }
+
+ /**
+ * @param Profile $subscribed
+ * @param Profile $subscribed
+ * @return SubMirror
+ * @throws ServerException
+ */
+ public static function saveMirror($subscriber, $subscribed, $style='repeat')
+ {
+ // @fixme make sure they're subscribed!
+ $mirror = new SubMirror();
+
+ $mirror->subscriber = $subscriber->id;
+ $mirror->subscribed = $subscribed->id;
+ $mirror->style = $style;
+
+ $mirror->created = common_sql_now();
+ $mirror->modified = common_sql_now();
+ $mirror->insert();
+
+ return $mirror;
+ }
+
+ /**
+ * @param Notice $notice
+ * @return mixed Notice on successful mirroring, boolean if not
+ */
+ public function mirrorNotice($notice)
+ {
+ $profile = Profile::staticGet('id', $this->subscriber);
+ if (!$profile) {
+ common_log(LOG_ERROR, "SubMirror plugin skipping auto-repeat of notice $notice->id for missing user $profile->id");
+ return false;
+ }
+
+ if ($this->style == 'copy') {
+ return $this->copyNotice($profile, $notice);
+ } else { // default to repeat mode
+ return $this->repeatNotice($profile, $notice);
+ }
+ }
+
+ /**
+ * Mirror a notice using StatusNet's repeat functionality.
+ * This retains attribution within the site, and other nice things,
+ * but currently ends up looking like 'RT @foobar bla bla' when
+ * bridged out over OStatus or TwitterBridge.
+ *
+ * @param Notice $notice
+ * @return mixed Notice on successful repeat, true if already repeated, false on failure
+ */
+ protected function repeatNotice($profile, $notice)
+ {
+ if($profile->hasRepeated($notice->id)) {
+ common_log(LOG_INFO, "SubMirror plugin skipping auto-repeat of notice $notice->id for user $profile->id; already repeated.");
+ return true;
+ } else {
+ common_log(LOG_INFO, "SubMirror plugin auto-repeating notice $notice->id for $profile->id");
+ return $notice->repeat($profile->id, 'mirror');
+ }
+ }
+
+ /**
+ * Mirror a notice by emitting a new notice with the same contents.
+ * Kind of dirty, but if pulling an external data feed into an account
+ * that may be what you want.
+ *
+ * @param Notice $notice
+ * @return mixed Notice on successful repeat, true if already repeated, false on failure
+ */
+ protected function copyNotice($profile, $notice)
+ {
+ $options = array('is_local' => Notice::LOCAL_PUBLIC,
+ 'url' => $notice->bestUrl(), // pass through the foreign link...
+ 'rendered' => $notice->rendered);
+
+ $saved = Notice::saveNew($profile->id,
+ $notice->content,
+ 'feed',
+ $options);
+ return $saved;
+ }
+
+ public /*static*/ function pkeyGet($v)
+ {
+ return parent::pkeyGet(__CLASS__, $v);
+ }
+
+ /**
+ * Get the mirroring setting for a pair of profiles, if existing.
+ *
+ * @param Profile $subscriber
+ * @param Profile $subscribed
+ * @return mixed Profile or empty
+ */
+ public static function getMirror($subscriber, $subscribed)
+ {
+ return self::pkeyGet(array('subscriber' => $subscriber->id,
+ 'subscribed' => $subscribed->id));
+ }
+}
diff --git a/plugins/SubMirror/lib/addmirrorform.php b/plugins/SubMirror/lib/addmirrorform.php
new file mode 100644
index 000000000..0a798c9ea
--- /dev/null
+++ b/plugins/SubMirror/lib/addmirrorform.php
@@ -0,0 +1,141 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ * 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/>.
+ *
+ * @package StatusNet
+ * @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') && !defined('LACONICA')) {
+ exit(1);
+}
+
+class AddMirrorForm extends Form
+{
+
+ /**
+ * Name of the form
+ *
+ * Sub-classes should overload this with the name of their form.
+ *
+ * @return void
+ */
+
+ function formLegend()
+ {
+ }
+
+ /**
+ * Visible or invisible data elements
+ *
+ * Display the form fields that make up the data of the form.
+ * Sub-classes should overload this to show their data.
+ *
+ * @return void
+ */
+
+ function formData()
+ {
+ $this->out->elementStart('fieldset');
+
+ $this->out->elementStart('ul');
+
+ $this->li();
+ $this->doInput('addmirror-feedurl',
+ 'feedurl',
+ _m('Web page or feed URL:'),
+ $this->out->trimmed('feedurl'));
+ $this->unli();
+
+ $this->li();
+ $this->out->submit('addmirror-save', _m('Add feed'));
+ $this->unli();
+ $this->out->elementEnd('ul');
+ $this->out->elementEnd('fieldset');
+ }
+
+ private function doInput($id, $name, $label, $value=null, $instructions=null)
+ {
+ $this->out->element('label', array('for' => $id), $label);
+ $attrs = array('name' => $name,
+ 'type' => 'text',
+ 'id' => $id,
+ 'style' => 'width: 80%');
+ if ($value) {
+ $attrs['value'] = $value;
+ }
+ $this->out->element('input', $attrs);
+ if ($instructions) {
+ $this->out->element('p', 'form_guide', $instructions);
+ }
+ }
+
+ /**
+ * Buttons for form actions
+ *
+ * Submit and cancel buttons (or whatever)
+ * Sub-classes should overload this to show their own buttons.
+ *
+ * @return void
+ */
+
+ function formActions()
+ {
+ }
+
+ /**
+ * ID of the form
+ *
+ * Should be unique on the page. Sub-classes should overload this
+ * to show their own IDs.
+ *
+ * @return string ID of the form
+ */
+
+ function id()
+ {
+ return 'add-mirror-form';
+ }
+
+ /**
+ * Action of the form.
+ *
+ * URL to post to. Should be overloaded by subclasses to give
+ * somewhere to post to.
+ *
+ * @return string URL to post to
+ */
+
+ function action()
+ {
+ return common_local_url('addmirror');
+ }
+
+ /**
+ * Class of the form.
+ *
+ * @return string the form's class
+ */
+
+ function formClass()
+ {
+ return 'form_settings';
+ }
+
+}
diff --git a/plugins/SubMirror/lib/editmirrorform.php b/plugins/SubMirror/lib/editmirrorform.php
new file mode 100644
index 000000000..8236da389
--- /dev/null
+++ b/plugins/SubMirror/lib/editmirrorform.php
@@ -0,0 +1,189 @@
+<?php
+/**
+ * StatusNet, the distributed open-source microblogging tool
+ * 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/>.
+ *
+ * @package StatusNet
+ * @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') && !defined('LACONICA')) {
+ exit(1);
+}
+
+class EditMirrorForm extends Form
+{
+ function __construct($action, $profile)
+ {
+ parent::__construct($action);
+
+ $this->profile = clone($profile);
+ $this->user = common_current_user();
+ $this->mirror = SubMirror::pkeyGet(array('subscriber' => $this->user->id,
+ 'subscribed' => $this->profile->id));
+ }
+
+ /**
+ * Name of the form
+ *
+ * Sub-classes should overload this with the name of their form.
+ *
+ * @return void
+ */
+
+ function formLegend()
+ {
+ }
+
+ /**
+ * Visible or invisible data elements
+ *
+ * Display the form fields that make up the data of the form.
+ * Sub-classes should overload this to show their data.
+ *
+ * @return void
+ */
+
+ function formData()
+ {
+ $this->out->elementStart('fieldset');
+
+ $this->out->hidden('profile', $this->profile->id);
+
+ $this->out->elementStart('div', array('style' => 'float: left; width: 80px;'));
+ $img = $this->getAvatar($this->profile);
+ $feed = $this->getFeed($this->profile);
+ $this->out->elementStart('a', array('href' => $this->profile->profileurl));
+ $this->out->element('img', array('src' => $img, 'style' => 'float: left'));
+ $this->out->elementEnd('a');
+ $this->out->elementEnd('div');
+
+
+ $this->out->elementStart('div', array('style' => 'margin-left: 80px; margin-right: 20px'));
+ $this->out->elementStart('p');
+ $this->out->elementStart('div');
+ $this->out->element('a', array('href' => $this->profile->profileurl), $this->profile->getBestName());
+ $this->out->elementEnd('div');
+ $this->out->elementStart('div');
+ if ($feed) {
+ $this->out->text(_m('LABEL', 'Remote feed:') . ' ');
+ //$this->out->element('a', array('href' => $feed), $feed);
+ $this->out->element('input', array('value' => $feed, 'readonly' => 'readonly', 'style' => 'width: 100%'));
+ } else {
+ $this->out->text(_m('LABEL', 'Local user'));
+ }
+ $this->out->elementEnd('div');
+ $this->out->elementEnd('p');
+
+ $this->out->elementStart('fieldset', array('style' => 'margin-top: 20px'));
+ $this->out->element('legend', false, _m("Mirroring style"));
+
+ $styles = array('repeat' => _m("Repeat: reference the original user's post (sometimes shows as 'RT @blah')"),
+ 'copy' => _m("Repost the content under my account"));
+ foreach ($styles as $key => $label) {
+ $this->out->elementStart('div');
+ $attribs = array('type' => 'radio',
+ 'value' => $key,
+ 'name' => 'style',
+ 'id' => $this->id() . '-style');
+ if ($key == $this->mirror->style || ($key == 'repeat' && empty($this->mirror->style))) {
+ $attribs['checked'] = 'checked';
+ }
+ $this->out->element('input', $attribs);
+ $this->out->element('span', false, $label); // @fixme should be label, but the styles muck it up for now
+ $this->out->elementEnd('div');
+
+ }
+ $this->out->elementEnd('fieldset');
+
+
+ $this->out->elementStart('div');
+ $this->out->submit($this->id() . '-save', _m('Save'));
+ $this->out->element('input', array('type' => 'submit',
+ 'value' => _m('Stop mirroring'),
+ 'name' => 'delete',
+ 'class' => 'submit'));
+ $this->out->elementEnd('div');
+
+ $this->out->elementEnd('div');
+ $this->out->elementEnd('fieldset');
+ }
+
+ private function getAvatar($profile)
+ {
+ $avatar = $this->profile->getAvatar(48);
+ if ($avatar) {
+ return $avatar->displayUrl();
+ } else {
+ return Avatar::defaultImage(48);
+ }
+ }
+
+ private function getFeed($profile)
+ {
+ // Ok this is a bit of a hack. ;)
+ if (class_exists('Ostatus_profile')) {
+ $oprofile = Ostatus_profile::staticGet('profile_id', $profile->id);
+ if ($oprofile) {
+ return $oprofile->feeduri;
+ }
+ }
+ var_dump('wtf');
+ return false;
+ }
+
+ /**
+ * ID of the form
+ *
+ * Should be unique on the page. Sub-classes should overload this
+ * to show their own IDs.
+ *
+ * @return string ID of the form
+ */
+
+ function id()
+ {
+ return 'edit-mirror-form-' . $this->profile->id;
+ }
+
+ /**
+ * Action of the form.
+ *
+ * URL to post to. Should be overloaded by subclasses to give
+ * somewhere to post to.
+ *
+ * @return string URL to post to
+ */
+
+ function action()
+ {
+ return common_local_url('editmirror');
+ }
+
+ /**
+ * Class of the form.
+ *
+ * @return string the form's class
+ */
+
+ function formClass()
+ {
+ return 'form_settings';
+ }
+
+}
diff --git a/plugins/SubMirror/lib/mirrorqueuehandler.php b/plugins/SubMirror/lib/mirrorqueuehandler.php
new file mode 100644
index 000000000..92b36b5eb
--- /dev/null
+++ b/plugins/SubMirror/lib/mirrorqueuehandler.php
@@ -0,0 +1,45 @@
+<?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/>.
+ */
+
+/**
+ * Check for subscription mirroring options on each newly seen post!
+ *
+ * @package SubMirror
+ * @author Brion Vibber <brion@status.net>
+ */
+
+class MirrorQueueHandler extends QueueHandler
+{
+ function transport()
+ {
+ return 'mirror';
+ }
+
+ function handle($notice)
+ {
+ $mirror = new SubMirror();
+ $mirror->subscribed = $notice->profile_id;
+ if ($mirror->find()) {
+ while ($mirror->fetch()) {
+ $mirror->mirrorNotice($notice);
+ }
+ }
+ return true;
+ }
+}
diff --git a/plugins/TabFocus/TabFocusPlugin.php b/plugins/TabFocus/TabFocusPlugin.php
index bf89c478c..46e329d8a 100644
--- a/plugins/TabFocus/TabFocusPlugin.php
+++ b/plugins/TabFocus/TabFocusPlugin.php
@@ -23,7 +23,7 @@
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
* @author Paul Irish <paul.irish@isobar.net>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/TabFocus/locale/TabFocus.pot b/plugins/TabFocus/locale/TabFocus.pot
new file mode 100644
index 000000000..3b0e3c261
--- /dev/null
+++ b/plugins/TabFocus/locale/TabFocus.pot
@@ -0,0 +1,24 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: TabFocusPlugin.php:54
+msgid ""
+"TabFocus changes the notice form behavior so that, while in the text area, "
+"pressing the tab key focuses the \"Send\" button, matching the behavor of "
+"Twitter."
+msgstr ""
diff --git a/plugins/TightUrl/TightUrlPlugin.php b/plugins/TightUrl/TightUrlPlugin.php
index e2d494a7b..b8e5addb1 100644
--- a/plugins/TightUrl/TightUrlPlugin.php
+++ b/plugins/TightUrl/TightUrlPlugin.php
@@ -22,7 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
- * @copyright 2009 Craig Andrews http://candrews.integralblue.com
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/TightUrl/locale/TightUrl.pot b/plugins/TightUrl/locale/TightUrl.pot
new file mode 100644
index 000000000..10f59a1e8
--- /dev/null
+++ b/plugins/TightUrl/locale/TightUrl.pot
@@ -0,0 +1,22 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#: TightUrlPlugin.php:68
+#, php-format
+msgid "Uses <a href=\"http://%1$s/\">%1$s</a> URL-shortener service."
+msgstr ""
diff --git a/plugins/TwitterBridge/TwitterBridgePlugin.php b/plugins/TwitterBridge/TwitterBridgePlugin.php
index 1a0a69682..0505a328f 100644
--- a/plugins/TwitterBridge/TwitterBridgePlugin.php
+++ b/plugins/TwitterBridge/TwitterBridgePlugin.php
@@ -50,6 +50,7 @@ class TwitterBridgePlugin extends Plugin
{
const VERSION = STATUSNET_VERSION;
+ public $adminImportControl = false; // Should the 'import' checkbox be exposed in the admin panel?
/**
* Initializer for the plugin.
@@ -221,7 +222,7 @@ class TwitterBridgePlugin extends Plugin
*/
function onStartEnqueueNotice($notice, &$transports)
{
- if (self::hasKeys()) {
+ if (self::hasKeys() && $notice->isLocal()) {
// Avoid a possible loop
if ($notice->source != 'twitter') {
array_push($transports, 'twitter');
@@ -322,5 +323,17 @@ class TwitterBridgePlugin extends Plugin
return true;
}
+ /**
+ * Expose the adminImportControl setting to the administration panel code.
+ * This allows us to disable the import bridge enabling checkbox for administrators,
+ * since on a bulk farm site we can't yet automate the import daemon setup.
+ *
+ * @return boolean hook value;
+ */
+ function onTwitterBridgeAdminImportControl()
+ {
+ return (bool)$this->adminImportControl;
+ }
+
}
diff --git a/plugins/TwitterBridge/daemons/twitterstatusfetcher.php b/plugins/TwitterBridge/daemons/twitterstatusfetcher.php
index bff657eb6..7c624fdb3 100755
--- a/plugins/TwitterBridge/daemons/twitterstatusfetcher.php
+++ b/plugins/TwitterBridge/daemons/twitterstatusfetcher.php
@@ -44,10 +44,17 @@ require_once INSTALLDIR . '/plugins/TwitterBridge/twitterbasicauthclient.php';
require_once INSTALLDIR . '/plugins/TwitterBridge/twitteroauthclient.php';
/**
- * Fetcher for statuses from Twitter
+ * Fetch statuses from Twitter
*
- * Fetches statuses from Twitter and inserts them as notices in local
- * system.
+ * Fetches statuses from Twitter and inserts them as notices
+ *
+ * NOTE: an Avatar path MUST be set in config.php for this
+ * script to work, e.g.:
+ * $config['avatar']['path'] = $config['site']['path'] . '/avatar/';
+ *
+ * @todo @fixme @gar Fix the above. For some reason $_path is always empty when
+ * this script is run, so the default avatar path is always set wrong in
+ * default.php. Therefore it must be set explicitly in config.php. --Z
*
* @category Twitter
* @package StatusNet
@@ -57,9 +64,6 @@ require_once INSTALLDIR . '/plugins/TwitterBridge/twitteroauthclient.php';
* @link http://status.net/
*/
-// NOTE: an Avatar path MUST be set in config.php for this
-// script to work: e.g.: $config['avatar']['path'] = '/statusnet/avatar';
-
class TwitterStatusFetcher extends ParallelizingDaemon
{
/**
@@ -195,6 +199,8 @@ class TwitterStatusFetcher extends ParallelizingDaemon
return;
}
+ common_debug(LOG_INFO, $this->name() . ' - Retrieved ' . sizeof($timeline) . ' statuses from Twitter.');
+
// Reverse to preserve order
foreach (array_reverse($timeline) as $status) {
@@ -209,13 +215,7 @@ class TwitterStatusFetcher extends ParallelizingDaemon
continue;
}
- $notice = null;
-
- $notice = $this->saveStatus($status, $flink);
-
- if (!empty($notice)) {
- common_broadcast_notice($notice);
- }
+ $this->saveStatus($status, $flink);
}
// Okay, record the time we synced with Twitter for posterity
@@ -226,50 +226,77 @@ class TwitterStatusFetcher extends ParallelizingDaemon
function saveStatus($status, $flink)
{
- $id = $this->ensureProfile($status->user);
-
- $profile = Profile::staticGet($id);
+ $profile = $this->ensureProfile($status->user);
if (empty($profile)) {
common_log(LOG_ERR, $this->name() .
' - Problem saving notice. No associated Profile.');
- return null;
+ return;
}
- // XXX: change of screen name?
-
- $uri = 'http://twitter.com/' . $status->user->screen_name .
- '/status/' . $status->id;
+ $statusUri = 'http://twitter.com/'
+ . $status->user->screen_name
+ . '/status/'
+ . $status->id;
// check to see if we've already imported the status
- $notice = Notice::staticGet('uri', $uri);
+ $dupe = $this->checkDupe($profile, $statusUri);
+
+ if (!empty($dupe)) {
+ common_log(
+ LOG_INFO,
+ $this->name() .
+ " - Ignoring duplicate import: $statusUri"
+ );
+ return;
+ }
+
+ $notice = new Notice();
- if (empty($notice)) {
+ $notice->profile_id = $profile->id;
+ $notice->uri = $statusUri;
+ $notice->url = $statusUri;
+ $notice->created = strftime(
+ '%Y-%m-%d %H:%M:%S',
+ strtotime($status->created_at)
+ );
- // XXX: transaction here?
+ $notice->source = 'twitter';
+ $notice->reply_to = null;
+ $notice->is_local = Notice::GATEWAY;
- $notice = new Notice();
+ $notice->content = common_shorten_links($status->text);
+ $notice->rendered = common_render_content(
+ $notice->content,
+ $notice
+ );
- $notice->profile_id = $id;
- $notice->uri = $uri;
- $notice->created = strftime('%Y-%m-%d %H:%M:%S',
- strtotime($status->created_at));
- $notice->content = common_shorten_links($status->text); // XXX
- $notice->rendered = common_render_content($notice->content, $notice);
- $notice->source = 'twitter';
- $notice->reply_to = null; // XXX: lookup reply
- $notice->is_local = Notice::GATEWAY;
+ if (Event::handle('StartNoticeSave', array(&$notice))) {
- if (Event::handle('StartNoticeSave', array(&$notice))) {
- $notice->insert();
- Event::handle('EndNoticeSave', array($notice));
+ $id = $notice->insert();
+
+ if (!$id) {
+ common_log_db_error($notice, 'INSERT', __FILE__);
+ common_log(LOG_ERR, $this->name() .
+ ' - Problem saving notice.');
}
+ Event::handle('EndNoticeSave', array($notice));
}
- Inbox::insertNotice($flink->user_id, $notice->id);
+ $orig = clone($notice);
+ $conv = Conversation::create();
+
+ $notice->conversation = $conv->id;
+
+ if (!$notice->update($orig)) {
+ common_log_db_error($notice, 'UPDATE', __FILE__);
+ common_log(LOG_ERR, $this->name() .
+ ' - Problem saving notice.');
+ }
+ Inbox::insertNotice($flink->user_id, $notice->id);
$notice->blowOnInsert();
return $notice;
@@ -279,9 +306,10 @@ class TwitterStatusFetcher extends ParallelizingDaemon
* Look up a Profile by profileurl field. Profile::staticGet() was
* not working consistently.
*
- * @param string $url the profile url
+ * @param string $nickname local nickname of the Twitter user
+ * @param string $profileurl the profile url
*
- * @return mixed the first profile with that url, or null
+ * @return mixed value the first Profile with that url, or null
*/
function getProfileByUrl($nickname, $profileurl)
@@ -299,6 +327,30 @@ class TwitterStatusFetcher extends ParallelizingDaemon
return null;
}
+ /**
+ * Check to see if this Twitter status has already been imported
+ *
+ * @param Profile $profile Twitter user's local profile
+ * @param string $statusUri URI of the status on Twitter
+ *
+ * @return mixed value a matching Notice or null
+ */
+
+ function checkDupe($profile, $statusUri)
+ {
+ $notice = new Notice();
+ $notice->uri = $statusUri;
+ $notice->profile_id = $profile->id;
+ $notice->limit(1);
+
+ if ($notice->find()) {
+ $notice->fetch();
+ return $notice;
+ }
+
+ return null;
+ }
+
function ensureProfile($user)
{
// check to see if there's already a profile for this user
@@ -313,7 +365,7 @@ class TwitterStatusFetcher extends ParallelizingDaemon
// Check to see if the user's Avatar has changed
$this->checkAvatar($user, $profile);
- return $profile->id;
+ return $profile;
} else {
@@ -372,7 +424,7 @@ class TwitterStatusFetcher extends ParallelizingDaemon
$this->saveAvatars($user, $id);
- return $id;
+ return $profile;
}
}
@@ -403,7 +455,6 @@ class TwitterStatusFetcher extends ParallelizingDaemon
$this->updateAvatars($twitter_user, $profile);
}
-
}
function updateAvatars($twitter_user, $profile) {
@@ -428,17 +479,13 @@ class TwitterStatusFetcher extends ParallelizingDaemon
}
function missingAvatarFile($profile) {
-
foreach (array(24, 48, 73) as $size) {
-
$filename = $profile->getAvatar($size)->filename;
$avatarpath = Avatar::path($filename);
-
if (file_exists($avatarpath) == FALSE) {
return true;
}
}
-
return false;
}
diff --git a/plugins/TwitterBridge/locale/TwitterBridge.po b/plugins/TwitterBridge/locale/TwitterBridge.pot
index eff125579..c7ac8053c 100644
--- a/plugins/TwitterBridge/locale/TwitterBridge.po
+++ b/plugins/TwitterBridge/locale/TwitterBridge.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2010-03-01 14:58-0800\n"
+"POT-Creation-Date: 2010-04-29 23:39+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -16,11 +16,11 @@ msgstr ""
"Content-Type: text/plain; charset=CHARSET\n"
"Content-Transfer-Encoding: 8bit\n"
-#: twitter.php:320
+#: twitter.php:342
msgid "Your Twitter bridge has been disabled."
msgstr ""
-#: twitter.php:324
+#: twitter.php:346
#, php-format
msgid ""
"Hi, %1$s. We're sorry to inform you that your link to Twitter has been "
@@ -36,28 +36,97 @@ msgid ""
"%3$s\n"
msgstr ""
-#: twitterauthorization.php:181 twitterauthorization.php:229
-msgid "Couldn't link your Twitter account."
+#: TwitterBridgePlugin.php:155 TwitterBridgePlugin.php:178
+#: TwitterBridgePlugin.php:291 twitteradminpanel.php:54
+msgid "Twitter"
msgstr ""
-#: twitterauthorization.php:201
-msgid "Couldn't link your Twitter account: oauth_token mismatch."
+#: TwitterBridgePlugin.php:156
+msgid "Login or register using Twitter"
msgstr ""
-#: TwitterBridgePlugin.php:114
-msgid "Twitter"
+#: TwitterBridgePlugin.php:179
+msgid "Twitter integration options"
msgstr ""
-#: TwitterBridgePlugin.php:115
-msgid "Twitter integration options"
+#: TwitterBridgePlugin.php:292
+msgid "Twitter bridge configuration"
msgstr ""
-#: TwitterBridgePlugin.php:207
+#: TwitterBridgePlugin.php:317
msgid ""
"The Twitter \"bridge\" plugin allows you to integrate your StatusNet "
"instance with <a href=\"http://twitter.com/\">Twitter</a>."
msgstr ""
+#: twitteradminpanel.php:65
+msgid "Twitter bridge settings"
+msgstr ""
+
+#: twitteradminpanel.php:148
+msgid "Invalid consumer key. Max length is 255 characters."
+msgstr ""
+
+#: twitteradminpanel.php:154
+msgid "Invalid consumer secret. Max length is 255 characters."
+msgstr ""
+
+#: twitteradminpanel.php:207
+msgid "Twitter application settings"
+msgstr ""
+
+#: twitteradminpanel.php:213
+msgid "Consumer key"
+msgstr ""
+
+#: twitteradminpanel.php:214
+msgid "Consumer key assigned by Twitter"
+msgstr ""
+
+#: twitteradminpanel.php:222
+msgid "Consumer secret"
+msgstr ""
+
+#: twitteradminpanel.php:223
+msgid "Consumer secret assigned by Twitter"
+msgstr ""
+
+#: twitteradminpanel.php:240
+msgid "Integration source"
+msgstr ""
+
+#: twitteradminpanel.php:241
+msgid "Name of your Twitter application"
+msgstr ""
+
+#: twitteradminpanel.php:253
+msgid "Options"
+msgstr ""
+
+#: twitteradminpanel.php:260
+msgid "Enable \"Sign-in with Twitter\""
+msgstr ""
+
+#: twitteradminpanel.php:262
+msgid "Allow users to login with their Twitter credentials"
+msgstr ""
+
+#: twitteradminpanel.php:268
+msgid "Enable Twitter import"
+msgstr ""
+
+#: twitteradminpanel.php:270
+msgid "Allow users to import their Twitter friends' timelines"
+msgstr ""
+
+#: twitterauthorization.php:181 twitterauthorization.php:229
+msgid "Couldn't link your Twitter account."
+msgstr ""
+
+#: twitterauthorization.php:201
+msgid "Couldn't link your Twitter account: oauth_token mismatch."
+msgstr ""
+
#: twittersettings.php:59
msgid "Twitter settings"
msgstr ""
diff --git a/plugins/TwitterBridge/twitter.php b/plugins/TwitterBridge/twitter.php
index 2805b3ab5..306ba2442 100644
--- a/plugins/TwitterBridge/twitter.php
+++ b/plugins/TwitterBridge/twitter.php
@@ -75,8 +75,6 @@ function save_twitter_user($twitter_id, $screen_name)
if (!empty($fuser)) {
- $result = true;
-
// Delete old record if Twitter user changed screen name
if ($fuser->nickname != $screen_name) {
@@ -88,6 +86,25 @@ function save_twitter_user($twitter_id, $screen_name)
$screen_name,
$oldname));
}
+
+ } else {
+
+ // Kill any old, invalid records for this screen name
+
+ $fuser = Foreign_user::getByNickname($screen_name, TWITTER_SERVICE);
+
+ if (!empty($fuser)) {
+ $fuser->delete();
+ common_log(
+ LOG_INFO,
+ sprintf(
+ 'Twitter bridge - deteted old record for Twitter ' .
+ 'screen name "%s" belonging to Twitter ID %d.',
+ $screen_name,
+ $fuser->id
+ )
+ );
+ }
}
return add_twitter_user($twitter_id, $screen_name);
@@ -124,15 +141,36 @@ function broadcast_twitter($notice)
return true;
}
+/**
+ * Pull any extra information from a notice that we should transfer over
+ * to Twitter beyond the notice text itself.
+ *
+ * @param Notice $notice
+ * @return array of key-value pairs for Twitter update submission
+ * @access private
+ */
+function twitter_update_params($notice)
+{
+ $params = array();
+ if ($notice->lat || $notice->lon) {
+ $params['lat'] = $notice->lat;
+ $params['long'] = $notice->lon;
+ }
+ return $params;
+}
+
+
function broadcast_oauth($notice, $flink) {
$user = $flink->getUser();
$statustxt = format_status($notice);
+ $params = twitter_update_params($notice);
+
$token = TwitterOAuthClient::unpackToken($flink->credentials);
$client = new TwitterOAuthClient($token->key, $token->secret);
$status = null;
try {
- $status = $client->statusesUpdate($statustxt);
+ $status = $client->statusesUpdate($statustxt, $params);
} catch (OAuthClientException $e) {
return process_error($e, $flink, $notice);
}
@@ -171,12 +209,13 @@ function broadcast_basicauth($notice, $flink)
$user = $flink->getUser();
$statustxt = format_status($notice);
+ $params = twitter_update_params($notice);
$client = new TwitterBasicAuthClient($flink);
$status = null;
try {
- $status = $client->statusesUpdate($statustxt);
+ $status = $client->statusesUpdate($statustxt, $params);
} catch (BasicAuthException $e) {
return process_error($e, $flink, $notice);
}
@@ -313,10 +352,10 @@ function remove_twitter_link($flink)
function mail_twitter_bridge_removed($user)
{
- common_init_locale($user->language);
-
$profile = $user->getProfile();
+ common_switch_locale($user->language);
+
$subject = sprintf(_m('Your Twitter bridge has been disabled.'));
$site_name = common_config('site', 'name');
@@ -332,7 +371,7 @@ function mail_twitter_bridge_removed($user)
common_local_url('twittersettings'),
common_config('site', 'name'));
- common_init_locale();
+ common_switch_locale();
return mail_to_user($user, $subject, $body);
}
diff --git a/plugins/TwitterBridge/twitteradminpanel.php b/plugins/TwitterBridge/twitteradminpanel.php
index a78a92c66..69f8da078 100644
--- a/plugins/TwitterBridge/twitteradminpanel.php
+++ b/plugins/TwitterBridge/twitteradminpanel.php
@@ -92,9 +92,11 @@ class TwitteradminpanelAction extends AdminPanelAction
);
static $booleans = array(
- 'twitter' => array('signin'),
- 'twitterimport' => array('enabled')
+ 'twitter' => array('signin')
);
+ if (Event::handle('TwitterBridgeAdminImportControl')) {
+ $booleans['twitterimport'] = array('enabled');
+ }
$values = array();
@@ -155,6 +157,13 @@ class TwitteradminpanelAction extends AdminPanelAction
);
}
}
+
+ function isImportEnabled()
+ {
+ // Since daemon setup isn't automated yet...
+ // @todo: if merged into main queues, detect presence of daemon config
+ return true;
+ }
}
class TwitterAdminPanelForm extends AdminForm
@@ -263,13 +272,15 @@ class TwitterAdminPanelForm extends AdminForm
);
$this->unli();
- $this->li();
- $this->out->checkbox(
- 'enabled', _m('Enable Twitter import'),
- (bool) $this->value('enabled', 'twitterimport'),
- _m('Allow users to import their Twitter friends\' timelines')
- );
- $this->unli();
+ if (Event::handle('TwitterBridgeAdminImportControl')) {
+ $this->li();
+ $this->out->checkbox(
+ 'enabled', _m('Enable Twitter import'),
+ (bool) $this->value('enabled', 'twitterimport'),
+ _m('Allow users to import their Twitter friends\' timelines. Requires daemons to be manually configured.')
+ );
+ $this->unli();
+ }
$this->out->elementEnd('ul');
diff --git a/plugins/TwitterBridge/twitterauthorization.php b/plugins/TwitterBridge/twitterauthorization.php
index bc004cb95..7a896e168 100644
--- a/plugins/TwitterBridge/twitterauthorization.php
+++ b/plugins/TwitterBridge/twitterauthorization.php
@@ -332,6 +332,11 @@ class TwitterauthorizationAction extends Action
parent::showPage();
}
+ /**
+ * @fixme much of this duplicates core code, which is very fragile.
+ * Should probably be replaced with an extensible mini version of
+ * the core registration form.
+ */
function showContent()
{
if (!empty($this->message_text)) {
@@ -353,10 +358,15 @@ class TwitterauthorizationAction extends Action
'name' => 'license',
'value' => 'true'));
$this->elementStart('label', array('class' => 'checkbox', 'for' => 'license'));
- $this->text(_('My text and files are available under '));
- $this->element('a', array('href' => common_config('license', 'url')),
- common_config('license', 'title'));
- $this->text(_(' except this private data: password, email address, IM address, phone number.'));
+ $message = _('My text and files are available under %s ' .
+ 'except this private data: password, ' .
+ 'email address, IM address, and phone number.');
+ $link = '<a href="' .
+ htmlspecialchars(common_config('license', 'url')) .
+ '">' .
+ htmlspecialchars(common_config('license', 'title')) .
+ '</a>';
+ $this->raw(sprintf(htmlspecialchars($message), $link));
$this->elementEnd('label');
$this->elementEnd('li');
$this->elementEnd('ul');
diff --git a/plugins/TwitterBridge/twitterbasicauthclient.php b/plugins/TwitterBridge/twitterbasicauthclient.php
index fd26293f9..2c18c9469 100644
--- a/plugins/TwitterBridge/twitterbasicauthclient.php
+++ b/plugins/TwitterBridge/twitterbasicauthclient.php
@@ -76,18 +76,21 @@ class TwitterBasicAuthClient
/**
* Calls Twitter's /statuses/update API method
*
- * @param string $status text of the status
- * @param int $in_reply_to_status_id optional id of the status it's
- * a reply to
+ * @param string $status text of the status
+ * @param mixed $params optional other parameters to pass to Twitter,
+ * as defined. For back-compatibility, if an int
+ * is passed we'll consider it a reply-to ID.
*
* @return mixed the status
*/
function statusesUpdate($status, $in_reply_to_status_id = null)
{
$url = 'https://twitter.com/statuses/update.json';
- $params = array('status' => $status,
- 'source' => common_config('integration', 'source'),
- 'in_reply_to_status_id' => $in_reply_to_status_id);
+ if (is_numeric($params)) {
+ $params = array('in_reply_to_status_id' => intval($params));
+ }
+ $params['status'] = $status;
+ $params['source'] = common_config('integration', 'source');
$response = $this->httpRequest($url, $params);
$status = json_decode($response);
return $status;
diff --git a/plugins/TwitterBridge/twitteroauthclient.php b/plugins/TwitterBridge/twitteroauthclient.php
index 93f6aadd1..d895d8c73 100644
--- a/plugins/TwitterBridge/twitteroauthclient.php
+++ b/plugins/TwitterBridge/twitteroauthclient.php
@@ -166,17 +166,22 @@ class TwitterOAuthClient extends OAuthClient
/**
* Calls Twitter's /statuses/update API method
*
- * @param string $status text of the status
- * @param int $in_reply_to_status_id optional id of the status it's
- * a reply to
+ * @param string $status text of the status
+ * @param mixed $params optional other parameters to pass to Twitter,
+ * as defined. For back-compatibility, if an int
+ * is passed we'll consider it a reply-to ID.
*
* @return mixed the status
*/
- function statusesUpdate($status, $in_reply_to_status_id = null)
+ function statusesUpdate($status, $params=array())
{
$url = 'https://twitter.com/statuses/update.json';
- $params = array('status' => $status,
- 'in_reply_to_status_id' => $in_reply_to_status_id);
+ if (is_numeric($params)) {
+ $params = array('in_reply_to_status_id' => intval($params));
+ }
+ $params['status'] = $status;
+ // We don't have to pass 'source' as the oauth key is tied to an app.
+
$response = $this->oAuthPost($url, $params);
$status = json_decode($response);
return $status;
diff --git a/plugins/UrlShortener/UrlShortenerPlugin.php b/plugins/UrlShortener/UrlShortenerPlugin.php
index 027624b7a..41f64bb26 100644
--- a/plugins/UrlShortener/UrlShortenerPlugin.php
+++ b/plugins/UrlShortener/UrlShortenerPlugin.php
@@ -22,6 +22,7 @@
* @category Plugin
* @package StatusNet
* @author Craig Andrews <candrews@integralblue.com>
+ * @copyright 2009 Free Software Foundation, Inc http://www.fsf.org
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
diff --git a/plugins/UserFlag/clearflag.php b/plugins/UserFlag/clearflag.php
index bd6732e2d..f032527ed 100644
--- a/plugins/UserFlag/clearflag.php
+++ b/plugins/UserFlag/clearflag.php
@@ -81,7 +81,7 @@ class ClearflagAction extends ProfileFormAction
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$this->handlePost();
if (!$this->boolean('ajax')) {
- $this->returnToArgs();
+ $this->returnToPrevious();
}
}
}
diff --git a/plugins/UserFlag/flagprofile.php b/plugins/UserFlag/flagprofile.php
index 2d0f0abb9..018c1e8ac 100644
--- a/plugins/UserFlag/flagprofile.php
+++ b/plugins/UserFlag/flagprofile.php
@@ -87,7 +87,7 @@ class FlagprofileAction extends ProfileFormAction
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$this->handlePost();
if (!$this->boolean('ajax')) {
- $this->returnToArgs();
+ $this->returnToPrevious();
}
}
}
diff --git a/plugins/WikiHowProfile/README b/plugins/WikiHowProfile/README
new file mode 100644
index 000000000..ee6096c9f
--- /dev/null
+++ b/plugins/WikiHowProfile/README
@@ -0,0 +1,6 @@
+This is an additional plugin which piggybacks on OpenID authentication to pull
+profile information from WikiHow user pages when creating or updating accounts.
+
+WikiHow runs a customized MediaWiki setup, with locally-built extensions to add
+profile features such as an avatar. As this additional info isn't yet exposed
+through OpenID, we need to pull it separately.
diff --git a/plugins/WikiHowProfile/WikiHowProfilePlugin.php b/plugins/WikiHowProfile/WikiHowProfilePlugin.php
new file mode 100644
index 000000000..b72bd55d6
--- /dev/null
+++ b/plugins/WikiHowProfile/WikiHowProfilePlugin.php
@@ -0,0 +1,196 @@
+<?php
+/**
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2010, StatusNet, Inc.
+ *
+ * Plugin to pull WikiHow-style user avatars at OpenID setup time.
+ * These are not currently exposed via OpenID.
+ *
+ * PHP version 5
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ *
+ * @category Plugins
+ * @package StatusNet
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
+ * @link http://status.net/
+ */
+
+if (!defined('STATUSNET')) {
+ // This check helps protect against security problems;
+ // your code file can't be executed directly from the web.
+ exit(1);
+}
+
+/**
+ * Sample plugin main class
+ *
+ * Each plugin requires a main class to interact with the StatusNet system.
+ *
+ * @category Plugins
+ * @package WikiHowProfilePlugin
+ * @author Brion Vibber <brion@status.net>
+ * @copyright 2010 StatusNet, Inc.
+ * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html AGPL 3.0
+ * @link http://status.net/
+ */
+
+class WikiHowProfilePlugin extends Plugin
+{
+ function onPluginVersion(&$versions)
+ {
+ $versions[] = array('name' => 'WikiHow avatar fetcher',
+ 'version' => STATUSNET_VERSION,
+ 'author' => 'Brion Vibber',
+ 'homepage' => 'http://status.net/wiki/Plugin:Sample',
+ 'rawdescription' =>
+ _m('Fetches avatar and other profile info for WikiHow users when setting up an account via OpenID.'));
+ return true;
+ }
+
+ /**
+ * Hook for OpenID user creation; we'll pull the avatar.
+ *
+ * @param User $user
+ * @param string $canonical OpenID provider URL
+ * @param array $sreg query data from provider
+ */
+ function onEndOpenIDCreateNewUser($user, $canonical, $sreg)
+ {
+ $this->updateProfile($user, $canonical);
+ return true;
+ }
+
+ /**
+ * Hook for OpenID profile updating; we'll pull the avatar.
+ *
+ * @param User $user
+ * @param string $canonical OpenID provider URL (wiki profile page)
+ * @param array $sreg query data from provider
+ */
+ function onEndOpenIDUpdateUser($user, $canonical, $sreg)
+ {
+ $this->updateProfile($user, $canonical);
+ return true;
+ }
+
+ /**
+ * @param User $user
+ * @param string $canonical OpenID provider URL (wiki profile page)
+ */
+ private function updateProfile($user, $canonical)
+ {
+ $prefix = 'http://www.wikihow.com/User:';
+
+ if (substr($canonical, 0, strlen($prefix)) == $prefix) {
+ // Yes, it's a WikiHow user!
+ $profile = $this->fetchProfile($canonical);
+
+ if (!empty($profile['avatar'])) {
+ $this->saveAvatar($user, $profile['avatar']);
+ }
+ }
+ }
+
+ /**
+ * Given a user's WikiHow profile URL, find their avatar.
+ *
+ * @param string $profileUrl user page on the wiki
+ *
+ * @return array of data; possible members:
+ * 'avatar' => full URL to avatar image
+ *
+ * @throws Exception on various low-level failures
+ *
+ * @todo pull location, web site, and about sections -- they aren't currently marked up cleanly.
+ */
+ private function fetchProfile($profileUrl)
+ {
+ $client = HTTPClient::start();
+ $response = $client->get($profileUrl);
+ if (!$response->isOk()) {
+ throw new Exception("WikiHow profile page fetch failed.");
+ // HTTP error response already logged.
+ return false;
+ }
+
+ // Suppress warnings during HTML parsing; non-well-formed bits will
+ // spew horrible warning everywhere even though it works fine.
+ $old = error_reporting();
+ error_reporting($old & ~E_WARNING);
+
+ $dom = new DOMDocument();
+ $ok = $dom->loadHTML($response->getBody());
+
+ error_reporting($old);
+
+ if (!$ok) {
+ throw new Exception("HTML parse failure during check for WikiHow avatar.");
+ return false;
+ }
+
+ $data = array();
+
+ $avatar = $dom->getElementById('avatarULimg');
+ if ($avatar) {
+ $src = $avatar->getAttribute('src');
+
+ $base = new Net_URL2($profileUrl);
+ $absolute = $base->resolve($src);
+ $avatarUrl = strval($absolute);
+
+ common_log(LOG_DEBUG, "WikiHow avatar found for $profileUrl - $avatarUrl");
+ $data['avatar'] = $avatarUrl;
+ }
+
+ return $data;
+ }
+
+ /**
+ * Actually save the avatar we found locally.
+ *
+ * @param User $user
+ * @param string $url to avatar URL
+ * @todo merge wrapper funcs for this into common place for 1.0 core
+ */
+ private function saveAvatar($user, $url)
+ {
+ if (!common_valid_http_url($url)) {
+ throw new ServerException(sprintf(_m("Invalid avatar URL %s"), $url));
+ }
+
+ // @fixme this should be better encapsulated
+ // ripped from OStatus via oauthstore.php (for old OMB client)
+ $temp_filename = tempnam(sys_get_temp_dir(), 'listener_avatar');
+ if (!copy($url, $temp_filename)) {
+ throw new ServerException(sprintf(_m("Unable to fetch avatar from %s"), $url));
+ }
+
+ $profile = $user->getProfile();
+ $id = $profile->id;
+ // @fixme should we be using different ids?
+
+ $imagefile = new ImageFile($id, $temp_filename);
+ $filename = Avatar::filename($id,
+ image_type_to_extension($imagefile->type),
+ null,
+ common_timestamp());
+ rename($temp_filename, Avatar::path($filename));
+ $profile->setOriginal($filename);
+ }
+
+}
+
diff --git a/scripts/apidocs.config b/scripts/apidocs.config
new file mode 100644
index 000000000..fdbe35ba1
--- /dev/null
+++ b/scripts/apidocs.config
@@ -0,0 +1,1551 @@
+# Doxyfile 1.6.2
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = "StatusNet REST API"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER =
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = ../apidocs
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+
+OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = NO
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = NO
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH =
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
+JAVADOC_AUTOBRIEF = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = NO
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
+SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 4
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
+# scopes will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
+# Fortran.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
+# VHDL.
+
+OPTIMIZE_OUTPUT_VHDL = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it parses.
+# With this tag you can assign which parser to use for a given extension.
+# Doxygen has a built-in mapping, but you can override or extend it using this tag.
+# The format is ext=language, where ext is a file extension, and language is one of
+# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
+# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
+# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+
+EXTENSION_MAPPING =
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+SIP_SUPPORT = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate getter
+# and setter methods for a property. Setting this option to YES (the default)
+# will make doxygen to replace the get and set methods by a property in the
+# documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
+# methods anyway, you should set this option to NO.
+
+IDL_PROPERTY_SUPPORT = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+
+TYPEDEF_HIDES_STRUCT = NO
+
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penality.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will rougly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols
+
+SYMBOL_CACHE_SIZE = 0
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = NO
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
+# anonymous namespace are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = NO
+
+# If the FORCE_LOCAL_INCLUDES tag is set to YES then Doxygen
+# will list include files with double quotes in the documentation
+# rather than with sharp brackets.
+
+FORCE_LOCAL_INCLUDES = NO
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = NO
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
+# the group names will appear in their defined order.
+
+SORT_GROUP_NAMES = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = NO
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = NO
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = NO
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= NO
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = NO
+
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# in the documentation. The default is NO.
+
+SHOW_DIRECTORIES = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
+# Folder Tree View (if specified). The default is YES.
+
+SHOW_FILES = NO
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page.
+# This will remove the Namespaces entry from the Quick Index
+# and from the Folder Tree View (if specified). The default is YES.
+
+SHOW_NAMESPACES = NO
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
+FILE_VERSION_FILTER =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
+# doxygen. The layout file controls the global structure of the generated output files
+# in an output format independent way. The create the layout file that represents
+# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
+# file name after the option, if omitted DoxygenLayout.xml will be used as the name
+# of the layout file.
+
+LAYOUT_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
+WARN_NO_PARAMDOC = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = ../actions ../lib
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# the list of possible encodings.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+
+FILE_PATTERNS = api*.php
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = NO
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
+# from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
+EXCLUDE_PATTERNS =
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS = *Action Api* if*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+# If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis.
+# Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match.
+# The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = NO
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.
+# Otherwise they will link to the documentation.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
+USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+# page will contain the date and time when the page was generated. Setting
+# this to NO can help when comparing the output of multiple runs.
+
+HTML_TIMESTAMP = NO
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files
+# will be generated that can be used as input for Apple's Xcode 3
+# integrated development environment, introduced with OSX 10.5 (Leopard).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
+# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information.
+
+GENERATE_DOCSET = NO
+
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
+# can be grouped.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+# should uniquely identify the documentation set bundle. This should be a
+# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+# will append .docset to the name.
+
+DOCSET_BUNDLE_ID = org.doxygen.Project
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# content.
+
+CHM_INDEX_ENCODING =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
+# are set, an additional index file will be generated that can be used as input for
+# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated
+# HTML documentation.
+
+GENERATE_QHP = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
+# The path specified is relative to the HTML output folder.
+
+QCH_FILE =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#namespace
+
+QHP_NAMESPACE = org.doxygen.Project
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+
+QHP_VIRTUAL_FOLDER = doc
+
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add.
+# For more information please see
+# http://doc.trolltech.com/qthelpproject.html#custom-filters
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see
+# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's
+# filter section matches.
+# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
+
+QHP_SECT_FILTER_ATTRS =
+
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
+# .qhp file.
+
+QHG_LOCATION =
+
+# If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files
+# will be generated, which together with the HTML files, form an Eclipse help
+# plugin. To install this plugin and make it available under the help contents
+# menu in Eclipse, the contents of the directory containing the HTML and XML
+# files needs to be copied into the plugins directory of eclipse. The name of
+# the directory within the plugins directory should be the same as
+# the ECLIPSE_DOC_ID value. After copying Eclipse needs to be restarted before the help appears.
+
+GENERATE_ECLIPSEHELP = NO
+
+# A unique identifier for the eclipse help plugin. When installing the plugin
+# the directory name containing the HTML and XML files should also have
+# this name.
+
+ECLIPSE_DOC_ID = org.doxygen.Project
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# Windows users are probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+# and Class Hierarchy pages using a tree view instead of an ordered list.
+
+USE_INLINE_TREES = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
+# to force them to be regenerated.
+
+FORMULA_FONTSIZE = 10
+
+# When the SEARCHENGINE tag is enabled doxygen will generate a search box for the HTML output. The underlying search engine uses javascript
+# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET) there is already a search function so this one should
+# typically be disabled. For large projects the javascript based search engine
+# can be slow, then enabling SERVER_BASED_SEARCH may provide a better solution.
+
+SEARCHENGINE = YES
+
+# When the SERVER_BASED_SEARCH tag is enabled the search engine will be implemented using a PHP enabled web server instead of at the web client using Javascript. Doxygen will generate the search PHP script and index
+# file to put on the web server. The advantage of the server based approach is that it scales better to large projects and allows full text search. The disadvances is that it is more difficult to setup
+# and does not have live searching capabilities.
+
+SERVER_BASED_SEARCH = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+# Note that when enabling USE_PDFLATEX this option is only used for
+# generating bitmaps for formulas in the HTML output, but not in the
+# Makefile that is written to the output directory.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = YES
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER.
+
+LATEX_SOURCE_CODE = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader.
+# This is useful
+# if you want to understand what is going on.
+# On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
+# the parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+#
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+#
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
+# powerful graphs.
+
+CLASS_DIAGRAMS = NO
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = NO
+
+# By default doxygen will write a font called FreeSans.ttf to the output
+# directory and reference it in all dot files that doxygen generates. This
+# font does not include all possible unicode characters however, so when you need
+# these (or just want a differently looking font) you can specify the font name
+# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+# which can be done by putting it in a standard location or by setting the
+# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+# containing the font.
+
+DOT_FONTNAME = FreeSans
+
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The default size is 10pt.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the output directory to look for the
+# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+# different font using DOT_FONTNAME you can set the path where dot
+# can find it using this tag.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
+GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
+# for selected functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
+# graphs for selected functions only using the \callergraph command.
+
+CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
+DIRECTORY_GRAPH = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
+# a graph (i.e. they become hard to read).
+
+DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
+DOT_MULTI_TARGETS = NO
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
diff --git a/scripts/command.php b/scripts/command.php
index 6041b02eb..7b1d651e4 100755
--- a/scripts/command.php
+++ b/scripts/command.php
@@ -20,8 +20,8 @@
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
-$shortoptions = 'i:n:';
-$longoptions = array('id=', 'nickname=');
+$shortoptions = 'i:n:o';
+$longoptions = array('id=', 'nickname=', 'owner');
$helptext = <<<END_OF_USERROLE_HELP
command.php [options] [command line]
@@ -29,13 +29,12 @@ Perform commands on behalf of a user, such as sub, unsub, join, drop
-i --id ID of the user
-n --nickname nickname of the user
+ -o --owner use the site owner
END_OF_USERROLE_HELP;
require_once INSTALLDIR.'/scripts/commandline.inc';
-
-
function interpretCommand($user, $body)
{
$inter = new CommandInterpreter();
@@ -50,8 +49,6 @@ function interpretCommand($user, $body)
}
}
-
-
if (have_option('i', 'id')) {
$id = get_option_value('i', 'id');
$user = User::staticGet('id', $id);
@@ -66,6 +63,12 @@ if (have_option('i', 'id')) {
print "Can't find user with nickname '$nickname'\n";
exit(1);
}
+} else if (have_option('o', 'owner')) {
+ $user = User::siteOwner();
+ if (empty($user)) {
+ print "Site has no owner.\n";
+ exit(1);
+ }
} else {
print "You must provide either an ID or a nickname.\n\n";
print $helptext;
diff --git a/scripts/commandline.inc b/scripts/commandline.inc
index 9029bb19d..a475e11d0 100644
--- a/scripts/commandline.inc
+++ b/scripts/commandline.inc
@@ -123,6 +123,10 @@ require_once INSTALLDIR . '/lib/common.php';
set_error_handler('common_error_handler');
+// Set up the language infrastructure so we can localize anything that
+// needs to be sent out to users, such as mail notifications.
+common_init_language();
+
function _make_matches($opt, $alt)
{
$matches = array();
diff --git a/scripts/docgen.php b/scripts/docgen.php
new file mode 100755
index 000000000..ac0a5c83d
--- /dev/null
+++ b/scripts/docgen.php
@@ -0,0 +1,114 @@
+#!/usr/bin/env php
+<?php
+
+$shortoptions = '';
+$longoptions = array('plugin=');
+
+
+$helptext = <<<ENDOFHELP
+Build HTML documentation from doc comments in source.
+
+Usage: docgen.php [options] output-directory
+Options:
+
+ --plugin=... build docs for given plugin instead of core
+
+
+ENDOFHELP;
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+set_include_path(INSTALLDIR . DIRECTORY_SEPARATOR . 'extlib' . PATH_SEPARATOR . get_include_path());
+
+$pattern = "*.php *.inc";
+$exclude = 'config.php */extlib/* */local/* */plugins/* */scripts/*';
+$plugin = false;
+
+require_once 'Console/Getopt.php';
+$parser = new Console_Getopt();
+$result = $parser->getopt($_SERVER['argv'], $shortoptions, $longoptions);
+if (PEAR::isError($result)) {
+ print $result->getMessage() . "\n";
+ exit(1);
+}
+list($options, $args) = $result;
+
+foreach ($options as $option) {
+ $arg = $option[0];
+ if ($arg == '--plugin') {
+ $plugin = $options[1];
+ } else if ($arg == 'h' || $arg == '--help') {
+ print $helptext;
+ exit(0);
+ }
+}
+
+if (isset($args[0])) {
+ $outdir = $args[0];
+ if (!is_dir($outdir)) {
+ echo "Output directory $outdir is not a directory.\n";
+ exit(1);
+ }
+} else {
+ print $helptext;
+ exit(1);
+}
+
+if ($plugin) {
+ $exclude = "*/extlib/*";
+ $indir = INSTALLDIR . "/plugins/" . $plugin;
+ if (!is_dir($indir)) {
+ $indir = INSTALLDIR . "/plugins";
+ $filename = "{$plugin}Plugin.php";
+ if (!file_exists("$indir/$filename")) {
+ echo "Can't find plugin $plugin.\n";
+ exit(1);
+ } else {
+ $pattern = $filename;
+ }
+ }
+} else {
+ $indir = INSTALLDIR;
+}
+
+function getVersion()
+{
+ // define('STATUSNET_VERSION', '0.9.1');
+ $source = file_get_contents(INSTALLDIR . '/lib/common.php');
+ if (preg_match('/^\s*define\s*\(\s*[\'"]STATUSNET_VERSION[\'"]\s*,\s*[\'"](.*)[\'"]\s*\)\s*;/m', $source, $matches)) {
+ return $matches[1];
+ }
+ return 'unknown';
+}
+
+
+$replacements = array(
+ '%%version%%' => getVersion(),
+ '%%indir%%' => $indir,
+ '%%pattern%%' => $pattern,
+ '%%outdir%%' => $outdir,
+ '%%htmlout%%' => $outdir,
+ '%%exclude%%' => $exclude,
+);
+
+var_dump($replacements);
+
+$template = file_get_contents(dirname(__FILE__) . '/doxygen.tmpl');
+$template = strtr($template, $replacements);
+
+$templateFile = tempnam(sys_get_temp_dir(), 'statusnet-doxygen');
+file_put_contents($templateFile, $template);
+
+$cmd = "doxygen " . escapeshellarg($templateFile);
+
+$retval = 0;
+passthru($cmd, $retval);
+
+if ($retval == 0) {
+ echo "Done!\n";
+ unlink($templateFile);
+ exit(0);
+} else {
+ echo "Failed! Doxygen config left in $templateFile\n";
+ exit($retval);
+}
+
diff --git a/scripts/doxygen.tmpl b/scripts/doxygen.tmpl
new file mode 100644
index 000000000..15d03e3bb
--- /dev/null
+++ b/scripts/doxygen.tmpl
@@ -0,0 +1,1516 @@
+# Doxyfile 1.6.1
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# Project related configuration options
+#---------------------------------------------------------------------------
+
+# This tag specifies the encoding used for all characters in the config file
+# that follow. The default is UTF-8 which is also the encoding used for all
+# text before the first occurrence of this tag. Doxygen uses libiconv (or the
+# iconv built into libc) for the transcoding. See
+# http://www.gnu.org/software/libiconv for the list of possible encodings.
+
+DOXYFILE_ENCODING = UTF-8
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = StatusNet
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = %%version%%
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = %%outdir%%
+
+# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create
+# 4096 sub-directories (in 2 levels) under the output directory of each output
+# format and will distribute the generated files over these directories.
+# Enabling this option can be useful when feeding doxygen a huge amount of
+# source files, where putting all generated files in the same directory would
+# otherwise cause performance problems for the file system.
+
+CREATE_SUBDIRS = NO
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional,
+# Croatian, Czech, Danish, Dutch, Esperanto, Farsi, Finnish, French, German,
+# Greek, Hungarian, Italian, Japanese, Japanese-en (Japanese with English
+# messages), Korean, Korean-en, Lithuanian, Norwegian, Macedonian, Persian,
+# Polish, Portuguese, Romanian, Russian, Serbian, Serbian-Cyrilic, Slovak,
+# Slovene, Spanish, Swedish, Ukrainian, and Vietnamese.
+
+OUTPUT_LANGUAGE = English
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = YES
+
+# This tag implements a quasi-intelligent brief description abbreviator
+# that is used to form the text in various listings. Each string
+# in this list, if found as the leading text of the brief description, will be
+# stripped from the text and the result after processing the whole list, is
+# used as the annotated text. Otherwise, the brief description is used as-is.
+# If left blank, the following values are used ("$name" is automatically
+# replaced with the name of the entity): "The $name class" "The $name widget"
+# "The $name file" "is" "provides" "specifies" "contains"
+# "represents" "a" "an" "the"
+
+ABBREVIATE_BRIEF =
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+# inherited members of a class in the documentation of that class as if those
+# members were ordinary class members. Constructors, destructors and assignment
+# operators of the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = YES
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user-defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. The tag can be used to show relative paths in the file list.
+# If left blank the directory from which doxygen is run is used as the
+# path to strip.
+
+STRIP_FROM_PATH = %%indir%%
+
+# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of
+# the path mentioned in the documentation of a class, which tells
+# the reader which header file to include in order to use a class.
+# If left blank only the name of the header file containing the class
+# definition is used. Otherwise one should specify the include paths that
+# are normally passed to the compiler using the -I flag.
+
+STRIP_FROM_INC_PATH =
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like regular Qt-style comments
+# (thus requiring an explicit @brief command for a brief description.)
+
+JAVADOC_AUTOBRIEF = NO
+
+# If the QT_AUTOBRIEF tag is set to YES then Doxygen will
+# interpret the first line (until the first dot) of a Qt-style
+# comment as the brief description. If set to NO, the comments
+# will behave just like regular Qt-style comments (thus requiring
+# an explicit \brief command for a brief description.)
+
+QT_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# re-implements.
+
+INHERIT_DOCS = YES
+
+# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce
+# a new page for each member. If set to NO, the documentation of a member will
+# be part of the file/class/namespace that contains it.
+
+SEPARATE_MEMBER_PAGES = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 8
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user-defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C
+# sources only. Doxygen will then generate output that is more tailored for C.
+# For instance, some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java
+# sources only. Doxygen will then generate output that is more tailored for
+# Java. For instance, namespaces will be presented as packages, qualified
+# scopes will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+# sources only. Doxygen will then generate output that is more tailored for
+# Fortran.
+
+OPTIMIZE_FOR_FORTRAN = NO
+
+# Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+# sources. Doxygen will then generate output that is tailored for
+# VHDL.
+
+OPTIMIZE_OUTPUT_VHDL = NO
+
+# Doxygen selects the parser to use depending on the extension of the files it parses.
+# With this tag you can assign which parser to use for a given extension.
+# Doxygen has a built-in mapping, but you can override or extend it using this tag.
+# The format is ext=language, where ext is a file extension, and language is one of
+# the parsers supported by doxygen: IDL, Java, Javascript, C#, C, C++, D, PHP,
+# Objective-C, Python, Fortran, VHDL, C, C++. For instance to make doxygen treat
+# .inc files as Fortran files (default is PHP), and .f files as C (default is Fortran),
+# use: inc=Fortran f=C. Note that for custom extensions you also need to set FILE_PATTERNS otherwise the files are not read by doxygen.
+
+EXTENSION_MAPPING =
+
+# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+# to include (a tag file for) the STL sources as input, then you should
+# set this tag to YES in order to let doxygen match functions declarations and
+# definitions whose arguments contain STL classes (e.g. func(std::string); v.s.
+# func(std::string) {}). This also make the inheritance and collaboration
+# diagrams that involve STL classes more complete and accurate.
+
+BUILTIN_STL_SUPPORT = NO
+
+# If you use Microsoft's C++/CLI language, you should set this option to YES to
+# enable parsing support.
+
+CPP_CLI_SUPPORT = NO
+
+# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only.
+# Doxygen will parse them like normal C++ but will assume all classes use public
+# instead of private inheritance when no explicit protection keyword is present.
+
+SIP_SUPPORT = NO
+
+# For Microsoft's IDL there are propget and propput attributes to indicate getter
+# and setter methods for a property. Setting this option to YES (the default)
+# will make doxygen to replace the get and set methods by a property in the
+# documentation. This will only work if the methods are indeed getting or
+# setting a simple type. If this is not the case, or you want to show the
+# methods anyway, you should set this option to NO.
+
+IDL_PROPERTY_SUPPORT = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# Set the SUBGROUPING tag to YES (the default) to allow class member groups of
+# the same type (for instance a group of public functions) to be put as a
+# subgroup of that type (e.g. under the Public Functions section). Set it to
+# NO to prevent subgrouping. Alternatively, this can be done per class using
+# the \nosubgrouping command.
+
+SUBGROUPING = YES
+
+# When TYPEDEF_HIDES_STRUCT is enabled, a typedef of a struct, union, or enum
+# is documented as struct, union, or enum with the name of the typedef. So
+# typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+# with name TypeT. When disabled the typedef will appear as a member of a file,
+# namespace, or class. And the struct will be named TypeS. This can typically
+# be useful for C code in case the coding convention dictates that all compound
+# types are typedef'ed and only the typedef is referenced, never the tag name.
+
+TYPEDEF_HIDES_STRUCT = NO
+
+# The SYMBOL_CACHE_SIZE determines the size of the internal cache use to
+# determine which symbols to keep in memory and which to flush to disk.
+# When the cache is full, less often used symbols will be written to disk.
+# For small to medium size projects (<1000 input files) the default value is
+# probably good enough. For larger projects a too small cache size can cause
+# doxygen to be busy swapping symbols to and from disk most of the time
+# causing a significant performance penality.
+# If the system has enough physical memory increasing the cache will improve the
+# performance by keeping more symbols in memory. Note that the value works on
+# a logarithmic scale so increasing the size by one will rougly double the
+# memory usage. The cache size is given by this formula:
+# 2^(16+SYMBOL_CACHE_SIZE). The valid range is 0..9, the default is 0,
+# corresponding to a cache size of 2^16 = 65536 symbols
+
+SYMBOL_CACHE_SIZE = 0
+
+#---------------------------------------------------------------------------
+# Build related configuration options
+#---------------------------------------------------------------------------
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = NO
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = YES
+
+# This flag is only useful for Objective-C code. When set to YES local
+# methods, which are defined in the implementation section but not in
+# the interface are included in the documentation.
+# If set to NO (the default) only methods in the interface are included.
+
+EXTRACT_LOCAL_METHODS = NO
+
+# If this flag is set to YES, the members of anonymous namespaces will be
+# extracted and appear in the documentation as a namespace called
+# 'anonymous_namespace{file}', where file will be replaced with the base
+# name of the file that contains the anonymous namespace. By default
+# anonymous namespace are hidden.
+
+EXTRACT_ANON_NSPACES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = NO
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these classes will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = NO
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = NO
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = NO
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower-case letters. If set to YES upper-case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# and Mac users are advised to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put a list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the
+# brief documentation of file, namespace and class members alphabetically
+# by member name. If set to NO (the default) the members will appear in
+# declaration order.
+
+SORT_BRIEF_DOCS = NO
+
+# If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the (brief and detailed) documentation of class members so that constructors and destructors are listed first. If set to NO (the default) the constructors will appear in the respective orders defined by SORT_MEMBER_DOCS and SORT_BRIEF_DOCS. This tag will be ignored for brief docs if SORT_BRIEF_DOCS is set to NO and ignored for detailed docs if SORT_MEMBER_DOCS is set to NO.
+
+SORT_MEMBERS_CTORS_1ST = NO
+
+# If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the
+# hierarchy of group names into alphabetical order. If set to NO (the default)
+# the group names will appear in their defined order.
+
+SORT_GROUP_NAMES = NO
+
+# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be
+# sorted by fully-qualified names, including namespaces. If set to
+# NO (the default), the class list will be sorted only by class name,
+# not including the namespace part.
+# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+# Note: This option applies only to the class list, not to the
+# alphabetical list.
+
+SORT_BY_SCOPE_NAME = NO
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consists of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 30
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+# If the sources in your project are distributed over multiple directories
+# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy
+# in the documentation. The default is NO.
+
+SHOW_DIRECTORIES = NO
+
+# Set the SHOW_FILES tag to NO to disable the generation of the Files page.
+# This will remove the Files entry from the Quick Index and from the
+# Folder Tree View (if specified). The default is YES.
+
+SHOW_FILES = YES
+
+# Set the SHOW_NAMESPACES tag to NO to disable the generation of the
+# Namespaces page.
+# This will remove the Namespaces entry from the Quick Index
+# and from the Folder Tree View (if specified). The default is YES.
+
+SHOW_NAMESPACES = YES
+
+# The FILE_VERSION_FILTER tag can be used to specify a program or script that
+# doxygen should invoke to get the current version for each file (typically from
+# the version control system). Doxygen will invoke the program by executing (via
+# popen()) the command <command> <input-file>, where <command> is the value of
+# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file
+# provided by doxygen. Whatever the program writes to standard output
+# is used as the file version. See the manual for examples.
+
+FILE_VERSION_FILTER =
+
+# The LAYOUT_FILE tag can be used to specify a layout file which will be parsed by
+# doxygen. The layout file controls the global structure of the generated output files
+# in an output format independent way. The create the layout file that represents
+# doxygen's defaults, run doxygen with the -l option. You can optionally specify a
+# file name after the option, if omitted DoxygenLayout.xml will be used as the name
+# of the layout file.
+
+LAYOUT_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = YES
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# This WARN_NO_PARAMDOC option can be abled to get warnings for
+# functions that are documented, but have no documentation for their parameters
+# or return value. If set to NO (the default) doxygen will only warn about
+# wrong or incomplete parameter documentation, but not about the absence of
+# documentation.
+
+WARN_NO_PARAMDOC = NO
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text. Optionally the format may contain
+# $version, which will be replaced by the version of the file (if it could
+# be obtained via FILE_VERSION_FILTER)
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = %%indir%%
+
+# This tag can be used to specify the character encoding of the source files
+# that doxygen parses. Internally doxygen uses the UTF-8 encoding, which is
+# also the default input encoding. Doxygen uses libiconv (or the iconv built
+# into libc) for the transcoding. See http://www.gnu.org/software/libiconv for
+# the list of possible encodings.
+
+INPUT_ENCODING = UTF-8
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx
+# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py *.f90
+
+FILE_PATTERNS = %%pattern%%
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+# fixme for some reason this doesn't work?
+
+EXCLUDE = config.php extlib local plugins scripts
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or
+# directories that are symbolic links (a Unix filesystem feature) are excluded
+# from the input.
+
+EXCLUDE_SYMLINKS = NO
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories. Note that the wildcards are matched
+# against the file with absolute path, so to exclude all test directories
+# for example use the pattern */test/*
+
+EXCLUDE_PATTERNS = %%exclude%%
+
+# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+# (namespaces, classes, functions, etc.) that should be excluded from the
+# output. The symbol name can be a fully qualified name, a word, or if the
+# wildcard * is used, a substring. Examples: ANamespace, AClass,
+# AClass::ANamespace, ANamespace::*Test
+
+EXCLUDE_SYMBOLS =
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+# If FILTER_PATTERNS is specified, this tag will be
+# ignored.
+
+INPUT_FILTER =
+
+# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+# basis.
+# Doxygen will compare the file name with each pattern and apply the
+# filter if there is a match.
+# The filters are a list of the form:
+# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further
+# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER
+# is applied to all files.
+
+FILTER_PATTERNS =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+# Note: To get rid of all source code in the generated output, make sure also
+# VERBATIM_HEADERS is set to NO.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = NO
+
+# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
+# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
+# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
+# link to the source code.
+# Otherwise they will link to the documentation.
+
+REFERENCES_LINK_SOURCE = YES
+
+# If the USE_HTAGS tag is set to YES then the references to source code
+# will point to the HTML generated by the htags(1) tool instead of doxygen
+# built-in source browser. The htags tool is part of GNU's global source
+# tagging system (see http://www.gnu.org/software/global/global.html). You
+# will need version 4.8.6 or higher.
+
+USE_HTAGS = NO
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = NO
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 5
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = %%htmlout%%
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER =
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER =
+
+# The HTML_STYLESHEET tag can be used to specify a user-defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet. Note that doxygen will try to copy
+# the style sheet file to the HTML output directory, so don't put your own
+# stylesheet in the HTML output directory as well, or it will be erased!
+
+HTML_STYLESHEET =
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = YES
+
+# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+# documentation will contain sections that can be hidden and shown after the
+# page has loaded. For this to work a browser that supports
+# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox
+# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
+
+HTML_DYNAMIC_SECTIONS = NO
+
+# If the GENERATE_DOCSET tag is set to YES, additional index files
+# will be generated that can be used as input for Apple's Xcode 3
+# integrated development environment, introduced with OSX 10.5 (Leopard).
+# To create a documentation set, doxygen will generate a Makefile in the
+# HTML output directory. Running make will produce the docset in that
+# directory and running "make install" will install the docset in
+# ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find
+# it at startup.
+# See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html for more information.
+
+GENERATE_DOCSET = NO
+
+# When GENERATE_DOCSET tag is set to YES, this tag determines the name of the
+# feed. A documentation feed provides an umbrella under which multiple
+# documentation sets from a single provider (such as a company or product suite)
+# can be grouped.
+
+DOCSET_FEEDNAME = "Doxygen generated docs"
+
+# When GENERATE_DOCSET tag is set to YES, this tag specifies a string that
+# should uniquely identify the documentation set bundle. This should be a
+# reverse domain-name style string, e.g. com.mycompany.MyDocSet. Doxygen
+# will append .docset to the name.
+
+DOCSET_BUNDLE_ID = org.doxygen.Project
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compiled HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output directory.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run
+# the HTML help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_INDEX_ENCODING
+# is used to encode HtmlHelp index (hhk), content (hhc) and project file
+# content.
+
+CHM_INDEX_ENCODING =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the HTML help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and QHP_VIRTUAL_FOLDER
+# are set, an additional index file will be generated that can be used as input for
+# Qt's qhelpgenerator to generate a Qt Compressed Help (.qch) of the generated
+# HTML documentation.
+
+GENERATE_QHP = NO
+
+# If the QHG_LOCATION tag is specified, the QCH_FILE tag can
+# be used to specify the file name of the resulting .qch file.
+# The path specified is relative to the HTML output folder.
+
+QCH_FILE =
+
+# The QHP_NAMESPACE tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#namespace
+
+QHP_NAMESPACE =
+
+# The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating
+# Qt Help Project output. For more information please see
+# http://doc.trolltech.com/qthelpproject.html#virtual-folders
+
+QHP_VIRTUAL_FOLDER = doc
+
+# If QHP_CUST_FILTER_NAME is set, it specifies the name of a custom filter to add.
+# For more information please see
+# http://doc.trolltech.com/qthelpproject.html#custom-filters
+
+QHP_CUST_FILTER_NAME =
+
+# The QHP_CUST_FILT_ATTRS tag specifies the list of the attributes of the custom filter to add.For more information please see
+# <a href="http://doc.trolltech.com/qthelpproject.html#custom-filters">Qt Help Project / Custom Filters</a>.
+
+QHP_CUST_FILTER_ATTRS =
+
+# The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this project's
+# filter section matches.
+# <a href="http://doc.trolltech.com/qthelpproject.html#filter-attributes">Qt Help Project / Filter Attributes</a>.
+
+QHP_SECT_FILTER_ATTRS =
+
+# If the GENERATE_QHP tag is set to YES, the QHG_LOCATION tag can
+# be used to specify the location of Qt's qhelpgenerator.
+# If non-empty doxygen will try to run qhelpgenerator on the generated
+# .qhp file.
+
+QHG_LOCATION =
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 4
+
+# The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+# structure should be generated to display hierarchical information.
+# If the tag value is set to YES, a side panel will be generated
+# containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript, DHTML, CSS and frames is required (i.e. any modern browser).
+# Windows users are probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# By enabling USE_INLINE_TREES, doxygen will generate the Groups, Directories,
+# and Class Hierarchy pages using a tree view instead of an ordered list.
+
+USE_INLINE_TREES = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+# Use this tag to change the font size of Latex formulas included
+# as images in the HTML documentation. The default is 10. Note that
+# when you change the font size after a successful doxygen run you need
+# to manually remove any form_*.png images from the HTML output directory
+# to force them to be regenerated.
+
+FORMULA_FONTSIZE = 10
+
+# When the SEARCHENGINE tag is enable doxygen will generate a search box for the HTML output. The underlying search engine uses javascript
+# and DHTML and should work on any modern browser. Note that when using HTML help (GENERATE_HTMLHELP) or Qt help (GENERATE_QHP)
+# there is already a search function so this one should typically
+# be disabled.
+
+SEARCHENGINE = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = YES
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = YES
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+# If LATEX_HIDE_INDICES is set to YES then doxygen will not
+# include the index chapters (such as File Index, Compound Index, etc.)
+# in the output.
+
+LATEX_HIDE_INDICES = NO
+
+# If LATEX_SOURCE_CODE is set to YES then doxygen will include source code with syntax highlighting in the LaTeX output. Note that which sources are shown also depends on other settings such as SOURCE_BROWSER.
+
+LATEX_SOURCE_CODE = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimized for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assignments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation.
+
+GENERATE_XML = NO
+
+# The XML_OUTPUT tag is used to specify where the XML pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `xml' will be used as the default path.
+
+XML_OUTPUT = xml
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+# If the XML_PROGRAMLISTING tag is set to YES Doxygen will
+# dump the program listings (including syntax highlighting
+# and cross-referencing information) to the XML output. Note that
+# enabling this will significantly increase the size of the XML output.
+
+XML_PROGRAMLISTING = YES
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader.
+# This is useful
+# if you want to understand what is going on.
+# On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = NO
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_DEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH =
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS =
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed. To prevent a macro definition from being
+# undefined via #undef or recursively expanded use the := operator
+# instead of the = operator.
+
+PREDEFINED =
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse
+# the parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::additions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES option can be used to specify one or more tagfiles.
+# Optionally an initial location of the external documentation
+# can be added for each tagfile. The format of a tag file without
+# this location is as follows:
+#
+# TAGFILES = file1 file2 ...
+# Adding location for the tag files is done as follows:
+#
+# TAGFILES = file1=loc1 "file2 = loc2" ...
+# where "loc1" and "loc2" can be relative or absolute paths or
+# URLs. If a location is present for each tag, the installdox tool
+# does not have to be run to correct the links.
+# Note that each tag file must have a unique name
+# (where the name does NOT include the path)
+# If a tag file is not located in the directory in which doxygen
+# is run, you must also specify the path to the tagfile here.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = YES
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base
+# or super classes. Setting the tag to NO turns the diagrams off. Note that
+# this option is superseded by the HAVE_DOT option below. This is only a
+# fallback. It is recommended to install and use dot, since it yields more
+# powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# You can define message sequence charts within doxygen comments using the \msc
+# command. Doxygen will then run the mscgen tool (see
+# http://www.mcternan.me.uk/mscgen/) to produce the chart and insert it in the
+# documentation. The MSCGEN_PATH tag allows you to specify the directory where
+# the mscgen tool resides. If left empty the tool is assumed to be found in the
+# default search path.
+
+MSCGEN_PATH =
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = NO
+
+# By default doxygen will write a font called FreeSans.ttf to the output
+# directory and reference it in all dot files that doxygen generates. This
+# font does not include all possible unicode characters however, so when you need
+# these (or just want a differently looking font) you can specify the font name
+# using DOT_FONTNAME. You need need to make sure dot is able to find the font,
+# which can be done by putting it in a standard location or by setting the
+# DOTFONTPATH environment variable or by setting DOT_FONTPATH to the directory
+# containing the font.
+
+DOT_FONTNAME = FreeSans
+
+# The DOT_FONTSIZE tag can be used to set the size of the font of dot graphs.
+# The default size is 10pt.
+
+DOT_FONTSIZE = 10
+
+# By default doxygen will tell dot to use the output directory to look for the
+# FreeSans.ttf font (which doxygen will put there itself). If you specify a
+# different font using DOT_FONTNAME you can set the path where dot
+# can find it using this tag.
+
+DOT_FONTPATH =
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for groups, showing the direct groups dependencies
+
+GROUP_GRAPHS = YES
+
+# If the UML_LOOK tag is set to YES doxygen will generate inheritance and
+# collaboration diagrams in a style similar to the OMG's Unified Modeling
+# Language.
+
+UML_LOOK = NO
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = NO
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the CALL_GRAPH and HAVE_DOT options are set to YES then
+# doxygen will generate a call dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable call graphs
+# for selected functions only using the \callgraph command.
+
+CALL_GRAPH = NO
+
+# If the CALLER_GRAPH and HAVE_DOT tags are set to YES then
+# doxygen will generate a caller dependency graph for every global function
+# or class method. Note that enabling this option will significantly increase
+# the time of a run. So in most cases it will be better to enable caller
+# graphs for selected functions only using the \callergraph command.
+
+CALLER_GRAPH = NO
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES
+# then doxygen will show the dependencies a directory has on other directories
+# in a graphical way. The dependency relations are determined by the #include
+# relations between the files in the directories.
+
+DIRECTORY_GRAPH = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = png
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found in the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of
+# nodes that will be shown in the graph. If the number of nodes in a graph
+# becomes larger than this value, doxygen will truncate the graph, which is
+# visualized by representing a node as a red box. Note that doxygen if the
+# number of direct children of the root node in a graph is already larger than
+# DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note
+# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
+DOT_GRAPH_MAX_NODES = 50
+
+# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the
+# graphs generated by dot. A depth value of 3 means that only nodes reachable
+# from the root by following a path via at most 3 edges will be shown. Nodes
+# that lay further from the root node will be omitted. Note that setting this
+# option to 1 or 2 may greatly reduce the computation time needed for large
+# code bases. Also note that the size of a graph can be further restricted by
+# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
+MAX_DOT_GRAPH_DEPTH = 0
+
+# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+# background. This is disabled by default, because dot on Windows does not
+# seem to support this out of the box. Warning: Depending on the platform used,
+# enabling this option may lead to badly anti-aliased labels on the edges of
+# a graph (i.e. they become hard to read).
+
+DOT_TRANSPARENT = NO
+
+# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output
+# files in one run (i.e. multiple -o and -T options on the command line). This
+# makes dot run faster, but since only newer versions of dot (>1.8.10)
+# support this, this feature is disabled by default.
+
+DOT_MULTI_TARGETS = YES
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermediate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
diff --git a/scripts/fixup_blocks.php b/scripts/fixup_blocks.php
new file mode 100755
index 000000000..6b0255e72
--- /dev/null
+++ b/scripts/fixup_blocks.php
@@ -0,0 +1,76 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+$longoptions = array('dry-run', 'start=', 'end=');
+
+$helptext = <<<END_OF_HELP
+fixup_blocks.php [options]
+Finds profile blocks where the unsubscription didn't complete,
+and removes the offending subscriptions.
+
+ --dry-run look but don't touch
+
+END_OF_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+/**
+ * Fetch subscriptions that should be disallowed by a block
+ */
+function get_blocked_subs()
+{
+ $query = "SELECT subscription.* " .
+ "FROM subscription " .
+ "INNER JOIN profile_block " .
+ "ON blocker=subscribed " .
+ "AND blocked=subscriber";
+ $subscription = new Subscription();
+ $subscription->query($query);
+ return $subscription;
+}
+
+
+$dry = have_option('dry-run');
+$sub = get_blocked_subs();
+$count = $sub->N;
+while ($sub->fetch()) {
+ $subber = Profile::staticGet('id', $sub->subscriber);
+ $subbed = Profile::staticGet('id', $sub->subscribed);
+ if (!$subber || !$subbed) {
+ print "Bogus entry! $sub->subscriber subbed to $sub->subscribed\n";
+ continue;
+ }
+ print "$subber->nickname ($subber->id) blocked but subbed to $subbed->nickname ($subbed->id)";
+ if ($dry) {
+ print ": skipping; dry run\n";
+ } else {
+ Subscription::cancel($subber, $subbed);
+ print ": removed\n";
+ }
+}
+print "\n";
+
+if ($dry && $count > 0) {
+ print "Be sure to run without --dry-run to remove the bad entries!\n";
+} else {
+ print "done.\n";
+}
diff --git a/scripts/fixup_deletions.php b/scripts/fixup_deletions.php
new file mode 100755
index 000000000..07ada7f9d
--- /dev/null
+++ b/scripts/fixup_deletions.php
@@ -0,0 +1,166 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+$longoptions = array('dry-run', 'start=', 'end=');
+
+$helptext = <<<END_OF_USERROLE_HELP
+fixup_deletions.php [options]
+Finds notices posted by deleted users and cleans them up.
+Stray incompletely deleted items cause various fun problems!
+
+ --dry-run look but don't touch
+ --start=N start looking at profile_id N instead of 1
+ --end=N end looking at profile_id N instead of the max
+
+END_OF_USERROLE_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+/**
+ * Find the highest profile_id currently listed in the notice table;
+ * this field is indexed and should return very quickly.
+ *
+ * We check notice.profile_id rather than profile.id because we're
+ * looking for notices left behind after deletion; if the most recent
+ * accounts were deleted, we wouldn't have them from profile.
+ *
+ * @return int
+ * @access private
+ */
+function get_max_profile_id()
+{
+ $query = 'SELECT MAX(profile_id) AS id FROM notice';
+
+ $profile = new Profile();
+ $profile->query($query);
+
+ if ($profile->fetch()) {
+ return intval($profile->id);
+ } else {
+ die("Something went awry; could not look up max used profile_id.");
+ }
+}
+
+/**
+ * Check for profiles in the given id range that are missing, presumed deleted.
+ *
+ * @param int $start beginning profile.id, inclusive
+ * @param int $end final profile.id, inclusive
+ * @return array of integer profile.ids
+ * @access private
+ */
+function get_missing_profiles($start, $end)
+{
+ $query = sprintf("SELECT id FROM profile WHERE id BETWEEN %d AND %d",
+ $start, $end);
+
+ $profile = new Profile();
+ $profile->query($query);
+
+ $all = range($start, $end);
+ $known = array();
+ while ($row = $profile->fetch()) {
+ $known[] = intval($profile->id);
+ }
+ unset($profile);
+
+ $missing = array_diff($all, $known);
+ return $missing;
+}
+
+/**
+ * Look for stray notices from this profile and, if present, kill them.
+ *
+ * @param int $profile_id
+ * @param bool $dry if true, we won't delete anything
+ */
+function cleanup_missing_profile($profile_id, $dry)
+{
+ $notice = new Notice();
+ $notice->profile_id = $profile_id;
+ $notice->find();
+ if ($notice->N == 0) {
+ return;
+ }
+
+ $s = ($notice->N == 1) ? '' : 's';
+ print "Deleted profile $profile_id has $notice->N stray notice$s:\n";
+
+ while ($notice->fetch()) {
+ print " notice $notice->id";
+ if ($dry) {
+ print " (skipped; dry run)\n";
+ } else {
+ $victim = clone($notice);
+ try {
+ $victim->delete();
+ print " (deleted)\n";
+ } catch (Exception $e) {
+ print " FAILED: ";
+ print $e->getMessage();
+ print "\n";
+ }
+ }
+ }
+}
+
+$dry = have_option('dry-run');
+
+$max_profile_id = get_max_profile_id();
+$chunk = 1000;
+
+if (have_option('start')) {
+ $begin = intval(get_option_value('start'));
+} else {
+ $begin = 1;
+}
+if (have_option('end')) {
+ $final = min($max_profile_id, intval(get_option_value('end')));
+} else {
+ $final = $max_profile_id;
+}
+
+if ($begin < 1) {
+ die("Silly human, you can't begin before profile number 1!\n");
+}
+if ($final < $begin) {
+ die("Silly human, you can't end at $final if it's before $begin!\n");
+}
+
+// Identify missing profiles...
+for ($start = $begin; $start <= $final; $start += $chunk) {
+ $end = min($start + $chunk - 1, $final);
+
+ print "Checking for missing profiles between id $start and $end";
+ if ($dry) {
+ print " (dry run)";
+ }
+ print "...\n";
+ $missing = get_missing_profiles($start, $end);
+
+ foreach ($missing as $profile_id) {
+ cleanup_missing_profile($profile_id, $dry);
+ }
+}
+
+echo "done.\n";
+
diff --git a/scripts/fixup_status_network.php b/scripts/fixup_status_network.php
new file mode 100644
index 000000000..def1eaa88
--- /dev/null
+++ b/scripts/fixup_status_network.php
@@ -0,0 +1,37 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - the distributed open-source microblogging tool
+ * Copyright (C) 2008, 2009, StatusNet, Inc.
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <http://www.gnu.org/licenses/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+common_log(LOG_INFO, 'Beginning status_network conversion...');
+
+$sn = new Status_network();
+$sn->find();
+while ($sn->fetch()) {
+ try {
+ $sn->setTags(explode('|', $sn->tags));
+ } catch (Exception $e) {
+ common_log(LOG_ERR, $e->getMessage());
+ }
+}
+
+common_log(LOG_INFO, 'Completed status_network conversion...');
diff --git a/scripts/importtwitteratom.php b/scripts/importtwitteratom.php
index 7316f2108..c12e3b91a 100644
--- a/scripts/importtwitteratom.php
+++ b/scripts/importtwitteratom.php
@@ -102,7 +102,7 @@ function importActivityStream($user, $doc)
for ($i = $entries->length - 1; $i >= 0; $i--) {
$entry = $entries->item($i);
$activity = new Activity($entry, $feed);
- $object = $activity->object;
+ $object = $activity->objects[0];
if (!have_option('q', 'quiet')) {
print $activity->content . "\n";
}
diff --git a/scripts/install_cli.php b/scripts/install_cli.php
new file mode 100755
index 000000000..61fbe18ef
--- /dev/null
+++ b/scripts/install_cli.php
@@ -0,0 +1,217 @@
+#!/usr/bin/env php
+<?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/>.
+ *
+ * @category Installation
+ * @package Installation
+ *
+ * @author Brion Vibber <brion@status.net>
+ * @license GNU Affero General Public License http://www.gnu.org/licenses/
+ * @version 0.9.x
+ * @link http://status.net
+ */
+
+if (php_sapi_name() !== 'cli') {
+ exit(1);
+}
+
+define('INSTALLDIR', dirname(dirname(__FILE__)));
+set_include_path(get_include_path() . PATH_SEPARATOR . INSTALLDIR . '/extlib');
+
+require_once INSTALLDIR . '/lib/installer.php';
+require_once 'Console/Getopt.php';
+
+class CliInstaller extends Installer
+{
+ public $verbose = true;
+
+ /**
+ * Go for it!
+ * @return boolean success
+ */
+ function main()
+ {
+ if (!$this->checkPrereqs()) {
+ return false;
+ }
+ if ($this->prepare()) {
+ return $this->handle();
+ } else {
+ $this->showHelp();
+ return false;
+ }
+ }
+
+ /**
+ * Get our input parameters...
+ * @return boolean success
+ */
+ function prepare()
+ {
+ $shortoptions = 'qvh';
+ $longoptions = array('quiet', 'verbose', 'help', 'skip-config');
+ $map = array(
+ '-s' => 'server',
+ '--server' => 'server',
+ '-p' => 'path',
+ '--path' => 'path',
+ '--sitename' => 'sitename',
+ '--fancy' => 'fancy',
+
+ '--dbtype' => 'dbtype',
+ '--host' => 'host',
+ '--database' => 'database',
+ '--username' => 'username',
+ '--password' => 'password',
+
+ '--admin-nick' => 'adminNick',
+ '--admin-pass' => 'adminPass',
+ '--admin-email' => 'adminEmail',
+ '--admin-updates' => 'adminUpdates'
+ );
+ foreach ($map as $arg => $target) {
+ if (substr($arg, 0, 2) == '--') {
+ $longoptions[] = substr($arg, 2) . '=';
+ } else {
+ $shortoptions .= substr($arg, 1) . ':';
+ }
+ }
+
+ $parser = new Console_Getopt();
+ $result = $parser->getopt($_SERVER['argv'], $shortoptions, $longoptions);
+ if (PEAR::isError($result)) {
+ $this->warning($result->getMessage());
+ return false;
+ }
+ list($options, $args) = $result;
+
+ // defaults
+ $this->dbtype = 'mysql';
+ $this->adminUpdates = true;
+ $this->verbose = true;
+
+ foreach ($options as $option) {
+ $arg = $option[0];
+ if (isset($map[$arg])) {
+ $var = $map[$arg];
+ $this->$var = $option[1];
+ if ($var == 'adminUpdates' || $arg == '--fancy') {
+ $this->$var = ($option[1] != 'false') && ($option[1] != 'no');
+ }
+ } else if ($arg == '--skip-config') {
+ $this->skipConfig = true;
+ } else if ($arg == 'q' || $arg == '--quiet') {
+ $this->verbose = false;
+ } else if ($arg == 'v' || $arg == '--verbose') {
+ $this->verbose = true;
+ } else if ($arg == 'h' || $arg == '--help') {
+ // will go back to show help
+ return false;
+ }
+ }
+
+ $fail = false;
+ if (empty($this->server)) {
+ $this->updateStatus("You must specify a web server for the site.", true);
+ // path is optional though
+ $fail = true;
+ }
+
+ if (!$this->validateDb()) {
+ $fail = true;
+ }
+
+ if (!$this->validateAdmin()) {
+ $fail = true;
+ }
+
+ return !$fail;
+ }
+
+ function handle()
+ {
+ return $this->doInstall();
+ }
+
+ function showHelp()
+ {
+ echo <<<END_HELP
+install_cli.php - StatusNet command-line installer
+
+ -s --server=<name> Use <name> as server name (required)
+ -p --path=<path> Use <path> as path name
+ --sitename User-friendly site name (required)
+ --fancy Whether to use fancy URLs (default no)
+
+ --dbtype 'mysql' (default) or 'pgsql'
+ --host Database hostname (required)
+ --database Database/schema name (required)
+ --username Database username (required)
+ --password Database password (required)
+
+ --admin-nick Administrator nickname (required)
+ --admin-pass Initial password for admin user (required)
+ --admin-email Initial email address for admin user
+ --admin-updates 'yes' (default) or 'no', whether to subscribe
+ admin to update@status.net (default yes)
+
+ --skip-config Don't write a config.php -- use with caution,
+ requires a global configuration file.
+
+ General options:
+
+ -q --quiet Quiet (little output)
+ -v --verbose Verbose (lots of output)
+ -h --help Show this message and quit.
+
+END_HELP;
+ }
+
+ function warning($message, $submessage='')
+ {
+ print $this->html2text($message) . "\n";
+ if ($submessage != '') {
+ print " " . $this->html2text($submessage) . "\n";
+ }
+ print "\n";
+ }
+
+ function updateStatus($status, $error=false)
+ {
+ if ($this->verbose || $error) {
+ if ($error) {
+ print "ERROR: ";
+ }
+ print $this->html2text($status);
+ print "\n";
+ }
+ }
+
+ private function html2text($html)
+ {
+ // break out any links for text legibility
+ $breakout = preg_replace('/<a[^>+]\bhref="(.*)"[^>]*>(.*)<\/a>/',
+ '\2 &lt;\1&gt;',
+ $html);
+ return html_entity_decode(strip_tags($breakout));
+ }
+}
+
+$installer = new CliInstaller();
+$ok = $installer->main();
+exit($ok ? 0 : 1);
diff --git a/scripts/setconfig.php b/scripts/setconfig.php
index fe0e46d65..401dda0f2 100755
--- a/scripts/setconfig.php
+++ b/scripts/setconfig.php
@@ -20,8 +20,8 @@
define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
-$shortoptions = 'd';
-$longoptions = array('delete');
+$shortoptions = 'da';
+$longoptions = array('delete', 'all');
$helptext = <<<END_OF_SETCONFIG_HELP
setconfig.php [options] [section] [setting] <value>
@@ -35,22 +35,34 @@ With no args, lists all currently set values.
<value> value to set (optional)
-d --delete delete the setting (no value)
+ -a --all list all configuration, not just the database values
END_OF_SETCONFIG_HELP;
require_once INSTALLDIR.'/scripts/commandline.inc';
if (empty($args)) {
- $count = 0;
- $config = new Config();
- $config->find();
- while ($config->fetch()) {
- $count++;
- printf("%-20s %-20s %s\n", $config->section, $config->setting,
- var_export($config->value, true));
- }
- if ($count == 0) {
- print "No configuration set in database for this site.\n";
+ if (have_option('a', 'all')) {
+ foreach ($config as $section => $section_value) {
+ foreach ($section_value as $setting => $value) {
+ if (have_option('v', 'verbose') || !is_array($value)) {
+ # Don't print array's without the verbose flag
+ printf("%-20s %-20s %s\n", $section, $setting, var_export($value, true));
+ }
+ }
+ }
+ } else {
+ $count = 0;
+ $config = new Config();
+ $config->find();
+ while ($config->fetch()) {
+ $count++;
+ printf("%-20s %-20s %s\n", $config->section, $config->setting,
+ var_export($config->value, true));
+ }
+ if ($count == 0) {
+ print "No configuration set in database for this site.\n";
+ }
}
exit(0);
}
diff --git a/scripts/settag.php b/scripts/settag.php
index e91d5eb50..ca260f7bf 100644
--- a/scripts/settag.php
+++ b/scripts/settag.php
@@ -33,32 +33,33 @@ END_OF_SETTAG_HELP;
require_once INSTALLDIR.'/scripts/commandline.inc';
-if (count($args) != 2) {
+if (count($args) < 1) {
show_help();
exit(1);
}
$nickname = $args[0];
-$tag = strtolower($args[1]);
-
$sn = Status_network::memGet('nickname', $nickname);
if (empty($sn)) {
- print "No such site.\n";
+ print "No such site ($nickname).\n";
exit(-1);
}
$tags = $sn->getTags();
+if (count($args) == 1) {
+ print(implode(', ', $tags) . "\n");
+ exit(0);
+}
+$tag = $args[1];
$i = array_search($tag, $tags);
if ($i !== false) {
if (have_option('d', 'delete')) { // Delete
unset($tags[$i]);
- $orig = clone($sn);
- $sn->tags = implode('|', $tags);
- $result = $sn->update($orig);
+ $result = $sn->setTags($tags);
if (!$result) {
print "Couldn't update.\n";
exit(-1);
@@ -73,9 +74,7 @@ if ($i !== false) {
exit(-1);
} else {
$tags[] = $tag;
- $orig = clone($sn);
- $sn->tags = implode('|', $tags);
- $result = $sn->update($orig);
+ $result = $sn->setTags($tags);
if (!$result) {
print "Couldn't update.\n";
exit(-1);
diff --git a/scripts/setup_status_network.sh b/scripts/setup_status_network.sh
index 4ebb696c7..3dd739030 100755
--- a/scripts/setup_status_network.sh
+++ b/scripts/setup_status_network.sh
@@ -44,8 +44,8 @@ mysql -h $DBHOST -u $ADMIN --password=$ADMINPASS $SITEDB << ENDOFCOMMANDS
GRANT ALL ON $database.* TO '$username'@'localhost' IDENTIFIED BY '$password';
GRANT ALL ON $database.* TO '$username'@'%' IDENTIFIED BY '$password';
-INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created, tags)
-VALUES ('$nickname', '$DBHOSTNAME', '$username', '$password', '$database', '$sitename', now(), '$tags');
+INSERT INTO status_network (nickname, dbhost, dbuser, dbpass, dbname, sitename, created)
+VALUES ('$nickname', '$DBHOSTNAME', '$username', '$password', '$database', '$sitename', now());
ENDOFCOMMANDS
@@ -56,6 +56,8 @@ done
php $PHPBASE/scripts/checkschema.php -s"$server"
+php $PHPBASE/scripts/settag.php -s"$server" "$nickname" "$tags"
+
php $PHPBASE/scripts/registeruser.php \
-s"$server" \
-n"$nickname" \
diff --git a/scripts/showplugins.php b/scripts/showplugins.php
new file mode 100755
index 000000000..058393b0e
--- /dev/null
+++ b/scripts/showplugins.php
@@ -0,0 +1,38 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+foreach (StatusNet::getActivePlugins() as $data) {
+ list($plugin, $args) = $data;
+ echo "$plugin: ";
+ if ($args === null) {
+ echo "(no args)\n";
+ } else {
+ foreach ($args as $arg => $val) {
+ echo "\n $arg: ";
+ var_export($val);
+ }
+ echo "\n";
+ }
+ echo "\n";
+}
diff --git a/scripts/strip_geo.php b/scripts/strip_geo.php
new file mode 100755
index 000000000..b3f27be61
--- /dev/null
+++ b/scripts/strip_geo.php
@@ -0,0 +1,122 @@
+#!/usr/bin/env php
+<?php
+/*
+ * StatusNet - a 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/>.
+ */
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+
+$shortoptions = 'i::n::y';
+$longoptions = array('id=', 'nickname=', 'yes', 'dry-run', 'all');
+
+$helptext = <<<END_OF_HELP
+strip_geo.php [options]
+Removes geolocation info from the given user's notices.
+
+ -i --id ID of the user (may be a remote profile)
+ -n --nickname nickname of the user
+ -y --yes do not wait for confirmation
+ --dry-run list affected notices without deleting
+ --all run over and decache all messages, even if they don't
+ have geo data now (helps to fix cache bugs)
+
+END_OF_HELP;
+
+require_once INSTALLDIR.'/scripts/commandline.inc';
+
+if (have_option('i', 'id')) {
+ $id = get_option_value('i', 'id');
+ $profile = Profile::staticGet('id', $id);
+ if (empty($profile)) {
+ print "Can't find local or remote profile with ID $id\n";
+ exit(1);
+ }
+} else if (have_option('n', 'nickname')) {
+ $nickname = get_option_value('n', 'nickname');
+ $user = User::staticGet('nickname', $nickname);
+ if (empty($user)) {
+ print "Can't find local user with nickname '$nickname'\n";
+ exit(1);
+ }
+ $profile = $user->getProfile();
+} else {
+ print "You must provide either an ID or a nickname.\n\n";
+ show_help();
+ exit(1);
+}
+
+if (!have_option('y', 'yes') && !have_option('--dry-run')) {
+ print "About to PERMANENTLY remove geolocation data from user '{$profile->nickname}' ({$profile->id})'s notices. Are you sure? [y/N] ";
+ $response = fgets(STDIN);
+ if (strtolower(trim($response)) != 'y') {
+ print "Aborting.\n";
+ exit(0);
+ }
+}
+
+// @fixme for a very prolific poster this could be too many.
+$notice = new Notice();
+$notice->profile_id = $profile->id;
+if (have_option('--all')) {
+ print "Finding all notices by $profile->nickname...";
+} else {
+ print "Finding notices by $profile->nickname with geolocation data...";
+ $notice->whereAdd("lat != ''");
+}
+$notice->find();
+
+if ($notice->N) {
+ print " $notice->N found.\n";
+ while ($notice->fetch()) {
+ print "notice id $notice->id ";
+ if (have_option('v') || have_option('--verbose')) {
+ print "({$notice->lat},{$notice->lon}) ";
+ if ($notice->location_ns) {
+ print "ns {$notice->location_ns} id {$notice->location_id} ";
+ }
+ }
+ if (have_option('--dry-run')) {
+ // sucka
+ echo "(skipped)";
+ } else {
+ // note: setting fields to null and calling update() doesn't save the nulled fields
+ $orig = clone($notice);
+ $update = clone($notice);
+
+ // In theory we could hit a chunk of notices at once in the UPDATE,
+ // but we're going to have to decache them individually anyway and
+ // it doesn't hurt to make sure we don't hold up replication with
+ // what might be a very slow single UPDATE.
+ $query = sprintf('UPDATE notice ' .
+ 'SET lat=NULL,lon=NULL,location_ns=NULL,location_id=NULL ' .
+ 'WHERE id=%d', $notice->id);
+ $ok = $update->query($query);
+ if ($ok) {
+ // And now we decache him manually, as query() doesn't know what we're doing...
+ $orig->decache();
+ echo "(removed)";
+ } else {
+ echo "(unchanged?)";
+ }
+ }
+ print "\n";
+ }
+} else {
+ print " none found.\n";
+}
+
+print "DONE.\n";
diff --git a/scripts/update_po_templates.php b/scripts/update_po_templates.php
index 0bfa62a22..af9ed8d20 100755
--- a/scripts/update_po_templates.php
+++ b/scripts/update_po_templates.php
@@ -34,7 +34,7 @@ function update_core($dir, $domain)
xgettext \
--from-code=UTF-8 \
--default-domain=$domain \
- --output=locale/$domain.po \
+ --output=locale/$domain.pot \
--language=PHP \
--add-comments=TRANS \
--keyword="_m:1,1t" \
@@ -64,7 +64,7 @@ function do_update_plugin($dir, $domain)
xgettext \
--from-code=UTF-8 \
--default-domain=$domain \
- --output=locale/$domain.po \
+ --output=locale/$domain.pot \
--language=PHP \
--add-comments=TRANS \
--keyword='' \
diff --git a/scripts/update_translations.php b/scripts/update_translations.php
index 45fe460a0..89d937e9d 100755
--- a/scripts/update_translations.php
+++ b/scripts/update_translations.php
@@ -31,7 +31,7 @@ define('LACONICA', true); // compatibility
require_once(INSTALLDIR . '/lib/common.php');
// Master StatusNet .pot file location (created by update_pot.sh)
-$statusnet_pot = INSTALLDIR . '/locale/statusnet.po';
+$statusnet_pot = INSTALLDIR . '/locale/statusnet.pot';
set_time_limit(60);
@@ -98,7 +98,7 @@ foreach ($languages as $language) {
$new_file = curl_get_file($file_url);
if ($new_file === FALSE) {
- echo "Couldn't retrieve .po file for $code: $file_url\n";
+ echo "Could not retrieve .po file for $code: $file_url\n";
continue;
}
diff --git a/tests/ActivityGenerationTests.php b/tests/ActivityGenerationTests.php
new file mode 100644
index 000000000..b9e74a570
--- /dev/null
+++ b/tests/ActivityGenerationTests.php
@@ -0,0 +1,592 @@
+<?php
+
+if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) {
+ print "This script must be run from the command line\n";
+ exit();
+}
+
+// XXX: we should probably have some common source for this stuff
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+
+require_once INSTALLDIR . '/lib/common.php';
+
+class ActivityGenerationTests extends PHPUnit_Framework_TestCase
+{
+ var $author1 = null;
+ var $author2 = null;
+
+ var $targetUser1 = null;
+ var $targetUser2 = null;
+
+ var $targetGroup1 = null;
+ var $targetGroup2 = null;
+
+ function __construct()
+ {
+ parent::__construct();
+
+ $authorNick1 = 'activitygenerationtestsuser' . common_good_rand(4);
+ $authorNick2 = 'activitygenerationtestsuser' . common_good_rand(4);
+
+ $targetNick1 = 'activitygenerationteststarget' . common_good_rand(4);
+ $targetNick2 = 'activitygenerationteststarget' . common_good_rand(4);
+
+ $groupNick1 = 'activitygenerationtestsgroup' . common_good_rand(4);
+ $groupNick2 = 'activitygenerationtestsgroup' . common_good_rand(4);
+
+ $this->author1 = User::register(array('nickname' => $authorNick1,
+ 'email' => $authorNick1 . '@example.net',
+ 'email_confirmed' => true));
+
+ $this->author2 = User::register(array('nickname' => $authorNick2,
+ 'email' => $authorNick2 . '@example.net',
+ 'email_confirmed' => true));
+
+ $this->targetUser1 = User::register(array('nickname' => $targetNick1,
+ 'email' => $targetNick1 . '@example.net',
+ 'email_confirmed' => true));
+
+ $this->targetUser2 = User::register(array('nickname' => $targetNick2,
+ 'email' => $targetNick2 . '@example.net',
+ 'email_confirmed' => true));
+
+ $this->targetGroup1 = User_group::register(array('nickname' => $groupNick1,
+ 'userid' => $this->author1->id,
+ 'aliases' => array(),
+ 'local' => true,
+ 'location' => null,
+ 'description' => null,
+ 'fullname' => null,
+ 'homepage' => null,
+ 'mainpage' => null));
+ $this->targetGroup2 = User_group::register(array('nickname' => $groupNick2,
+ 'userid' => $this->author1->id,
+ 'aliases' => array(),
+ 'local' => true,
+ 'location' => null,
+ 'description' => null,
+ 'fullname' => null,
+ 'homepage' => null,
+ 'mainpage' => null));
+ }
+
+ public function testBasicNoticeActivity()
+ {
+ $notice = $this->_fakeNotice();
+
+ $entry = $notice->asAtomEntry(true);
+
+ $element = $this->_entryToElement($entry, false);
+
+ $this->assertEquals($notice->uri, ActivityUtils::childContent($element, 'id'));
+ $this->assertEquals($notice->content, ActivityUtils::childContent($element, 'title'));
+ $this->assertEquals($notice->rendered, ActivityUtils::childContent($element, 'content'));
+ $this->assertEquals(strtotime($notice->created), strtotime(ActivityUtils::childContent($element, 'published')));
+ $this->assertEquals(strtotime($notice->created), strtotime(ActivityUtils::childContent($element, 'updated')));
+ $this->assertEquals(ActivityVerb::POST, ActivityUtils::childContent($element, 'verb', Activity::SPEC));
+ $this->assertEquals(ActivityObject::NOTE, ActivityUtils::childContent($element, 'object-type', Activity::SPEC));
+ }
+
+ public function testNamespaceFlag()
+ {
+ $notice = $this->_fakeNotice();
+
+ $entry = $notice->asAtomEntry(true);
+
+ $element = $this->_entryToElement($entry, false);
+
+ $this->assertTrue($element->hasAttribute('xmlns'));
+ $this->assertTrue($element->hasAttribute('xmlns:thr'));
+ $this->assertTrue($element->hasAttribute('xmlns:georss'));
+ $this->assertTrue($element->hasAttribute('xmlns:activity'));
+ $this->assertTrue($element->hasAttribute('xmlns:media'));
+ $this->assertTrue($element->hasAttribute('xmlns:poco'));
+ $this->assertTrue($element->hasAttribute('xmlns:ostatus'));
+ $this->assertTrue($element->hasAttribute('xmlns:statusnet'));
+
+ $entry = $notice->asAtomEntry(false);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertFalse($element->hasAttribute('xmlns'));
+ $this->assertFalse($element->hasAttribute('xmlns:thr'));
+ $this->assertFalse($element->hasAttribute('xmlns:georss'));
+ $this->assertFalse($element->hasAttribute('xmlns:activity'));
+ $this->assertFalse($element->hasAttribute('xmlns:media'));
+ $this->assertFalse($element->hasAttribute('xmlns:poco'));
+ $this->assertFalse($element->hasAttribute('xmlns:ostatus'));
+ $this->assertFalse($element->hasAttribute('xmlns:statusnet'));
+ }
+
+ public function testSourceFlag()
+ {
+ $notice = $this->_fakeNotice();
+
+ // Test with no source
+
+ $entry = $notice->asAtomEntry(false, false);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $source = ActivityUtils::child($element, 'source');
+
+ $this->assertNull($source);
+
+ // Test with source
+
+ $entry = $notice->asAtomEntry(false, true);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $source = ActivityUtils::child($element, 'source');
+
+ $this->assertNotNull($source);
+ }
+
+ public function testSourceContent()
+ {
+ $notice = $this->_fakeNotice();
+ // make a time difference!
+ sleep(2);
+ $notice2 = $this->_fakeNotice();
+
+ $entry = $notice->asAtomEntry(false, true);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $source = ActivityUtils::child($element, 'source');
+
+ $atomUrl = common_local_url('ApiTimelineUser', array('id' => $this->author1->id, 'format' => 'atom'));
+
+ $profile = $this->author1->getProfile();
+
+ $this->assertEquals($atomUrl, ActivityUtils::childContent($source, 'id'));
+ $this->assertEquals($atomUrl, ActivityUtils::getLink($source, 'self', 'application/atom+xml'));
+ $this->assertEquals($profile->profileurl, ActivityUtils::getPermalink($source));
+ $this->assertEquals(strtotime($notice2->created), strtotime(ActivityUtils::childContent($source, 'updated')));
+ // XXX: do we care here?
+ $this->assertFalse(is_null(ActivityUtils::childContent($source, 'title')));
+ $this->assertEquals(common_config('license', 'url'), ActivityUtils::getLink($source, 'license'));
+ }
+
+ public function testAuthorFlag()
+ {
+ $notice = $this->_fakeNotice();
+
+ // Test with no author
+
+ $entry = $notice->asAtomEntry(false, false, false);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertNull(ActivityUtils::child($element, 'author'));
+ $this->assertNull(ActivityUtils::child($element, 'actor', Activity::SPEC));
+
+ // Test with source
+
+ $entry = $notice->asAtomEntry(false, false, true);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $author = ActivityUtils::child($element, 'author');
+ $actor = ActivityUtils::child($element, 'actor', Activity::SPEC);
+
+ $this->assertFalse(is_null($author));
+ $this->assertFalse(is_null($actor));
+ }
+
+ public function testAuthorContent()
+ {
+ $notice = $this->_fakeNotice();
+
+ // Test with author
+
+ $entry = $notice->asAtomEntry(false, false, true);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $author = ActivityUtils::child($element, 'author');
+
+ $this->assertEquals($this->author1->nickname, ActivityUtils::childContent($author, 'name'));
+ $this->assertEquals($this->author1->uri, ActivityUtils::childContent($author, 'uri'));
+ }
+
+ public function testActorContent()
+ {
+ $notice = $this->_fakeNotice();
+
+ // Test with author
+
+ $entry = $notice->asAtomEntry(false, false, true);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $actor = ActivityUtils::child($element, 'actor', Activity::SPEC);
+
+ $this->assertEquals($this->author1->uri, ActivityUtils::childContent($actor, 'id'));
+ $this->assertEquals($this->author1->nickname, ActivityUtils::childContent($actor, 'title'));
+ }
+
+ public function testReplyLink()
+ {
+ $orig = $this->_fakeNotice($this->targetUser1);
+
+ $text = "@" . $this->targetUser1->nickname . " reply text " . common_good_rand(4);
+
+ $reply = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null, 'reply_to' => $orig->id));
+
+ $entry = $reply->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $irt = ActivityUtils::child($element, 'in-reply-to', 'http://purl.org/syndication/thread/1.0');
+
+ $this->assertNotNull($irt);
+ $this->assertEquals($orig->uri, $irt->getAttribute('ref'));
+ $this->assertEquals($orig->bestUrl(), $irt->getAttribute('href'));
+ }
+
+ public function testReplyAttention()
+ {
+ $orig = $this->_fakeNotice($this->targetUser1);
+
+ $text = "@" . $this->targetUser1->nickname . " reply text " . common_good_rand(4);
+
+ $reply = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null, 'reply_to' => $orig->id));
+
+ $entry = $reply->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertEquals($this->targetUser1->uri, ActivityUtils::getLink($element, 'ostatus:attention'));
+ $this->assertEquals($this->targetUser1->uri, ActivityUtils::getLink($element, 'mentioned'));
+ }
+
+ public function testMultipleReplyAttention()
+ {
+ $orig = $this->_fakeNotice($this->targetUser1);
+
+ $text = "@" . $this->targetUser1->nickname . " reply text " . common_good_rand(4);
+
+ $reply = Notice::saveNew($this->targetUser2->id, $text, 'test', array('uri' => null, 'reply_to' => $orig->id));
+
+ $text = "@" . $this->targetUser1->nickname . " @" . $this->targetUser2->nickname . " reply text " . common_good_rand(4);
+
+ $reply2 = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null, 'reply_to' => $reply->id));
+
+ $entry = $reply2->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $links = ActivityUtils::getLinks($element, 'ostatus:attention');
+
+ $this->assertEquals(2, count($links));
+
+ $hrefs = array();
+
+ foreach ($links as $link) {
+ $hrefs[] = $link->getAttribute('href');
+ }
+
+ $this->assertTrue(in_array($this->targetUser1->uri, $hrefs));
+ $this->assertTrue(in_array($this->targetUser2->uri, $hrefs));
+
+ $links = ActivityUtils::getLinks($element, 'mentioned');
+
+ $this->assertEquals(2, count($links));
+
+ $hrefs = array();
+
+ foreach ($links as $link) {
+ $hrefs[] = $link->getAttribute('href');
+ }
+
+ $this->assertTrue(in_array($this->targetUser1->uri, $hrefs));
+ $this->assertTrue(in_array($this->targetUser2->uri, $hrefs));
+ }
+
+ public function testGroupPostAttention()
+ {
+ $text = "!" . $this->targetGroup1->nickname . " reply text " . common_good_rand(4);
+
+ $notice = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null));
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertEquals($this->targetGroup1->uri, ActivityUtils::getLink($element, 'ostatus:attention'));
+ $this->assertEquals($this->targetGroup1->uri, ActivityUtils::getLink($element, 'mentioned'));
+ }
+
+ public function testMultipleGroupPostAttention()
+ {
+ $text = "!" . $this->targetGroup1->nickname . " !" . $this->targetGroup2->nickname . " reply text " . common_good_rand(4);
+
+ $notice = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null));
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $links = ActivityUtils::getLinks($element, 'ostatus:attention');
+
+ $this->assertEquals(2, count($links));
+
+ $hrefs = array();
+
+ foreach ($links as $link) {
+ $hrefs[] = $link->getAttribute('href');
+ }
+
+ $this->assertTrue(in_array($this->targetGroup1->uri, $hrefs));
+ $this->assertTrue(in_array($this->targetGroup2->uri, $hrefs));
+
+ $links = ActivityUtils::getLinks($element, 'mentioned');
+
+ $this->assertEquals(2, count($links));
+
+ $hrefs = array();
+
+ foreach ($links as $link) {
+ $hrefs[] = $link->getAttribute('href');
+ }
+
+ $this->assertTrue(in_array($this->targetGroup1->uri, $hrefs));
+ $this->assertTrue(in_array($this->targetGroup2->uri, $hrefs));
+ }
+
+ public function testRepeatLink()
+ {
+ $notice = $this->_fakeNotice($this->author1);
+ $repeat = $notice->repeat($this->author2->id, 'test');
+
+ $entry = $repeat->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $forward = ActivityUtils::child($element, 'forward', "http://ostatus.org/schema/1.0");
+
+ $this->assertNotNull($forward);
+ $this->assertEquals($notice->uri, $forward->getAttribute('ref'));
+ $this->assertEquals($notice->bestUrl(), $forward->getAttribute('href'));
+ }
+
+ public function testTag()
+ {
+ $tag1 = common_good_rand(4);
+
+ $notice = $this->_fakeNotice($this->author1, '#' . $tag1);
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $category = ActivityUtils::child($element, 'category');
+
+ $this->assertNotNull($category);
+ $this->assertEquals($tag1, $category->getAttribute('term'));
+ }
+
+ public function testMultiTag()
+ {
+ $tag1 = common_good_rand(4);
+ $tag2 = common_good_rand(4);
+
+ $notice = $this->_fakeNotice($this->author1, '#' . $tag1 . ' #' . $tag2);
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $categories = $element->getElementsByTagName('category');
+
+ $this->assertNotNull($categories);
+ $this->assertEquals(2, $categories->length);
+
+ $terms = array();
+
+ for ($i = 0; $i < $categories->length; $i++) {
+ $cat = $categories->item($i);
+ $terms[] = $cat->getAttribute('term');
+ }
+
+ $this->assertTrue(in_array($tag1, $terms));
+ $this->assertTrue(in_array($tag2, $terms));
+ }
+
+ public function testGeotaggedActivity()
+ {
+ $notice = Notice::saveNew($this->author1->id, common_good_rand(4), 'test', array('uri' => null, 'lat' => 45.5, 'lon' => -73.6));
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertEquals('45.5 -73.6', ActivityUtils::childContent($element, 'point', "http://www.georss.org/georss"));
+ }
+
+ public function testNoticeInfo()
+ {
+ $notice = $this->_fakeNotice();
+
+ $entry = $notice->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals($notice->id, $noticeInfo->getAttribute('local_id'));
+ $this->assertEquals($notice->source, $noticeInfo->getAttribute('source'));
+ $this->assertEquals('', $noticeInfo->getAttribute('repeat_of'));
+ $this->assertEquals('', $noticeInfo->getAttribute('repeated'));
+ $this->assertEquals('', $noticeInfo->getAttribute('favorite'));
+ $this->assertEquals('', $noticeInfo->getAttribute('source_link'));
+ }
+
+ public function testNoticeInfoRepeatOf()
+ {
+ $notice = $this->_fakeNotice();
+
+ $repeat = $notice->repeat($this->author2->id, 'test');
+
+ $entry = $repeat->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals($notice->id, $noticeInfo->getAttribute('repeat_of'));
+ }
+
+ public function testNoticeInfoRepeated()
+ {
+ $notice = $this->_fakeNotice();
+
+ $repeat = $notice->repeat($this->author2->id, 'test');
+
+ $entry = $notice->asAtomEntry(false, false, false, $this->author2);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals('true', $noticeInfo->getAttribute('repeated'));
+
+ $entry = $notice->asAtomEntry(false, false, false, $this->targetUser1);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals('false', $noticeInfo->getAttribute('repeated'));
+ }
+
+ public function testNoticeInfoFave()
+ {
+ $notice = $this->_fakeNotice();
+
+ $fave = Fave::addNew($this->author2->getProfile(), $notice);
+
+ // Should be set if user has faved
+
+ $entry = $notice->asAtomEntry(false, false, false, $this->author2);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals('true', $noticeInfo->getAttribute('favorite'));
+
+ // Shouldn't be set if user has not faved
+
+ $entry = $notice->asAtomEntry(false, false, false, $this->targetUser1);
+
+ $element = $this->_entryToElement($entry, true);
+
+ $noticeInfo = ActivityUtils::child($element, 'notice_info', "http://status.net/schema/api/1/");
+
+ $this->assertEquals('false', $noticeInfo->getAttribute('favorite'));
+ }
+
+ public function testConversationLink()
+ {
+ $orig = $this->_fakeNotice($this->targetUser1);
+
+ $text = "@" . $this->targetUser1->nickname . " reply text " . common_good_rand(4);
+
+ $reply = Notice::saveNew($this->author1->id, $text, 'test', array('uri' => null, 'reply_to' => $orig->id));
+
+ $conv = Conversation::staticGet('id', $reply->conversation);
+
+ $entry = $reply->asAtomEntry();
+
+ $element = $this->_entryToElement($entry, true);
+
+ $this->assertEquals($conv->uri, ActivityUtils::getLink($element, 'ostatus:conversation'));
+ }
+
+ function __destruct()
+ {
+ if (!is_null($this->author1)) {
+ $this->author1->delete();
+ }
+
+ if (!is_null($this->author2)) {
+ $this->author2->delete();
+ }
+
+ if (!is_null($this->targetUser1)) {
+ $this->targetUser1->delete();
+ }
+
+ if (!is_null($this->targetUser2)) {
+ $this->targetUser2->delete();
+ }
+
+ if (!is_null($this->targetGroup1)) {
+ $this->targetGroup1->delete();
+ }
+
+ if (!is_null($this->targetGroup2)) {
+ $this->targetGroup2->delete();
+ }
+ }
+
+ private function _fakeNotice($user = null, $text = null)
+ {
+ if (empty($user)) {
+ $user = $this->author1;
+ }
+
+ if (empty($text)) {
+ $text = "fake-o text-o " . common_good_rand(32);
+ }
+
+ return Notice::saveNew($user->id, $text, 'test', array('uri' => null));
+ }
+
+ private function _entryToElement($entry, $namespace = false)
+ {
+ $xml = '<?xml version="1.0" encoding="utf-8"?>'."\n\n";
+ $xml .= '<feed';
+ if ($namespace) {
+ $xml .= ' xmlns="http://www.w3.org/2005/Atom"';
+ $xml .= ' xmlns:thr="http://purl.org/syndication/thread/1.0"';
+ $xml .= ' xmlns:georss="http://www.georss.org/georss"';
+ $xml .= ' xmlns:activity="http://activitystrea.ms/spec/1.0/"';
+ $xml .= ' xmlns:media="http://purl.org/syndication/atommedia"';
+ $xml .= ' xmlns:poco="http://portablecontacts.net/spec/1.0"';
+ $xml .= ' xmlns:ostatus="http://ostatus.org/schema/1.0"';
+ $xml .= ' xmlns:statusnet="http://status.net/schema/api/1/"';
+ }
+ $xml .= '>' . "\n" . $entry . "\n" . '</feed>' . "\n";
+ $doc = DOMDocument::loadXML($xml);
+ $feed = $doc->documentElement;
+ $entries = $feed->getElementsByTagName('entry');
+
+ return $entries->item(0);
+ }
+}
diff --git a/tests/ActivityParseTests.php b/tests/ActivityParseTests.php
index 9d8fd47af..378478d74 100644
--- a/tests/ActivityParseTests.php
+++ b/tests/ActivityParseTests.php
@@ -22,14 +22,26 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
$this->assertFalse(empty($act));
- $this->assertEquals($act->time, 1243860840);
- $this->assertEquals($act->verb, ActivityVerb::POST);
+ $this->assertEquals(1243860840, $act->time);
+ $this->assertEquals(ActivityVerb::POST, $act->verb);
- $this->assertFalse(empty($act->object));
- $this->assertEquals($act->object->title, 'Punctuation Changeset');
- $this->assertEquals($act->object->type, 'http://versioncentral.example.org/activity/changeset');
- $this->assertEquals($act->object->summary, 'Fixing punctuation because it makes it more readable.');
- $this->assertEquals($act->object->id, 'tag:versioncentral.example.org,2009:/change/1643245');
+ $this->assertFalse(empty($act->objects[0]));
+ $this->assertEquals('Punctuation Changeset', $act->objects[0]->title);
+ $this->assertEquals('http://versioncentral.example.org/activity/changeset', $act->objects[0]->type);
+ $this->assertEquals('Fixing punctuation because it makes it more readable.', $act->objects[0]->summary);
+ $this->assertEquals('tag:versioncentral.example.org,2009:/change/1643245', $act->objects[0]->id);
+ }
+
+ public function testExample2()
+ {
+ global $_example2;
+ $dom = DOMDocument::loadXML($_example2);
+ $act = new Activity($dom->documentElement);
+
+ $this->assertFalse(empty($act));
+ // Did we handle <content type="html"> correctly with a typical payload?
+ $this->assertEquals("<p>Geraldine posted a Photo on PhotoPanic</p>\n " .
+ "<img src=\"/geraldine/photo1.jpg\">", trim($act->content));
}
public function testExample3()
@@ -46,22 +58,22 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
$act = new Activity($entry, $feed);
$this->assertFalse(empty($act));
- $this->assertEquals($act->time, 1071340202);
- $this->assertEquals($act->link, 'http://example.org/2003/12/13/atom03.html');
+ $this->assertEquals(1071340202, $act->time);
+ $this->assertEquals('http://example.org/2003/12/13/atom03.html', $act->link);
$this->assertEquals($act->verb, ActivityVerb::POST);
$this->assertFalse(empty($act->actor));
- $this->assertEquals($act->actor->type, ActivityObject::PERSON);
- $this->assertEquals($act->actor->title, 'John Doe');
- $this->assertEquals($act->actor->id, 'mailto:johndoe@example.com');
+ $this->assertEquals(ActivityObject::PERSON, $act->actor->type);
+ $this->assertEquals('John Doe', $act->actor->title);
+ $this->assertEquals('mailto:johndoe@example.com', $act->actor->id);
- $this->assertFalse(empty($act->object));
- $this->assertEquals($act->object->type, ActivityObject::NOTE);
- $this->assertEquals($act->object->id, 'urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a');
- $this->assertEquals($act->object->title, 'Atom-Powered Robots Run Amok');
- $this->assertEquals($act->object->summary, 'Some text.');
- $this->assertEquals($act->object->link, 'http://example.org/2003/12/13/atom03.html');
+ $this->assertFalse(empty($act->objects[0]));
+ $this->assertEquals(ActivityObject::NOTE, $act->objects[0]->type);
+ $this->assertEquals('urn:uuid:1225c695-cfb8-4ebb-aaaa-80da344efa6a', $act->objects[0]->id);
+ $this->assertEquals('Atom-Powered Robots Run Amok', $act->objects[0]->title);
+ $this->assertEquals('Some text.', $act->objects[0]->summary);
+ $this->assertEquals('http://example.org/2003/12/13/atom03.html', $act->objects[0]->link);
$this->assertFalse(empty($act->context));
@@ -90,8 +102,8 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
$this->assertEquals('http://example.net/conversation/11', $act->context->conversation);
$this->assertEquals(array('http://example.net/user/1'), $act->context->attention);
- $this->assertFalse(empty($act->object));
- $this->assertEquals($act->object->content,
+ $this->assertFalse(empty($act->objects[0]));
+ $this->assertEquals($act->objects[0]->content,
'@<span class="vcard"><a href="http://example.net/user/1" class="url"><span class="fn nickname">evan</span></a></span> now is the time for all good men to come to the aid of their country. #<span class="tag"><a href="http://example.net/tag/thetime" rel="tag">thetime</a></span>');
$this->assertFalse(empty($act->actor));
@@ -207,7 +219,7 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
$this->assertTrue(is_array($actor->avatarLinks));
$this->assertEquals(1, count($actor->avatarLinks));
$this->assertEquals('http://files.posterous.com/user_profile_pics/480326/2009-08-05-142447.jpg',
- $actor->avatarLinks[0]);
+ $actor->avatarLinks[0]->url);
$this->assertNotNull($actor->poco);
$this->assertEquals('evanpro', $actor->poco->preferredUsername);
$this->assertEquals('Evan Prodromou', $actor->poco->displayName);
@@ -215,6 +227,161 @@ class ActivityParseTests extends PHPUnit_Framework_TestCase
$this->assertNull($actor->poco->address);
$this->assertEquals(0, count($actor->poco->urls));
}
+
+ // Media test - cliqset
+ public function testExample8()
+ {
+ global $_example8;
+ $dom = DOMDocument::loadXML($_example8);
+
+ $feed = $dom->documentElement;
+
+ $entries = $feed->getElementsByTagName('entry');
+
+ $entry = $entries->item(0);
+
+ $act = new Activity($entry, $feed);
+
+ $this->assertFalse(empty($act));
+ $this->assertEquals($act->time, 1269221753);
+ $this->assertEquals($act->verb, ActivityVerb::POST);
+ $this->assertEquals($act->summary, 'zcopley posted 5 photos on Flickr');
+
+ $this->assertFalse(empty($act->objects));
+ $this->assertEquals(sizeof($act->objects), 5);
+
+ $this->assertEquals($act->objects[0]->type, ActivityObject::PHOTO);
+ $this->assertEquals($act->objects[0]->title, 'IMG_1368');
+ $this->assertNull($act->objects[0]->description);
+ $this->assertEquals(
+ $act->objects[0]->thumbnail,
+ 'http://media.cliqset.com/6f6fbee9d7dfbffc73b6ef626275eb5f_thumb.jpg'
+ );
+ $this->assertEquals(
+ $act->objects[0]->link,
+ 'http://www.flickr.com/photos/zcopley/4452933806/'
+ );
+
+ $this->assertEquals($act->objects[1]->type, ActivityObject::PHOTO);
+ $this->assertEquals($act->objects[1]->title, 'IMG_1365');
+ $this->assertNull($act->objects[1]->description);
+ $this->assertEquals(
+ $act->objects[1]->thumbnail,
+ 'http://media.cliqset.com/b8f3932cd0bba1b27f7c8b3ef986915e_thumb.jpg'
+ );
+ $this->assertEquals(
+ $act->objects[1]->link,
+ 'http://www.flickr.com/photos/zcopley/4442630390/'
+ );
+
+ $this->assertEquals($act->objects[2]->type, ActivityObject::PHOTO);
+ $this->assertEquals($act->objects[2]->title, 'Classic');
+ $this->assertEquals(
+ $act->objects[2]->description,
+ '-Powered by pikchur.com/n0u'
+ );
+ $this->assertEquals(
+ $act->objects[2]->thumbnail,
+ 'http://media.cliqset.com/fc54c15f850b7a9a8efa644087a48c91_thumb.jpg'
+ );
+ $this->assertEquals(
+ $act->objects[2]->link,
+ 'http://www.flickr.com/photos/zcopley/4430754103/'
+ );
+
+ $this->assertEquals($act->objects[3]->type, ActivityObject::PHOTO);
+ $this->assertEquals($act->objects[3]->title, 'IMG_1363');
+ $this->assertNull($act->objects[3]->description);
+
+ $this->assertEquals(
+ $act->objects[3]->thumbnail,
+ 'http://media.cliqset.com/4b1d307c9217e2114391a8b229d612cb_thumb.jpg'
+ );
+ $this->assertEquals(
+ $act->objects[3]->link,
+ 'http://www.flickr.com/photos/zcopley/4416969717/'
+ );
+
+ $this->assertEquals($act->objects[4]->type, ActivityObject::PHOTO);
+ $this->assertEquals($act->objects[4]->title, 'IMG_1361');
+ $this->assertNull($act->objects[4]->description);
+
+ $this->assertEquals(
+ $act->objects[4]->thumbnail,
+ 'http://media.cliqset.com/23d9b4b96b286e0347d36052f22f6e60_thumb.jpg'
+ );
+ $this->assertEquals(
+ $act->objects[4]->link,
+ 'http://www.flickr.com/photos/zcopley/4417734232/'
+ );
+
+ }
+
+ public function testAtomContent()
+ {
+ $tests = array(array("<content>Some regular plain text.</content>",
+ "Some regular plain text."),
+ array("<content>&lt;b&gt;this is not HTML&lt;/b&gt;</content>",
+ "&lt;b&gt;this is not HTML&lt;/b&gt;"),
+ array("<content type='html'>Some regular plain HTML.</content>",
+ "Some regular plain HTML."),
+ array("<content type='html'>&lt;b&gt;this is too HTML&lt;/b&gt;</content>",
+ "<b>this is too HTML</b>"),
+ array("<content type='html'>&amp;lt;b&amp;gt;but this is not HTML!&amp;lt;/b&amp;gt;</content>",
+ "&lt;b&gt;but this is not HTML!&lt;/b&gt;"),
+ array("<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>Some regular plain XHTML.</div></content>",
+ "Some regular plain XHTML."),
+ array("<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'><b>This is some XHTML!</b></div></content>",
+ "<b>This is some XHTML!</b>"),
+ array("<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>&lt;b&gt;This is not some XHTML!&lt;/b&gt;</div></content>",
+ "&lt;b&gt;This is not some XHTML!&lt;/b&gt;"),
+ array("<content type='xhtml'><div xmlns='http://www.w3.org/1999/xhtml'>&amp;lt;b&amp;gt;This is not some XHTML either!&amp;lt;/b&amp;gt;</div></content>",
+ "&amp;lt;b&amp;gt;This is not some XHTML either!&amp;lt;/b&amp;gt;"));
+ foreach ($tests as $data) {
+ list($source, $output) = $data;
+ $xml = "<entry xmlns='http://www.w3.org/2005/Atom'>" .
+ "<id>http://example.com/fakeid</id>" .
+ "<author><name>Test</name></author>" .
+ "<title>Atom content tests</title>" .
+ $source .
+ "</entry>";
+ $dom = DOMDocument::loadXML($xml);
+ $act = new Activity($dom->documentElement);
+
+ $this->assertFalse(empty($act));
+ $this->assertEquals($output, trim($act->content));
+ }
+ }
+
+ public function testRssContent()
+ {
+ $tests = array(array("<content:encoded>Some regular plain HTML.</content:encoded>",
+ "Some regular plain HTML."),
+ array("<content:encoded>Some &lt;b&gt;exciting bold HTML&lt;/b&gt;</content:encoded>",
+ "Some <b>exciting bold HTML</b>"),
+ array("<content:encoded>Some &amp;lt;b&amp;gt;escaped non-HTML.&amp;lt;/b&amp;gt;</content:encoded>",
+ "Some &lt;b&gt;escaped non-HTML.&lt;/b&gt;"),
+ array("<description>Some plain text.</description>",
+ "Some plain text."),
+ array("<description>Some &lt;b&gt;non-HTML text&lt;/b&gt;</description>",
+ "Some &lt;b&gt;non-HTML text&lt;/b&gt;"),
+ array("<description>Some &amp;lt;b&amp;gt;double-escaped text&amp;lt;/b&amp;gt;</description>",
+ "Some &amp;lt;b&amp;gt;double-escaped text&amp;lt;/b&amp;gt;"));
+ foreach ($tests as $data) {
+ list($source, $output) = $data;
+ $xml = "<item xmlns:content='http://purl.org/rss/1.0/modules/content/'>" .
+ "<guid>http://example.com/fakeid</guid>" .
+ "<title>RSS content tests</title>" .
+ $source .
+ "</item>";
+ $dom = DOMDocument::loadXML($xml);
+ $act = new Activity($dom->documentElement);
+
+ $this->assertFalse(empty($act));
+ $this->assertEquals($output, trim($act->content));
+ }
+ }
+
}
$_example1 = <<<EXAMPLE1
@@ -508,3 +675,120 @@ $_example7 = <<<EXAMPLE7
</channel>
</rss>
EXAMPLE7;
+
+$_example8 = <<<EXAMPLE8
+<?xml version="1.0"?>
+<feed xmlns="http://www.w3.org/2005/Atom">
+ <link href="http://pubsubhubbub.appspot.com/" rel="hub"/>
+ <title type="text">Activity Stream for: zcopley</title>
+ <id>http://cliqset.com/feed/atom?uid=zcopley</id>
+ <entry xmlns:service="http://activitystrea.ms/service-provider" xmlns:activity="http://activitystrea.ms/spec/1.0/">
+ <thr:total xmlns:thr="http://purl.org/syndication/thread/1.0">0</thr:total>
+ <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
+ <published>2010-03-22T01:35:53.000Z</published>
+ <service:provider>
+ <name>flickr</name>
+ <uri>http://flickr.com</uri>
+ <icon>http://cliqset-services.s3.amazonaws.com/flickr.png</icon>
+ </service:provider>
+ <activity:object>
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <title type="text">IMG_1368</title>
+ <link type="image/jpeg" rel="preview" href="http://media.cliqset.com/6f6fbee9d7dfbffc73b6ef626275eb5f_thumb.jpg"/>
+ <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/zcopley/4452933806/"/>
+ </activity:object>
+ <activity:object>
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <title type="text">IMG_1365</title>
+ <link type="image/jpeg" rel="preview" href="http://media.cliqset.com/b8f3932cd0bba1b27f7c8b3ef986915e_thumb.jpg"/>
+ <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/zcopley/4442630390/"/>
+ </activity:object>
+ <activity:object xmlns:media="http://purl.org/syndication/atommedia">
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <title type="text">Classic</title>
+ <link type="image/jpeg" rel="preview" href="http://media.cliqset.com/fc54c15f850b7a9a8efa644087a48c91_thumb.jpg"/>
+ <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/zcopley/4430754103/"/>
+ <media:description type="text">-Powered by pikchur.com/n0u</media:description>
+ </activity:object>
+ <activity:object>
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <title type="text">IMG_1363</title>
+ <link type="image/jpeg" rel="preview" href="http://media.cliqset.com/4b1d307c9217e2114391a8b229d612cb_thumb.jpg"/>
+ <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/zcopley/4416969717/"/>
+ </activity:object>
+ <activity:object>
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <title type="text">IMG_1361</title>
+ <link type="image/jpeg" rel="preview" href="http://media.cliqset.com/23d9b4b96b286e0347d36052f22f6e60_thumb.jpg"/>
+ <link rel="alternate" type="text/html" href="http://www.flickr.com/photos/zcopley/4417734232/"/>
+ </activity:object>
+ <title type="text">zcopley posted some photos on Flickr</title>
+ <summary type="text">zcopley posted 5 photos on Flickr</summary>
+ <category scheme="http://schemas.cliqset.com/activity/categories/1.0" term="PhotoPosted" label="Photo Posted"/>
+ <updated>2010-03-22T20:46:42.778Z</updated>
+ <id>tag:cliqset.com,2010-03-22:/user/zcopley/SVgAZubGhtAnSAee</id>
+ <link href="http://cliqset.com/user/zcopley/SVgAZubGhtAnSAee" type="text/xhtml" rel="alternate" title="zcopley posted some photos on Flickr"/>
+ <author>
+ <name>zcopley</name>
+ <uri>http://cliqset.com/user/zcopley</uri>
+ </author>
+ <activity:actor xmlns:poco="http://portablecontacts.net/spec/1.0">
+ <activity:object-type>http://activitystrea.ms/schema/1.0/person</activity:object-type>
+ <id>zcopley</id>
+ <poco:name>
+ <poco:givenName>Zach</poco:givenName>
+ <poco:familyName>Copley</poco:familyName>
+ </poco:name>
+ <link xmlns:media="http://purl.org/syndication/atommedia" type="image/png" rel="avatar" href="http://dynamic.cliqset.com/avatar/zcopley?s=80" media:height="80" media:width="80"/>
+ <link xmlns:media="http://purl.org/syndication/atommedia" type="image/png" rel="avatar" href="http://dynamic.cliqset.com/avatar/zcopley?s=120" media:height="120" media:width="120"/>
+ <link xmlns:media="http://purl.org/syndication/atommedia" type="image/png" rel="avatar" href="http://dynamic.cliqset.com/avatar/zcopley?s=200" media:height="200" media:width="200"/>
+ </activity:actor>
+ </entry>
+</feed>
+EXAMPLE8;
+
+$_example9 = <<<EXAMPLE9
+<?xml version="1.0" encoding="utf-8"?>
+<feed xmlns="http://www.w3.org/2005/Atom" xmlns:thr="http://purl.org/syndication/thread/1.0" xmlns:media="http://search.yahoo.com/mrss" xmlns:activity="http://activitystrea.ms/spec/1.0/">
+ <link rel="self" type="application/atom+xml" href="http://buzz.googleapis.com/feeds/117848251937215158042/public/posted"/>
+ <link rel="hub" href="http://pubsubhubbub.appspot.com/"/>
+ <title type="text">Google Buzz</title>
+ <updated>2010-03-22T01:55:53.596Z</updated>
+ <id>tag:google.com,2009:buzz-feed/public/posted/117848251937215158042</id>
+ <generator>Google - Google Buzz</generator>
+ <entry>
+ <title type="html">Buzz by Zach Copley from Flickr</title>
+ <summary type="text">IMG_1366</summary>
+ <published>2010-03-18T04:29:23.000Z</published>
+ <updated>2010-03-18T05:14:03.325Z</updated>
+ <id>tag:google.com,2009:buzz/z12zwdhxowq2d13q204cjr04kzu0cns5gh0</id>
+ <link rel="alternate" type="text/html" href="http://www.google.com/buzz/117848251937215158042/ZU7b6mHJEmC/IMG-1366"/>
+ <author>
+ <name>Zach Copley</name>
+ <uri>http://www.google.com/profiles/zcopley</uri>
+ </author>
+ <content type="html">&lt;div&gt;IMG_1366&lt;/div&gt;</content>
+ <link rel="enclosure" href="http://www.flickr.com/photos/22823034@N00/4442630700" type="image/jpeg" title="IMG_1366"/>
+ <media:content url="http://www.flickr.com/photos/22823034@N00/4442630700" type="image/jpeg" medium="image">
+ <media:title>IMG_1366</media:title>
+ <media:player url="http://farm5.static.flickr.com/4053/4442630700_980b19a1a6_o.jpg" height="1600" width="1200"/>
+ </media:content>
+ <link rel="enclosure" href="http://www.flickr.com/photos/22823034@N00/4442630390" type="image/jpeg" title="IMG_1365"/>
+ <media:content url="http://www.flickr.com/photos/22823034@N00/4442630390" type="image/jpeg" medium="image">
+ <media:title>IMG_1365</media:title>
+ <media:player url="http://farm5.static.flickr.com/4043/4442630390_62da5560ae_o.jpg" height="1200" width="1600"/>
+ </media:content>
+ <activity:verb>http://activitystrea.ms/schema/1.0/post</activity:verb>
+ <activity:object>
+ <activity:object-type>http://activitystrea.ms/schema/1.0/photo</activity:object-type>
+ <id>tag:google.com,2009:buzz/z12zwdhxowq2d13q204cjr04kzu0cns5gh0</id>
+ <title>Buzz by Zach Copley from Flickr</title>
+ <content type="html">&lt;div&gt;IMG_1366&lt;/div&gt;</content>
+ <link rel="enclosure" href="http://www.flickr.com/photos/22823034@N00/4442630700" type="image/jpeg" title="IMG_1366"/>
+ <link rel="enclosure" href="http://www.flickr.com/photos/22823034@N00/4442630390" type="image/jpeg" title="IMG_1365"/>
+ </activity:object>
+ <link rel="replies" type="application/atom+xml" href="http://buzz.googleapis.com/feeds/117848251937215158042/comments/z12zwdhxowq2d13q204cjr04kzu0cns5gh0" thr:count="0"/>
+ <thr:total>0</thr:total>
+ </entry>
+</feed>
+EXAMPLE9;
diff --git a/tests/JidValidateTest.php b/tests/JidValidateTest.php
new file mode 100644
index 000000000..9f5901139
--- /dev/null
+++ b/tests/JidValidateTest.php
@@ -0,0 +1,146 @@
+<?php
+
+if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) {
+ print "This script must be run from the command line\n";
+ exit();
+}
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+define('LACONICA', true);
+
+mb_internal_encoding('UTF-8'); // @fixme this probably belongs in common.php?
+
+require_once INSTALLDIR . '/lib/common.php';
+require_once INSTALLDIR . '/lib/jabber.php';
+
+class JidValidateTest extends PHPUnit_Framework_TestCase
+{
+ /**
+ * @dataProvider validationCases
+ *
+ */
+ public function testValidate($jid, $validFull, $validBase)
+ {
+ $this->assertEquals($validFull, jabber_valid_full_jid($jid), "validating as full or base JID");
+
+ $this->assertEquals($validBase, jabber_valid_base_jid($jid), "validating as base JID only");
+ }
+
+ /**
+ * @dataProvider normalizationCases
+ *
+ */
+ public function testNormalize($jid, $expected)
+ {
+ $this->assertEquals($expected, jabber_normalize_jid($jid));
+ }
+
+ /**
+ * @dataProvider domainCheckCases()
+ */
+ public function testDomainCheck($domain, $expected, $note)
+ {
+ $this->assertEquals($expected, jabber_check_domain($domain), $note);
+ }
+
+ static public function validationCases()
+ {
+ $long1023 = "long1023" . str_repeat('x', 1023 - 8);
+ $long1024 = "long1024" . str_repeat('x', 1024 - 8);
+ return array(
+ // Our own test cases for standard things & those mentioned in bug reports
+ // (jid, valid_full, valid_base)
+ array('user@example.com', true, true),
+ array('user@example.com/resource', true, false),
+ array('user with spaces@example.com', false, false), // not kosher
+
+ array('user.@example.com', true, true), // "common in intranets"
+ array('example.com', true, true),
+ array('example.com/resource', true, false),
+ array('jabchat', true, true),
+
+ array("$long1023@$long1023/$long1023", true, false), // max 1023 "bytes" per portion per spec. Do they really mean bytes though?
+ array("$long1024@$long1023/$long1023", false, false),
+ array("$long1023@$long1024/$long1023", false, false),
+ array("$long1023@$long1023/$long1024", false, false),
+
+ // Borrowed from test_jabber_jutil.c in libpurple
+ array("gmail.com", true, true),
+ array("gmail.com/Test", true, false),
+ array("gmail.com/Test@", true, false),
+ array("gmail.com/@", true, false),
+ array("gmail.com/Test@alkjaweflkj", true, false),
+ array("mark.doliner@gmail.com", true, true),
+ array("mark.doliner@gmail.com/Test12345", true, false),
+ array("mark.doliner@gmail.com/Test@12345", true, false),
+ array("mark.doliner@gmail.com/Te/st@12@//345", true, false),
+ array("ã‚ã„ã©@conference.jabber.org", true, true),
+ array("ã¾ã‚Šã‚‹ãƒ¼ã‚€@conference.jabber.org", true, true),
+ array("mark.doliner@gmail.com/ã¾ã‚Šã‚‹ãƒ¼ã‚€", true, false),
+ array("mark.doliner@gmail/stuff.org", true, false),
+ array("stuart@nödåtXäYZ.se", true, true),
+ array("stuart@nödÃ¥tXäYZ.se/ã¾ã‚Šã‚‹ãƒ¼ã‚€", true, false),
+ array("mark.doliner@ã‚ã„ã©.org", true, true),
+ array("nick@ã¾ã¤.ãŠãŠã‹ã¿.net", true, true),
+ array("paul@10.0.42.230/s", true, false),
+ array("paul@[::1]", true, true), /* IPv6 */
+ array("paul@[2001:470:1f05:d58::2]", true, true),
+ array("paul@[2001:470:1f05:d58::2]/foo", true, false),
+ array("pa=ul@10.0.42.230", true, true),
+ array("pa,ul@10.0.42.230", true, true),
+
+ array("@gmail.com", false, false),
+ array("@@gmail.com", false, false),
+ array("mark.doliner@@gmail.com/Test12345", false, false),
+ array("mark@doliner@gmail.com/Test12345", false, false),
+ array("@gmail.com/Test@12345", false, false),
+ array("/Test@12345", false, false),
+ array("mark.doliner@", false, false),
+ array("mark.doliner/", false, false),
+ array("mark.doliner@gmail_stuff.org", false, false),
+ array("mark.doliner@gmail[stuff.org", false, false),
+ array("mark.doliner@gmail\\stuff.org", false, false),
+ array("paul@[::1]124", false, false),
+ array("paul@2[::1]124/as", false, false),
+ array("paul@ã¾ã¤.ãŠãŠã‹ã¿/\x01", false, false),
+
+ /*
+ * RFC 3454 Section 6 reads, in part,
+ * "If a string contains any RandALCat character, the
+ * string MUST NOT contain any LCat character."
+ * The character is U+066D (ARABIC FIVE POINTED STAR).
+ */
+ // Leaving this one commented out for the moment
+ // as it shouldn't hurt anything for our purposes.
+ //array("foo@example.com/Ù­simplexeÙ­", false, false)
+ );
+ }
+
+ static public function normalizationCases()
+ {
+ return array(
+ // Borrowed from test_jabber_jutil.c in libpurple
+ array('PaUL@DaRkRain42.org', 'paul@darkrain42.org'),
+ array('PaUL@DaRkRain42.org/', 'paul@darkrain42.org'),
+ array('PaUL@DaRkRain42.org/resource', 'paul@darkrain42.org'),
+
+ // Also adapted from libpurple tests...
+ array('Ф@darkrain42.org', 'ф@darkrain42.org'),
+ array('paul@Ó¨arkrain.org', 'paul@Ó©arkrain.org'),
+ );
+ }
+
+ static public function domainCheckCases()
+ {
+ return array(
+ array('gmail.com', true, 'known SRV record'),
+ array('jabber.org', true, 'known SRV record'),
+ array('status.net', true, 'known SRV record'),
+ array('status.leuksman.com', true, 'known no SRV record but valid domain'),
+ );
+ }
+
+
+}
+
diff --git a/tests/MediaFileTest.php b/tests/MediaFileTest.php
new file mode 100644
index 000000000..a76a4f45e
--- /dev/null
+++ b/tests/MediaFileTest.php
@@ -0,0 +1,96 @@
+<?php
+
+if (isset($_SERVER) && array_key_exists('REQUEST_METHOD', $_SERVER)) {
+ print "This script must be run from the command line\n";
+ exit();
+}
+
+define('INSTALLDIR', realpath(dirname(__FILE__) . '/..'));
+define('STATUSNET', true);
+define('LACONICA', true);
+
+require_once INSTALLDIR . '/lib/common.php';
+
+class MediaFileTest extends PHPUnit_Framework_TestCase
+{
+
+ public function setup()
+ {
+ $this->old_attachments_supported = common_config('attachments', 'supported');
+ $GLOBALS['config']['attachments']['supported'] = true;
+ }
+
+ public function tearDown()
+ {
+ $GLOBALS['config']['attachments']['supported'] = $this->old_attachments_supported;
+ }
+
+ /**
+ * @dataProvider fileTypeCases
+ *
+ */
+ public function testFileType($filename, $expectedType)
+ {
+ if (!file_exists($filename)) {
+ throw new Exception("WTF? $filename test file missing");
+ }
+
+ $type = MediaFile::getUploadedFileType($filename, basename($filename));
+ $this->assertEquals($expectedType, $type);
+ }
+
+ /**
+ * @dataProvider fileTypeCases
+ *
+ */
+ public function testUploadedFileType($filename, $expectedType)
+ {
+ if (!file_exists($filename)) {
+ throw new Exception("WTF? $filename test file missing");
+ }
+ $tmp = tmpfile();
+ fwrite($tmp, file_get_contents($filename));
+
+ $type = MediaFile::getUploadedFileType($tmp, basename($filename));
+ $this->assertEquals($expectedType, $type);
+ }
+
+ static public function fileTypeCases()
+ {
+ $base = dirname(__FILE__);
+ $dir = "$base/sample-uploads";
+ $files = array(
+ "image.png" => "image/png",
+ "image.gif" => "image/gif",
+ "image.jpg" => "image/jpeg",
+ "image.jpeg" => "image/jpeg",
+
+ "office.pdf" => "application/pdf",
+
+ "wordproc.odt" => "application/vnd.oasis.opendocument.text",
+ "wordproc.ott" => "application/vnd.oasis.opendocument.text-template",
+ "wordproc.doc" => "application/msword",
+ "wordproc.docx" => "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
+ "wordproc.rtf" => "text/rtf",
+
+ "spreadsheet.ods" => "application/vnd.oasis.opendocument.spreadsheet",
+ "spreadsheet.ots" => "application/vnd.oasis.opendocument.spreadsheet-template",
+ "spreadsheet.xls" => "application/vnd.ms-excel",
+ "spreadsheet.xlt" => "application/vnd.ms-excel",
+ "spreadsheet.xlsx" => "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
+
+ "presentation.odp" => "application/vnd.oasis.opendocument.presentation",
+ "presentation.otp" => "application/vnd.oasis.opendocument.presentation-template",
+ "presentation.ppt" => "application/vnd.ms-powerpoint",
+ "presentation.pptx" => "application/vnd.openxmlformats-officedocument.presentationml.presentation",
+ );
+
+ $dataset = array();
+ foreach ($files as $file => $type) {
+ $dataset[] = array("$dir/$file", $type);
+ }
+ return $dataset;
+ }
+
+}
+
diff --git a/tests/UserFeedParseTest.php b/tests/UserFeedParseTest.php
index b3f9a6417..208e71be6 100644
--- a/tests/UserFeedParseTest.php
+++ b/tests/UserFeedParseTest.php
@@ -66,11 +66,11 @@ class UserFeedParseTests extends PHPUnit_Framework_TestCase
// test the post
//var_export($act1);
- $this->assertEquals($act1->object->type, 'http://activitystrea.ms/schema/1.0/note');
- $this->assertEquals($act1->object->title, 'And now for something completely insane...');
+ $this->assertEquals($act1->objects[0]->type, 'http://activitystrea.ms/schema/1.0/note');
+ $this->assertEquals($act1->objects[0]->title, 'And now for something completely insane...');
- $this->assertEquals($act1->object->content, 'And now for something completely insane...');
- $this->assertEquals($act1->object->id, 'http://localhost/statusnet/notice/3');
+ $this->assertEquals($act1->objects[0]->content, 'And now for something completely insane...');
+ $this->assertEquals($act1->objects[0]->id, 'http://localhost/statusnet/notice/3');
}
diff --git a/tests/sample-uploads/image.gif b/tests/sample-uploads/image.gif
new file mode 100644
index 000000000..b636f4b8d
--- /dev/null
+++ b/tests/sample-uploads/image.gif
Binary files differ
diff --git a/tests/sample-uploads/image.jpeg b/tests/sample-uploads/image.jpeg
new file mode 100644
index 000000000..21fcb5aef
--- /dev/null
+++ b/tests/sample-uploads/image.jpeg
Binary files differ
diff --git a/tests/sample-uploads/image.jpg b/tests/sample-uploads/image.jpg
new file mode 100644
index 000000000..21fcb5aef
--- /dev/null
+++ b/tests/sample-uploads/image.jpg
Binary files differ
diff --git a/tests/sample-uploads/image.png b/tests/sample-uploads/image.png
new file mode 100644
index 000000000..60cbcfd17
--- /dev/null
+++ b/tests/sample-uploads/image.png
Binary files differ
diff --git a/tests/sample-uploads/office.pdf b/tests/sample-uploads/office.pdf
new file mode 100644
index 000000000..670bc2343
--- /dev/null
+++ b/tests/sample-uploads/office.pdf
Binary files differ
diff --git a/tests/sample-uploads/presentation.odp b/tests/sample-uploads/presentation.odp
new file mode 100644
index 000000000..8dd3a428b
--- /dev/null
+++ b/tests/sample-uploads/presentation.odp
Binary files differ
diff --git a/tests/sample-uploads/presentation.otp b/tests/sample-uploads/presentation.otp
new file mode 100644
index 000000000..1927ee79d
--- /dev/null
+++ b/tests/sample-uploads/presentation.otp
Binary files differ
diff --git a/tests/sample-uploads/presentation.pot b/tests/sample-uploads/presentation.pot
new file mode 100644
index 000000000..f5124ffa2
--- /dev/null
+++ b/tests/sample-uploads/presentation.pot
Binary files differ
diff --git a/tests/sample-uploads/presentation.potm b/tests/sample-uploads/presentation.potm
new file mode 100644
index 000000000..ade1bcb10
--- /dev/null
+++ b/tests/sample-uploads/presentation.potm
Binary files differ
diff --git a/tests/sample-uploads/presentation.ppt b/tests/sample-uploads/presentation.ppt
new file mode 100644
index 000000000..f5124ffa2
--- /dev/null
+++ b/tests/sample-uploads/presentation.ppt
Binary files differ
diff --git a/tests/sample-uploads/presentation.pptx b/tests/sample-uploads/presentation.pptx
new file mode 100644
index 000000000..21ea61a15
--- /dev/null
+++ b/tests/sample-uploads/presentation.pptx
Binary files differ
diff --git a/tests/sample-uploads/spreadsheet.ods b/tests/sample-uploads/spreadsheet.ods
new file mode 100644
index 000000000..7b43e7507
--- /dev/null
+++ b/tests/sample-uploads/spreadsheet.ods
Binary files differ
diff --git a/tests/sample-uploads/spreadsheet.ots b/tests/sample-uploads/spreadsheet.ots
new file mode 100644
index 000000000..5f830e6de
--- /dev/null
+++ b/tests/sample-uploads/spreadsheet.ots
Binary files differ
diff --git a/tests/sample-uploads/spreadsheet.xls b/tests/sample-uploads/spreadsheet.xls
new file mode 100644
index 000000000..2d470e687
--- /dev/null
+++ b/tests/sample-uploads/spreadsheet.xls
Binary files differ
diff --git a/tests/sample-uploads/spreadsheet.xlsx b/tests/sample-uploads/spreadsheet.xlsx
new file mode 100644
index 000000000..b97a551f8
--- /dev/null
+++ b/tests/sample-uploads/spreadsheet.xlsx
Binary files differ
diff --git a/tests/sample-uploads/spreadsheet.xlt b/tests/sample-uploads/spreadsheet.xlt
new file mode 100644
index 000000000..980423b20
--- /dev/null
+++ b/tests/sample-uploads/spreadsheet.xlt
Binary files differ
diff --git a/tests/sample-uploads/wordproc.doc b/tests/sample-uploads/wordproc.doc
new file mode 100644
index 000000000..81c5e34c6
--- /dev/null
+++ b/tests/sample-uploads/wordproc.doc
Binary files differ
diff --git a/tests/sample-uploads/wordproc.docx b/tests/sample-uploads/wordproc.docx
new file mode 100644
index 000000000..04ea3c3ec
--- /dev/null
+++ b/tests/sample-uploads/wordproc.docx
Binary files differ
diff --git a/tests/sample-uploads/wordproc.odt b/tests/sample-uploads/wordproc.odt
new file mode 100644
index 000000000..fa6fe5e9f
--- /dev/null
+++ b/tests/sample-uploads/wordproc.odt
Binary files differ
diff --git a/tests/sample-uploads/wordproc.ott b/tests/sample-uploads/wordproc.ott
new file mode 100644
index 000000000..99ca8c068
--- /dev/null
+++ b/tests/sample-uploads/wordproc.ott
Binary files differ
diff --git a/tests/sample-uploads/wordproc.rtf b/tests/sample-uploads/wordproc.rtf
new file mode 100644
index 000000000..aad2c4605
--- /dev/null
+++ b/tests/sample-uploads/wordproc.rtf
@@ -0,0 +1,16 @@
+{\rtf1\ansi\deff0\adeflang1025
+{\fonttbl{\f0\froman\fprq2\fcharset128 Times New Roman;}{\f1\froman\fprq2\fcharset128 Times New Roman;}{\f2\fswiss\fprq2\fcharset128 Arial;}{\f3\fnil\fprq2\fcharset128 DejaVu Sans;}}
+{\colortbl;\red0\green0\blue0;\red128\green128\blue128;}
+{\stylesheet{\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\loch\f0\fs24\lang1033\snext1 Normal;}
+{\s2\sb240\sa120\keepn\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\afs28\lang1081\ltrch\dbch\langfe2052\hich\f2\fs28\lang1033\loch\f2\fs28\lang1033\sbasedon1\snext3 Heading;}
+{\s3\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\loch\f0\fs24\lang1033\sbasedon1\snext3 Body Text;}
+{\s4\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\loch\f0\fs24\lang1033\sbasedon3\snext4 List;}
+{\s5\sb120\sa120\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ai\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\i\loch\f0\fs24\lang1033\i\sbasedon1\snext5 caption;}
+{\s6\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\loch\f0\fs24\lang1033\sbasedon1\snext6 Index;}
+}
+{\info{\author Brion }{\creatim\yr2010\mo5\dy10\hr15\min2}{\revtim\yr0\mo0\dy0\hr0\min0}{\printim\yr0\mo0\dy0\hr0\min0}{\comment StarWriter}{\vern3200}}\deftab709
+{\*\pgdsctbl
+{\pgdsc0\pgdscuse195\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\pgdscnxt0 Standard;}}
+\paperh15840\paperw12240\margl1134\margr1134\margt1134\margb1134\sectd\sbknone\pgwsxn12240\pghsxn15840\marglsxn1134\margrsxn1134\margtsxn1134\margbsxn1134\ftnbj\ftnstart1\ftnrstcont\ftnnar\aenddoc\aftnrstcont\aftnstart1\aftnnrlc
+\pard\plain \ltrpar\s1\cf0{\*\hyphen2\hyphlead2\hyphtrail2\hyphmax0}\rtlch\af3\afs24\lang1081\ltrch\dbch\af3\langfe2052\hich\f0\fs24\lang1033\loch\f0\fs24\lang1033
+\par } \ No newline at end of file
diff --git a/theme/base/css/display.css b/theme/base/css/display.css
index 782d3dc71..f48bdf55e 100644
--- a/theme/base/css/display.css
+++ b/theme/base/css/display.css
@@ -7,6 +7,7 @@
* @link http://status.net/
*/
+@media screen, projection, tv {
* { margin:0; padding:0; }
img { display:block; border:0; }
a abbr { cursor: pointer; border-bottom:0; }
@@ -857,6 +858,9 @@ display:inline;
display:inline;
margin-right:7px;
}
+.entity_tags li:before {
+content:'\0009';
+}
.aside .section {
margin-bottom:29px;
@@ -925,7 +929,7 @@ display:inline;
}
.profile .entity_profile .fn,
-.profile .entity_profile .location {
+.profile .entity_profile .label {
margin-left:11px;
margin-bottom:4px;
width:auto;
@@ -1284,7 +1288,18 @@ height:16px;
position:relative;
padding-left:16px;
}
-#attachments .attachment {
+.notice .attachment.more {
+text-indent:-9999px;
+width:16px;
+height:16px;
+display:inline-block;
+overflow:hidden;
+vertical-align:middle;
+margin-left:4px;
+}
+
+#attachments .attachment,
+.notice .attachment.more {
padding-left:0;
}
.notice .attachment img {
@@ -1326,7 +1341,7 @@ margin-bottom:0;
padding:11px;
min-height:auto;
}
-#jOverlayContent .external span {
+#jOverlayContent .entry-title {
display:block;
margin-bottom:11px;
}
@@ -1677,3 +1692,34 @@ width:auto;
#bookmarklet #wrap {
min-width:0;
}
+
+}/*end of @media screen, projection, tv*/
+
+
+@media print {
+a:after { background-color:#FFFFFF; }
+a:not([href^="#"]):after { content:" <"attr(href)"> "; }
+img { border:none; }
+p { orphans: 2; widows: 1; }
+
+#site_nav_global_primary,
+#site_nav_local_views,
+#form_notice,
+.pagination,
+#site_nav_global_secondary,
+.entity_actions,
+.notice-options,
+#aside_primary,
+.form_subscription_edit .submit {
+display:none;
+}
+.timestamp dt, .timestamp dd,
+.device dt, .device dd {
+display:inline;
+}
+.profiles li,
+.notices li {
+margin-bottom:18px;
+}
+
+}/*end of @media print*/
diff --git a/theme/base/css/print.css b/theme/base/css/print.css
deleted file mode 100644
index 094d07fed..000000000
--- a/theme/base/css/print.css
+++ /dev/null
@@ -1,36 +0,0 @@
-/** theme: base
- *
- * @package StatusNet
- * @author Sarven Capadisli <csarven@status.net>
- * @copyright 2009 StatusNet, Inc.
- * @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
- * @link http://status.net/
- */
-
-a:after { background-color:#fff; }
-a:not([href^="#"]):after { content:" ( "attr(href)" ) "; }
-
-img { border:none; }
-p { orphans: 2; widows: 1; }
-
-#site_nav_global_primary,
-#site_nav_local_views,
-#form_notice,
-.pagination,
-#site_nav_global_secondary,
-.entity_actions,
-.notice-options,
-#aside_primary,
-.form_subscription_edit .submit {
-display:none;
-}
-
-.timestamp dt, .timestamp dd,
-.device dt, .device dd {
-display:inline;
-}
-
-.profiles li,
-.notices li {
-margin-bottom:18px;
-}
diff --git a/theme/base/css/thickbox.css b/theme/base/css/thickbox.css
deleted file mode 100644
index d24b9bedf..000000000
--- a/theme/base/css/thickbox.css
+++ /dev/null
@@ -1,163 +0,0 @@
-/* ----------------------------------------------------------------------------------------------------------------*/
-/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
-/* ----------------------------------------------------------------------------------------------------------------*/
-*{padding: 0; margin: 0;}
-
-/* ----------------------------------------------------------------------------------------------------------------*/
-/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
-/* ----------------------------------------------------------------------------------------------------------------*/
-#TB_window {
- font: 12px Arial, Helvetica, sans-serif;
- color: #333333;
-}
-
-#TB_secondLine {
- font: 10px Arial, Helvetica, sans-serif;
- color:#666666;
-}
-
-#TB_window a:link {color: #666666;}
-#TB_window a:visited {color: #666666;}
-#TB_window a:hover {color: #000;}
-#TB_window a:active {color: #666666;}
-#TB_window a:focus{color: #666666;}
-
-/* ----------------------------------------------------------------------------------------------------------------*/
-/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
-/* ----------------------------------------------------------------------------------------------------------------*/
-#TB_overlay {
- position: fixed;
- z-index:100;
- top: 0px;
- left: 0px;
- height:100%;
- width:100%;
-}
-
-.TB_overlayMacFFBGHack {background: url(macFFBgHack.png) repeat;}
-.TB_overlayBG {
- background-color:#000;
- filter:alpha(opacity=75);
- -moz-opacity: 0.75;
- opacity: 0.75;
-}
-
-* html #TB_overlay { /* ie6 hack */
- position: absolute;
- height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
-}
-
-#TB_window {
- position: fixed;
- background: #ffffff;
- z-index: 102;
- color:#000000;
- display:none;
- border: 4px solid #525252;
- text-align:left;
- top:50%;
- left:50%;
-}
-
-* html #TB_window { /* ie6 hack */
-position: absolute;
-margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
-}
-
-#TB_window img#TB_Image {
- display:block;
- margin: 15px 0 0 15px;
- border-right: 1px solid #ccc;
- border-bottom: 1px solid #ccc;
- border-top: 1px solid #666;
- border-left: 1px solid #666;
-}
-
-#TB_caption{
- height:25px;
- padding:7px 30px 10px 25px;
- float:left;
-}
-
-#TB_closeWindow{
- height:25px;
- padding:11px 25px 10px 0;
- float:right;
-}
-
-#TB_closeAjaxWindow{
- padding:7px 10px 5px 0;
- margin-bottom:1px;
- text-align:right;
- float:right;
-}
-
-#TB_ajaxWindowTitle{
- float:left;
- padding:7px 0 5px 10px;
- margin-bottom:1px;
-}
-
-#TB_title{
- background-color:#e8e8e8;
- height:27px;
-}
-
-#TB_ajaxContent{
- clear:both;
- padding:2px 15px 15px 15px;
- overflow:auto;
- text-align:left;
- line-height:1.4em;
-}
-
-#TB_ajaxContent.TB_modal{
- padding:15px;
-}
-
-#TB_ajaxContent p{
- padding:5px 0px 5px 0px;
-}
-
-#TB_load{
- position: fixed;
- display:none;
- height:13px;
- width:208px;
- z-index:103;
- top: 50%;
- left: 50%;
- margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
-}
-
-* html #TB_load { /* ie6 hack */
-position: absolute;
-margin-top: expression(0 - parseInt(this.offsetHeight / 2) + (TBWindowMargin = document.documentElement && document.documentElement.scrollTop || document.body.scrollTop) + 'px');
-}
-
-#TB_HideSelect{
- z-index:99;
- position:fixed;
- top: 0;
- left: 0;
- background-color:#fff;
- border:none;
- filter:alpha(opacity=0);
- -moz-opacity: 0;
- opacity: 0;
- height:100%;
- width:100%;
-}
-
-* html #TB_HideSelect { /* ie6 hack */
- position: absolute;
- height: expression(document.body.scrollHeight > document.body.offsetHeight ? document.body.scrollHeight : document.body.offsetHeight + 'px');
-}
-
-#TB_iframeContent{
- clear:both;
- border:none;
- margin-bottom:-1px;
- margin-top:1px;
- _margin-bottom:1px;
-}
diff --git a/theme/base/images/icons/icons-01.gif b/theme/base/images/icons/icons-01.gif
index bf0f1230e..e0850aa88 100644
--- a/theme/base/images/icons/icons-01.gif
+++ b/theme/base/images/icons/icons-01.gif
Binary files differ
diff --git a/theme/biz/css/base.css b/theme/biz/css/base.css
index 2c2ab33a0..f5efdb49c 100644
--- a/theme/biz/css/base.css
+++ b/theme/biz/css/base.css
@@ -1,12 +1,13 @@
/** theme: biz base
*
* @package StatusNet
- * @author Sarven Capadisli <csarven@status.net>
+ * @author Sarven Capadisli <csarven@status.net>
* @copyright 2009 StatusNet, Inc.
* @license http://www.fsf.org/licensing/licenses/agpl-3.0.html GNU Affero General Public License version 3.0
* @link http://status.net/
*/
+@media screen, projection, tv {
* { margin:0; padding:0; }
img { display:block; border:0; }
a abbr { cursor: pointer; border-bottom:0; }
@@ -848,7 +849,8 @@ margin-right:11px;
/* NOTICE */
.notice,
-.profile {
+.profile,
+.application {
position:relative;
padding-top:11px;
padding-bottom:11px;
@@ -861,10 +863,15 @@ border-top-style:dotted;
.notices li {
list-style-type:none;
}
-.notices li.hover {
-border-radius:4px;
--moz-border-radius:4px;
--webkit-border-radius:4px;
+.notices .notices {
+margin-top:7px;
+margin-left:2%;
+width:98%;
+float:left;
+}
+.mark-top {
+border-top-width:1px;
+border-top-style:solid;
}
/* NOTICES */
@@ -995,25 +1002,22 @@ text-transform:lowercase;
.dialogbox {
position:absolute;
-top:-4px;
-right:29px;
+top:-1px;
+right:-1px;
z-index:9;
-min-width:199px;
float:none;
-background-color:#FFF;
padding:11px;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
border-style:solid;
border-width:1px;
-border-color:#DDDDDD;
--moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7);
}
.dialogbox legend {
display:block !important;
margin-right:18px;
+margin-bottom:18px;
}
.dialogbox button.close {
@@ -1022,11 +1026,22 @@ right:3px;
top:3px;
}
+.dialogbox .form_guide {
+font-weight:normal;
+padding:0;
+}
+
.dialogbox .submit_dialogbox {
font-weight:bold;
text-indent:0;
min-width:46px;
}
+.dialogbox input {
+padding-left:4px;
+}
+.dialogbox fieldset {
+margin-bottom:0;
+}
#wrap form.processing input.submit,
.entity_actions a.processing,
@@ -1102,6 +1117,104 @@ width:16px;
height:16px;
}
+.notice .attachment {
+position:relative;
+padding-left:16px;
+}
+.notice .attachment.more {
+text-indent:-9999px;
+width:16px;
+height:16px;
+display:inline-block;
+overflow:hidden;
+vertical-align:middle;
+margin-left:4px;
+}
+
+#attachments .attachment,
+.notice .attachment.more {
+padding-left:0;
+}
+.notice .attachment img {
+position:absolute;
+top:18px;
+left:0;
+z-index:99;
+}
+#shownotice .notice .attachment img {
+position:static;
+}
+
+#attachments {
+clear:both;
+float:left;
+width:100%;
+margin-top:18px;
+}
+#attachments dt {
+font-weight:bold;
+font-size:1.3em;
+margin-bottom:4px;
+}
+
+#attachments ol li {
+margin-bottom:18px;
+list-style-type:decimal;
+float:left;
+clear:both;
+}
+
+#jOverlayContent,
+#jOverlayContent #content,
+#jOverlayContent #content_inner {
+width: auto !important;
+margin-bottom:0;
+}
+#jOverlayContent #content {
+padding:11px;
+min-height:auto;
+}
+#jOverlayContent .entry-title {
+display:block;
+margin-bottom:11px;
+}
+#jOverlayContent button {
+position:absolute;
+top:0;
+right:0;
+}
+#jOverlayContent h1 {
+max-width:425px;
+}
+#jOverlayContent #content {
+border-radius:7px;
+-moz-border-radius:7px;
+-webkit-border-radius:7px;
+}
+#jOverlayLoading {
+top:5%;
+left:40%;
+}
+#attachment_view img {
+max-width:480px;
+max-height:480px;
+}
+#attachment_view #oembed_info {
+margin-top:11px;
+}
+#attachment_view #oembed_info dt,
+#attachment_view #oembed_info dd {
+float:left;
+}
+#attachment_view #oembed_info dt {
+clear:left;
+margin-right:11px;
+font-weight:bold;
+}
+#attachment_view #oembed_info dt:after {
+content: ":";
+}
+
#usergroups #new_group {
float: left;
margin-right: 2em;
@@ -1358,3 +1471,34 @@ display:none;
.guide {
clear:both;
}
+
+}/*end of @media screen, projection, tv*/
+
+
+@media print {
+a:after { background-color:#FFFFFF; }
+a:not([href^="#"]):after { content:" <"attr(href)"> "; }
+img { border:none; }
+p { orphans: 2; widows: 1; }
+
+#site_nav_global_primary,
+#site_nav_local_views,
+#form_notice,
+.pagination,
+#site_nav_global_secondary,
+.entity_actions,
+.notice-options,
+#aside_primary,
+.form_subscription_edit .submit {
+display:none;
+}
+.timestamp dt, .timestamp dd,
+.device dt, .device dd {
+display:inline;
+}
+.profiles li,
+.notices li {
+margin-bottom:18px;
+}
+
+}/*end of @media print*/
diff --git a/theme/biz/css/display.css b/theme/biz/css/display.css
index f133ac30b..e735d8683 100644
--- a/theme/biz/css/display.css
+++ b/theme/biz/css/display.css
@@ -9,6 +9,7 @@
@import url(base.css);
+@media screen, projection, tv {
html {
background-color:#144A6E;
}
@@ -22,7 +23,7 @@ background:#144A6E url(../images/illustrations/illu_pattern-01.png) repeat-x;
}
address {
-margin-right:7.18%;
+margin-right:5.7%;
}
input, textarea, select {
@@ -205,15 +206,26 @@ button.close,
.form_user_unsubscribe input.submit,
.form_group_join input.submit,
.form_user_subscribe input.submit,
+.form_remote_authorize input.submit,
.entity_subscribe a,
.entity_moderation p,
.entity_sandbox input.submit,
.entity_silence input.submit,
.entity_delete input.submit,
+.entity_role p,
+.entity_role_administrator input.submit,
+.entity_role_moderator input.submit,
.notice-options .repeated,
.form_notice label[for=notice_data-geo],
button.minimize,
-.form_reset_key input.submit {
+.form_reset_key input.submit,
+.entity_clear input.submit,
+.entity_flag input.submit,
+.entity_flag p,
+.entity_subscribe input.submit,
+#realtime_play,
+#realtime_pause,
+#realtime_popup {
background-image:url(../../base/images/icons/icons-01.gif);
background-repeat:no-repeat;
background-color:transparent;
@@ -241,7 +253,9 @@ border-color:#FFFFFF;
#content,
#site_nav_local_views .current a,
.entity_send-a-message .form_notice,
-.entity_moderation:hover ul {
+.entity_moderation:hover ul,
+.entity_role:hover ul,
+.dialogbox {
background-color:#FFFFFF;
}
@@ -352,12 +366,37 @@ background-position: 5px -1511px;
.form_reset_key input.submit {
background-position: 5px -1973px;
}
+.entity_clear input.submit {
+background-position: 5px -2039px;
+}
+.entity_flag input.submit,
+.entity_flag p {
+background-position: 5px -2105px;
+}
+.entity_subscribe input.accept {
+background-position: 5px -2171px;
+}
+.entity_subscribe input.reject {
+background-position: 5px -2237px;
+}
+#realtime_play {
+background-position: 0 -2308px;
+}
+#realtime_pause {
+background-position: 0 -2374px;
+}
+#realtime_popup {
+background-position: 0 -1714px;
+}
/* NOTICES */
.notice .attachment {
background-position:0 -394px;
}
+.notice .attachment.more {
+background-position:0 -2770px;
+}
#attachments .attachment {
background:none;
}
@@ -380,14 +419,19 @@ background-position:0 -1582px;
background-position:0 -1648px;
}
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
+.notices li:hover .attachment.more,
.notices li:hover div.entry-content,
.notices li:hover div.notice-options {
opacity:1;
}
+.opaque {
+opacity:1 !important;
+}
div.notice-options a,
div.notice-options input {
font-family:sans-serif;
diff --git a/theme/biz/logo.png b/theme/biz/logo.png
index 550d373fe..cf1839194 100644
--- a/theme/biz/logo.png
+++ b/theme/biz/logo.png
Binary files differ
diff --git a/theme/cloudy/css/display.css b/theme/cloudy/css/display.css
index 285c2ad83..caea5cf44 100644
--- a/theme/cloudy/css/display.css
+++ b/theme/cloudy/css/display.css
@@ -7,6 +7,7 @@
* @link http://status.net/
*/
+@media screen, projection, tv {
* { margin:0; padding:0; }
img { display:block; border:0; }
a abbr { cursor: pointer; border-bottom:0; }
@@ -872,7 +873,7 @@ display:inline;
}
.profile .entity_profile .fn,
-.profile .entity_profile .location {
+.profile .entity_profile .label {
margin-left:11px;
margin-bottom:4px;
width:auto;
@@ -900,7 +901,8 @@ margin-right:11px;
/* NOTICE */
.notice,
-.profile {
+.profile,
+.application {
position:relative;
padding-top:11px;
padding-bottom:11px;
@@ -1031,25 +1033,22 @@ left:0;
.dialogbox {
position:absolute;
-top:-4px;
-right:29px;
+top:-1px;
+right:-1px;
z-index:9;
-min-width:199px;
float:none;
-background-color:#FFF;
padding:11px;
border-radius:7px;
-moz-border-radius:7px;
-webkit-border-radius:7px;
border-style:solid;
border-width:1px;
-border-color:#DDDDDD;
--moz-box-shadow:3px 7px 5px rgba(194, 194, 194, 0.7);
}
.dialogbox legend {
display:block !important;
margin-right:18px;
+margin-bottom:18px;
}
.dialogbox button.close {
@@ -1058,9 +1057,21 @@ right:3px;
top:3px;
}
+.dialogbox .form_guide {
+font-weight:normal;
+padding:0;
+}
+
.dialogbox .submit_dialogbox {
-text-indent:0;
font-weight:bold;
+text-indent:0;
+min-width:46px;
+}
+.dialogbox input {
+padding-left:4px;
+}
+.dialogbox fieldset {
+margin-bottom:0;
}
.notice-options {
@@ -1554,7 +1565,8 @@ display:none;
}
#public #core,
-#showstream #core {
+#showstream #core,
+#showgroup #core {
margin-top:10em;
}
#public.user_in #core,
@@ -1651,7 +1663,8 @@ background-color:transparent;
}
#wrap form.processing input.submit,
-.entity_actions a.processing {
+#core a.processing,
+.dialogbox.processing .submit_dialogbox {
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
cursor:wait;
text-indent:-9999px;
@@ -1806,7 +1819,9 @@ border-color:#FFFFFF;
#content,
#site_nav_local_views .current a,
.entity_send-a-message .form_notice,
-.entity_moderation:hover ul {
+.entity_moderation:hover ul,
+.entity_role:hover ul,
+.dialogbox {
background-color:#FFFFFF;
}
@@ -1938,6 +1953,9 @@ background-position: 0 -1714px;
.notice .attachment {
background-position:0 -394px;
}
+.notice .attachment.more {
+background-position:0 -2770px;
+}
#attachments .attachment {
background:none;
}
@@ -1960,10 +1978,12 @@ background-position:0 -1582px;
background-position:0 -1648px;
}
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
+.notices li:hover .attachment.more,
.notices li:hover div.entry-content,
.notices li:hover div.notice-options {
opacity:1;
@@ -2098,4 +2118,33 @@ border-left-color:#FFFFFF;
#footer {
background-color:#FFFFFF;
}
+}/*end of @media screen, projection, tv*/
+
+
+@media print {
+a:after { background-color:#FFFFFF; }
+a:not([href^="#"]):after { content:" <"attr(href)"> "; }
+img { border:none; }
+p { orphans: 2; widows: 1; }
+
+#site_nav_global_primary,
+#site_nav_local_views,
+#form_notice,
+.pagination,
+#site_nav_global_secondary,
+.entity_actions,
+.notice-options,
+#aside_primary,
+.form_subscription_edit .submit {
+display:none;
+}
+.timestamp dt, .timestamp dd,
+.device dt, .device dd {
+display:inline;
+}
+.profiles li,
+.notices li {
+margin-bottom:18px;
+}
+}/*end of @media print*/
diff --git a/theme/cloudy/logo.png b/theme/cloudy/logo.png
index 550d373fe..cf1839194 100644
--- a/theme/cloudy/logo.png
+++ b/theme/cloudy/logo.png
Binary files differ
diff --git a/theme/default/css/display.css b/theme/default/css/display.css
index d92a53965..9a1dabb51 100644
--- a/theme/default/css/display.css
+++ b/theme/default/css/display.css
@@ -9,6 +9,7 @@
@import url(../../base/css/display.css);
+@media screen, projection, tv {
body,
a:active {
background-color:#CEE1E9;
@@ -213,7 +214,7 @@ background-color:transparent;
}
#wrap form.processing input.submit,
-.entity_actions a.processing,
+#core a.processing,
.dialogbox.processing .submit_dialogbox {
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
}
@@ -410,6 +411,9 @@ background-position: 0 -1714px;
.notice .attachment {
background-position:0 -394px;
}
+.notice .attachment.more {
+background-position:0 -2770px;
+}
#attachments .attachment {
background:none;
}
@@ -432,10 +436,12 @@ background-position:0 -1582px;
background-position:0 -1648px;
}
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
+.notices li:hover .attachment.more,
.notices li:hover div.entry-content,
.notices li:hover div.notice-options {
opacity:1;
@@ -443,6 +449,7 @@ opacity:1;
.opaque {
opacity:1 !important;
}
+.attachment.more,
.notice-options a,
.notice-options input {
font-family:sans-serif;
@@ -450,6 +457,12 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
}
+.attachment.more:focus {
+box-shadow:none;
+-moz-box-shadow:none;
+-webkit-box-shadow:none;
+outline:none;
+}
#content .notices li:hover,
#content .applications li:hover,
#content tbody tr:hover {
@@ -504,3 +517,4 @@ background-position:90% 47%;
background-position:10% 47%;
}
+}/*end of @media screen, projection, tv*/
diff --git a/theme/h4ck3r/css/base.css b/theme/h4ck3r/css/base.css
index 18ea742a5..4c0e74218 100644
--- a/theme/h4ck3r/css/base.css
+++ b/theme/h4ck3r/css/base.css
@@ -7,6 +7,7 @@
* @link http://status.net/
*/
+@media screen, projection, tv {
* { margin:0; padding:0; }
img { display:block; border:0; }
a abbr { cursor: pointer; border-bottom:0; }
@@ -700,7 +701,8 @@ margin-right:11px;
/* NOTICE */
.notice,
-.profile {
+.profile,
+.application {
position:relative;
padding-top:11px;
padding-bottom:11px;
@@ -708,11 +710,21 @@ clear:both;
float:left;
width:100%;
border-top-width:1px;
-border-top-style:dashed;
+border-top-style:dotted;
}
.notices li {
list-style-type:none;
}
+.notices .notices {
+margin-top:7px;
+margin-left:2%;
+width:98%;
+float:left;
+}
+.mark-top {
+border-top-width:1px;
+border-top-style:solid;
+}
/* NOTICES */
@@ -812,74 +824,248 @@ text-transform:lowercase;
}
-.notice-options {
-padding-left:2%;
+.notice .notice-options a,
+.notice .notice-options input {
float:left;
-width:50%;
+font-size:1.025em;
+}
+
+.notice div.entry-content .timestamp {
+display:inline-block;
+}
+
+.entry-content .repeat {
+display:block;
+}
+.entry-content .repeat .photo {
+float:none;
+margin-right:1px;
+position:relative;
+top:4px;
+left:0;
+}
+
+.dialogbox {
+position:absolute;
+top:-1px;
+right:-1px;
+z-index:9;
+float:none;
+padding:11px;
+border-radius:7px;
+-moz-border-radius:7px;
+-webkit-border-radius:7px;
+border-style:solid;
+border-width:1px;
+}
+
+.dialogbox legend {
+display:block !important;
+margin-right:18px;
+margin-bottom:18px;
+}
+
+.dialogbox button.close {
+position:absolute;
+right:3px;
+top:3px;
+}
+
+.dialogbox .form_guide {
+font-weight:normal;
+padding:0;
+}
+
+.dialogbox .submit_dialogbox {
+font-weight:bold;
+text-indent:0;
+min-width:46px;
+}
+.dialogbox input {
+padding-left:4px;
+}
+.dialogbox fieldset {
+margin-bottom:0;
+}
+
+#wrap form.processing input.submit,
+.entity_actions a.processing,
+.dialogbox.processing .submit_dialogbox {
+cursor:wait;
+outline:none;
+text-indent:-9999px;
+}
+
+.form_repeat.dialogbox {
+top:-4px;
+right:29px;
+min-width:199px;
+}
+
+.notice-options {
position:relative;
font-size:0.95em;
-width:12.5%;
+width:113px;
float:right;
+margin-top:3px;
+margin-right:4px;
}
.notice-options a {
float:left;
}
-.notice-options .notice_delete,
.notice-options .notice_reply,
+.notice-options .form_repeat,
.notice-options .form_favor,
-.notice-options .form_disfavor {
-position:absolute;
-top:0;
+.notice-options .form_disfavor,
+.notice-options .repeated {
+float:left;
+margin-left:14.2%;
}
.notice-options .form_favor,
.notice-options .form_disfavor {
-left:0;
-}
-.notice-options .notice_reply {
-left:29px;
-}
-.notice-options .notice_delete {
-right:0;
-}
-.notice-options .notice_reply dt {
-display:none;
+margin-left:0;
}
-
.notice-options input,
-.notice-options a {
+.notice-options a,
+.notice-options .repeated {
text-indent:-9999px;
outline:none;
}
-
-.notice-options .notice_reply a,
.notice-options input.submit {
display:block;
border:0;
}
-.notice-options .notice_reply a,
-.notice-options .notice_delete a {
+.notice-options .notice_reply,
+.notice-options .notice_delete {
text-decoration:none;
-padding-left:16px;
}
-
+.notice .notice-options .notice_delete {
+float:right;
+}
.notice-options form input.submit {
width:16px;
-padding:2px 0;
+height:16px;
+padding:0;
+border-radius:0;
+-moz-border-radius:0;
+-webkit-border-radius:0;
}
-
-.notice-options .notice_delete dt,
+.notice-options .form_repeat legend,
.notice-options .form_favor legend,
.notice-options .form_disfavor legend {
display:none;
}
-.notice-options .notice_delete fieldset,
+.notice-options .form_repeat fieldset,
.notice-options .form_favor fieldset,
.notice-options .form_disfavor fieldset {
border:0;
padding:0;
}
+.notice-options a,
+.notice-options .repeated {
+width:16px;
+height:16px;
+}
+
+
+.notice .attachment {
+position:relative;
+padding-left:16px;
+}
+.notice .attachment.more {
+text-indent:-9999px;
+width:16px;
+height:16px;
+display:inline-block;
+overflow:hidden;
+vertical-align:middle;
+margin-left:4px;
+}
+
+#attachments .attachment,
+.notice .attachment.more {
+padding-left:0;
+}
+.notice .attachment img {
+position:absolute;
+top:18px;
+left:0;
+z-index:99;
+}
+#shownotice .notice .attachment img {
+position:static;
+}
+
+#attachments {
+clear:both;
+float:left;
+width:100%;
+margin-top:18px;
+}
+#attachments dt {
+font-weight:bold;
+font-size:1.3em;
+margin-bottom:4px;
+}
+
+#attachments ol li {
+margin-bottom:18px;
+list-style-type:decimal;
+float:left;
+clear:both;
+}
+#jOverlayContent,
+#jOverlayContent #content,
+#jOverlayContent #content_inner {
+width: auto !important;
+margin-bottom:0;
+}
+#jOverlayContent #content {
+padding:11px;
+min-height:auto;
+}
+#jOverlayContent .entry-title {
+display:block;
+margin-bottom:11px;
+}
+#jOverlayContent button {
+position:absolute;
+top:0;
+right:0;
+}
+#jOverlayContent h1 {
+max-width:425px;
+}
+#jOverlayContent #content {
+border-radius:7px;
+-moz-border-radius:7px;
+-webkit-border-radius:7px;
+}
+#jOverlayLoading {
+top:5%;
+left:40%;
+}
+#attachment_view img {
+max-width:480px;
+max-height:480px;
+}
+#attachment_view #oembed_info {
+margin-top:11px;
+}
+#attachment_view #oembed_info dt,
+#attachment_view #oembed_info dd {
+float:left;
+}
+#attachment_view #oembed_info dt {
+clear:left;
+margin-right:11px;
+font-weight:bold;
+}
+#attachment_view #oembed_info dt:after {
+content: ":";
+}
#usergroups #new_group {
float: left;
@@ -1137,3 +1323,34 @@ display:none;
.guide {
clear:both;
}
+
+}/*end of @media screen, projection, tv*/
+
+
+@media print {
+a:after { background-color:#FFFFFF; }
+a:not([href^="#"]):after { content:" <"attr(href)"> "; }
+img { border:none; }
+p { orphans: 2; widows: 1; }
+
+#site_nav_global_primary,
+#site_nav_local_views,
+#form_notice,
+.pagination,
+#site_nav_global_secondary,
+.entity_actions,
+.notice-options,
+#aside_primary,
+.form_subscription_edit .submit {
+display:none;
+}
+.timestamp dt, .timestamp dd,
+.device dt, .device dd {
+display:inline;
+}
+.profiles li,
+.notices li {
+margin-bottom:18px;
+}
+
+}/*end of @media print*/
diff --git a/theme/h4ck3r/css/display.css b/theme/h4ck3r/css/display.css
index 58b3f242a..276659dce 100644
--- a/theme/h4ck3r/css/display.css
+++ b/theme/h4ck3r/css/display.css
@@ -7,8 +7,9 @@
* @link http://status.net/
*/
-@import url(base.css);
+@import url(base.css) screen, projection, tv, print;
+@media screen, projection, tv {
html,
body,
a:active {
@@ -199,14 +200,19 @@ background:transparent url(../../base/images/icons/twotone/green/disfavourite.gi
background:transparent url(../../base/images/icons/twotone/green/trash.gif) no-repeat 0 45%;
}
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
-.notices li.hover div.entry-content,
-.notices li.hover div.notice-options {
+.notices li:hover .attachment.more,
+.notices li:hover div.entry-content,
+.notices li:hover div.notice-options {
opacity:1;
}
+.opaque {
+opacity:1 !important;
+}
div.entry-content {
color:#ccc;
}
@@ -234,3 +240,5 @@ background-position:10% 45%;
background-image:url(../../base/images/icons/twotone/green/arrow-right.gif);
background-position:90% 45%;
}
+
+}/*end of @media screen, projection, tv*/
diff --git a/theme/h4ck3r/logo.png b/theme/h4ck3r/logo.png
index 550d373fe..cf1839194 100644
--- a/theme/h4ck3r/logo.png
+++ b/theme/h4ck3r/logo.png
Binary files differ
diff --git a/theme/identica/css/display.css b/theme/identica/css/display.css
index 59cb3c38a..d7f150bcb 100644
--- a/theme/identica/css/display.css
+++ b/theme/identica/css/display.css
@@ -9,6 +9,7 @@
@import url(../../base/css/display.css);
+@media screen, projection, tv {
body,
a:active {
background-color:#F0F2F5;
@@ -214,7 +215,7 @@ background-color:transparent;
}
#wrap form.processing input.submit,
-.entity_actions a.processing,
+#core a.processing,
.dialogbox.processing .submit_dialogbox {
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
}
@@ -409,6 +410,9 @@ background-position: 0 -1714px;
.notice .attachment {
background-position:0 -394px;
}
+.notice .attachment.more {
+background-position:0 -2770px;
+}
#attachments .attachment {
background:none;
}
@@ -431,10 +435,12 @@ background-position:0 -1582px;
background-position:0 -1648px;
}
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
+.notices li:hover .attachment.more,
.notices li:hover div.entry-content,
.notices li:hover div.notice-options {
opacity:1;
@@ -442,6 +448,7 @@ opacity:1;
.opaque {
opacity:1 !important;
}
+.attachment.more,
.notice-options a,
.notice-options input {
font-family:sans-serif;
@@ -449,6 +456,12 @@ box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
-moz-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
-webkit-box-shadow:3px 3px 3px rgba(194, 194, 194, 0.3);
}
+.attachment.more:focus {
+box-shadow:none;
+-moz-box-shadow:none;
+-webkit-box-shadow:none;
+outline:none;
+}
#content .notices li:hover,
#content .applications li:hover,
#content tbody tr:hover {
@@ -503,3 +516,4 @@ background-position:90% 47%;
background-position:10% 47%;
}
+}/*end of @media screen, projection, tv*/
diff --git a/theme/pigeonthoughts/css/base.css b/theme/pigeonthoughts/css/base.css
index 2814260bd..bc2e24dc5 100644
--- a/theme/pigeonthoughts/css/base.css
+++ b/theme/pigeonthoughts/css/base.css
@@ -7,6 +7,7 @@
* @link http://status.net/
*/
+@media screen, projection, tv {
* { margin:0; padding:0; }
img { display:block; border:0; }
a abbr { cursor: pointer; border-bottom:0; }
@@ -791,25 +792,30 @@ margin-right:11px;
/* NOTICE */
.notice,
-.profile {
+.profile,
+.application {
position:relative;
-padding:11px 2%;
+padding-top:11px;
+padding-bottom:11px;
clear:both;
float:left;
-width:95.7%;
-border-width:1px;
-border-style:solid;
-margin-bottom:11px;
+width:100%;
+border-top-width:1px;
+border-top-style:dotted;
}
.notices li {
list-style-type:none;
}
.notices .notices {
margin-top:7px;
-margin-left:5%;
-width:95%;
+margin-left:2%;
+width:98%;
float:left;
}
+.mark-top {
+border-top-width:1px;
+border-top-style:solid;
+}
#aside_primary .notice,
#aside_primary .profile {
@@ -969,36 +975,38 @@ outline:none;
text-indent:-9999px;
}
+.form_repeat.dialogbox {
+top:-4px;
+right:29px;
+min-width:199px;
+}
+
.notice-options {
position:relative;
font-size:0.95em;
-width:90px;
+width:113px;
float:right;
-margin-right:11px;
+margin-top:3px;
+margin-right:4px;
}
-
.notice-options a {
float:left;
}
-.notice-options .notice_delete,
.notice-options .notice_reply,
+.notice-options .form_repeat,
.notice-options .form_favor,
-.notice-options .form_disfavor {
-position:absolute;
-top:0;
+.notice-options .form_disfavor,
+.notice-options .repeated {
+float:left;
+margin-left:14.2%;
}
.notice-options .form_favor,
.notice-options .form_disfavor {
-left:0;
-}
-.notice-options .notice_reply {
-left:29px;
-}
-.notice-options .notice_delete {
-right:0;
+margin-left:0;
}
.notice-options input,
-.notice-options a {
+.notice-options a,
+.notice-options .repeated {
text-indent:-9999px;
outline:none;
}
@@ -1009,27 +1017,51 @@ border:0;
.notice-options .notice_reply,
.notice-options .notice_delete {
text-decoration:none;
-padding-left:16px;
+}
+.notice .notice-options .notice_delete {
+float:right;
}
.notice-options form input.submit {
width:16px;
-padding:2px 0;
+height:16px;
+padding:0;
+border-radius:0;
+-moz-border-radius:0;
+-webkit-border-radius:0;
}
+.notice-options .form_repeat legend,
.notice-options .form_favor legend,
.notice-options .form_disfavor legend {
display:none;
}
+.notice-options .form_repeat fieldset,
.notice-options .form_favor fieldset,
.notice-options .form_disfavor fieldset {
border:0;
padding:0;
}
+.notice-options a,
+.notice-options .repeated {
+width:16px;
+height:16px;
+}
.notice .attachment {
position:relative;
padding-left:16px;
}
-#attachments .attachment {
+.notice .attachment.more {
+text-indent:-9999px;
+width:16px;
+height:16px;
+display:inline-block;
+overflow:hidden;
+vertical-align:middle;
+margin-left:4px;
+}
+
+#attachments .attachment,
+.notice .attachment.more {
padding-left:0;
}
.notice .attachment img {
@@ -1383,3 +1415,34 @@ display:none;
.guide {
clear:both;
}
+
+}/*end of @media screen, projection, tv*/
+
+
+@media print {
+a:after { background-color:#FFFFFF; }
+a:not([href^="#"]):after { content:" <"attr(href)"> "; }
+img { border:none; }
+p { orphans: 2; widows: 1; }
+
+#site_nav_global_primary,
+#site_nav_local_views,
+#form_notice,
+.pagination,
+#site_nav_global_secondary,
+.entity_actions,
+.notice-options,
+#aside_primary,
+.form_subscription_edit .submit {
+display:none;
+}
+.timestamp dt, .timestamp dd,
+.device dt, .device dd {
+display:inline;
+}
+.profiles li,
+.notices li {
+margin-bottom:18px;
+}
+
+}/*end of @media print*/
diff --git a/theme/pigeonthoughts/css/display.css b/theme/pigeonthoughts/css/display.css
index dfeb01b48..3d6db00e1 100644
--- a/theme/pigeonthoughts/css/display.css
+++ b/theme/pigeonthoughts/css/display.css
@@ -9,6 +9,7 @@
@import url(base.css);
+@media screen, projection, tv {
html {
background:url(../images/illustrations/illu_pigeons-01.png) no-repeat 0 100%;
}
@@ -140,7 +141,6 @@ background-color:transparent;
color:#000000;
}
-
.aside .section {
border-color:#FFFFFF;
background-color:#FFFFFF;
@@ -172,6 +172,11 @@ color:#7F1114;
color:#FFFFFF;
}
+.aside .section .dialogbox {
+color:#000000;
+}
+
+
.section .profile {
border-top-color:#87B4C8;
@@ -245,7 +250,7 @@ background-color:transparent;
#wrap form.processing input.submit,
-.entity_actions a.processing,
+#core a.processing,
.dialogbox.processing .submit_dialogbox {
background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47% 47%;
}
@@ -253,6 +258,13 @@ background:#FFFFFF url(../../base/images/icons/icon_processing.gif) no-repeat 47
background-image:none;
}
+.entity_send-a-message .form_notice,
+.entity_moderation:hover ul,
+.entity_role:hover ul,
+.dialogbox {
+background-color:#FFFFFF;
+}
+
#content,
#site_nav_local_views a {
border-color:#FFFFFF;
@@ -413,6 +425,9 @@ background-position: 0 -1714px;
.notice .attachment {
background-position:0 -394px;
}
+.notice .attachment.more {
+background-position:0 -2770px;
+}
#attachments .attachment {
background:none;
}
@@ -435,15 +450,19 @@ background-position:0 -1582px;
background-position:0 -1648px;
}
-
+.notices .attachment.more,
.notices div.entry-content,
.notices div.notice-options {
opacity:0.4;
}
+.notices li:hover .attachment.more,
.notices li:hover div.entry-content,
.notices li:hover div.notice-options {
opacity:1;
}
+.opaque {
+opacity:1 !important;
+}
div.entry-content {
color:#333333;
}
@@ -496,3 +515,4 @@ background-position:90% 47%;
background-position:10% 47%;
}
+}/*end of @media screen, projection, tv*/